Linux下的文件系统为树形结构,入口为/ 树形结构下的文件目录: 无论哪个版本的Linux系统,都有这些目录,这些目录应该是标准的。各个Linux发行版本会存在一些小小的差异,但总体来说,还是大体差不多。
1. / 文件系统的入口,最高一级目录;
2. /bin 基础系统所需要的命令位于此目录,是最小系统所需要的命令,如:ls, cp, mkdir等。
这个目录中的文件都是可执行的,一般的用户都可以使用。
3. /boot 包含Linux内核及系统引导程序所需要的文件,比如 vmlinuz initrd.img 文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录;
4. /dev 设备文件存储目录,比如声卡、磁盘... ... 这是一个非常有趣的目录,是Linux文件系统的一个闪亮的特性 - 所有对象都是文件或目录。仔细观察这个目录你会发现hda1, hda2等, 它们代表系统主硬盘的不同分区。
/dev/cdrom和/dev/fd0代表你的CDROM驱动器和floppy驱动器。看上去可能有些奇怪,但比较文件和硬件的特性这却是十分合理的。它们都可以读出和写入。例如/dev/dsp,这个文件代表你的扬声器。那么写入这个文件的数据都回传送到喇叭。试一试 'cat /etc/lilo.conf > /dev/dsp' 你会听到一些声音。这是你的 lilo.conf 文件的声音!同样,向 /dev/ttyS0 ( COM 1 ) 读出或写入数据你可以和接到上面的设备进行通讯。
5. /etc 存放系统程序或者一般工具的配置文件。
如安装了apache2之后,配置文件在/etc/apache2/目录下。
/etc/init.d 这个目录是用来存放系统或服务器以System V模式启动的脚本,这在以System V模式启动或初始化的系统中常见。
如apache2的/etc/init.d apache2 start|stop|restart MySQL为/etc/init.d mysql start|stop|restart
6. /home 普通用户默认存放目录 Linux 是多用户环境,所以每一个用户都有一个只有自己可以访问的目录(当然管理员也可以访问)。它们以 /home/username 的方式存在。这个目录也保存一些应用对于这个用户的配置,比如 IRC, X 等。
7. /lib 库文件存放目录这里包含了系统程序所需要的所有共享库文件,类似于 Windows 的共享库 DLL 文件。
8. /lost+found 在ext2或ext3文件系统中,当系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。 有时系统发生问题,有很多的文件被移到这个目录中,可能会用手工的方式来修复,或移到文件到原来的位置上。
Linux 应该正确的关机。但有时你的系统也可能崩溃掉或突然断电使系统意外关机。那么启动的时候 fsck 将会进行长时间的文件系统检查。Fsck 会检测并试图恢复所发现的不正确的文件。被恢复的文件会放置在这个目录中。所恢复的文件也许并不完整或并不合理,但毕竟提供了一些恢复数据的机会。
9. /media 即插即用型存储设备的挂载点自动在这个目录下创建,比如USB盘系统自动挂载后,会在这个目录下产生一个目录 ;CDROM/DVD自动挂载后,也会在这个目录中创建一个目录,类似cdrom 的目录。这个只有在最新的发行套件上才有.
10. /mnt /mnt 这个目录一般是用于存放挂载储存设备的挂载目录的,比如有cdrom 等目录。有时我们可以把让系统开机自动挂载文件系统,把挂载点放在这里也是可以的。比如光驱可以挂载到/mnt/cdrom 。
这是一个普通的加载目录,在这里你可以加载你的文件系统或设备。
加载是使一个文件系统对于系统可用的过程。
在加载后你的文件可以在加载目录下访问。
这个目录通常包含加载目录或用于加载软驱和光驱的子目录。
如果需要,你也可以在这里建立其它的加载目录。
对于加载目录的位置并没有强制性的要求,你可以在系统的任意位置建立加载目录。
建立 /mnt 只是为了使系统更工整的惯例。
11. /opt 表示的是可选择的意思,有些软件包也会被安装在这里,也就是自定义软件包,比如在Fedora Core 5.0中,OpenOffice就是安装在这里。有些我们自己编译的软件包,就可以安装在这个目录中;通过源码包安装的软件,可以通过 ./configure --prefix=/opt/,将软件安装到opt目录。
这个目录包含所有默认系统安装之外的软件和添加的包。
12. /proc 操作系统运行时,进程(正在运行中的程序)信息及内核信息(比如cpu、硬盘分区、内存信息等)存放在这里。/proc目录是伪装的文件系统proc的挂载目录,proc并不是真正的文件系统。
这是系统中极为特殊的一个目录,实际上任何分区上都不存在这个目录。它实际是个实时的、驻留在内存中的文件系统。
13. /root Linux超级权限用户root的家目录;
14. /sbin 大多是涉及系统管理的命令的存放,是超级权限用户root的可执行命令存放地,普通用户无权限执行这个目录下的命令;
这个目录和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin 目录是相似的; 我们记住就行了,凡是目录sbin中包含的都是root权限才能执行的。
15. /tmp 临时文件目录,有时用户运行程序的时候,会产生临时文件。 /tmp就用来存放临时文件的。/var/tmp目录和这个目录相似。
许多程序在这里建立lock文件和存储临时数据。有些系统会在启动或关机时清空此目录。
16. /usr 这个是系统存放程序的目录,比如命令、帮助文件等。这个目录下有很多的文件和目录。
当我们安装一个Linux发行版官方提供的软件包时,大多安装在这里。
如果有涉及服务器配置文件的,会把配置文件安装在/etc目录中。
/usr目录下包括:
涉及字体目录/usr/share/fonts ,
帮助目录 /usr/share/man或/usr/share/doc,
普通用户可执行文件目录/usr/bin 或/usr/local/bin 或/usr/X11R6/bin ,
超级权限用户root的可执行命令存放目录,比如 /usr/sbin 或/usr/X11R6/sbin 或/usr/local/sbin 等;
还有程序的头文件存放目录/usr/include。
/usr/bin 这个目录是可执行程序的目录,普通用户就有权限执行; 当我们从系统自带的软件包安装一个程序时,他的可执行文件大多会放在这个目录。
/usr/sbin 这个目录也是可执行程序的目录,但大多存放涉及系统管理的命令。只有root权限才能执行;相似目录是/sbin 或/usr/local/sbin或/usr/X11R6/sbin等;
/usr/local 这个目录一般是用来存放用户自编译安装软件的存放目录;一般是通过源码包安装的软件,如果没有特别指定安装目录的话,一般是安装在这个目录中。这个目录下面有子目录。
/usr/lib 和/lib 目录相似,是库文件的存储目录;
/usr/share 系统共用的东西存放地,比如 /usr/share/fonts 是字体目录,是用户都共用的吧。
/usr/share/doc和/usr/share/man帮助文件,也是共用的吧;
/usr/src 是内核源码存放的目录,比如下面有内核源码目录,比如 linux 、linux-2.xxx.xx 目录等。有的系统也会把源码软件包安装在这里。比如Fedora/Redhat,当我们安装file.src.rpm的时候,这些软件包会安装在 /usr/src/redhat相应的目录中。请参考: 《file.src.rpm 使用方法的简单介绍》 。另外Fedhat 4.0 5.0,他的内核源码包的目录位于/usr/src/kernels目录下的某个目录中(只有安装后才会生成相应目录);
17. /var 这个目录的内容是经常变动的,看名字就知道,我们可以理解为vary的缩写,/var下有/var/log 这是用来存放系统日志的目录。
/var/www目录是定义Apache服务器站点存放目录;/var/lib 用来存放一些库文件,比如MySQL的,以及MySQL数据库的的存放地;
/var/log 系统日志存放,分析日志要看这个目录的东西;
/var/spool 打印机、邮件、代理服务器等假脱机目录;
上面内容参考于
http://blog.sina.com.cn/s/blog_662234020101ebfd.html
这是我的linux系统目录结构
administrator@ubuntu:/$ ls -l
总用量 100
drwxr-xr-x 2 root root 4096 8月 22 07:33 bin
drwxr-xr-x 3 root root 4096 8月 22 07:34 boot
drwxr-xr-x 2 root root 4096 8月 22 07:29 cdrom
drwxr-xr-x 16 root root 4320 11月 1 22:26 dev
drwxr-xr-x 136 root root 12288 11月 1 22:38 etc
drwxr-xr-x 5 root root 4096 10月 24 10:02 home
drwxrwxrwx 1 root root 4096 10月 31 18:59 host
lrwxrwxrwx 1 root root 32 8月 22 07:31 initrd.img -> boot/initrd.img-3.5.0-17-generic
lrwxrwxrwx 1 root root 33 8月 22 07:14 initrd.img.old -> /boot/initrd.img-3.5.0-17-generic
drwxr-xr-x 21 root root 4096 8月 22 07:33 lib
drwx------ 2 root root 16384 8月 22 07:14 lost+found
drwxr-xr-x 3 root root 4096 8月 24 22:13 media
drwxr-xr-x 2 root root 4096 10月 9 2012 mnt
drwxr-xr-x 2 root root 4096 10月 17 2012 opt
dr-xr-xr-x 205 root root 0 11月 2 2015 proc
drwx------ 8 root root 4096 8月 24 23:48 root
drwxr-xr-x 22 root root 780 11月 1 22:27 run
drwxr-xr-x 2 root root 12288 8月 22 07:34 sbin
drwxr-xr-x 2 root root 4096 6月 11 2012 selinux
drwxr-xr-x 2 root root 4096 10月 17 2012 srv
dr-xr-xr-x 13 root root 0 11月 2 2015 sys
drwxrwxrwt 8 root root 4096 11月 1 22:44 tmp
drwxr-xr-x 10 root root 4096 10月 17 2012 usr
drwxr-xr-x 15 root root 4096 10月 25 23:11 var
lrwxrwxrwx 1 root root 29 8月 22 07:31 vmlinuz -> boot/vmlinuz-3.5.0-17-generic
administrator@ubuntu:~$ pwd
/home/administrator
administrator@ubuntu:~$ cd ..
administrator@ubuntu:/home$ cd ..
administrator@ubuntu:/$
linux的console界面的默认路径不是根目录
建议看看刘遄老师的《linux就该这么学》,书籍当中有详细的描述
Ⅱ linux 内核映像文件在哪个目录
编译后在
/usr/src/linux/arch/i386/boot/
成功后你应该
cp /usr/src/linux/arch/i386/boot/ /boot/bzImage-2.4.18
也就是在
/boot/下
Ⅲ 怎样进入linux内核文件目录
1、先是输入账号复密码进入centos7。制
Ⅳ linux内核存放的位置是在/usr/src/kernels下还是/boot/vmlinuz下
1、是在/boot目录下
2、/usr/src目录一般是系统内核代码目录
3、你看/boot/grub/grub.conf文件,kernel那行是vmlinuz...,就版是代表内核的权名字
4、Linux是一个一体化内核(monolithic kernel)系统。“内核”指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。一个内核不是一套完整的操作系统。一套基于Linux内核的完整操作系统叫作Linux操作系统,或是GNU/Linux。设备驱动程序可以完全访问硬件。Linux内的设备驱动程序可以方便地以模块化(molarize)的形式设置,并在系统运行期间可直接装载或卸载。
Ⅳ Linux内核完全剖析的目录
序
第1章概述
1.1 Linux的诞生和发展
1.1.1 UNIX操作系统的诞生
1.1.2 MINIX操作系统
1.1.3 GNU计划
1.1.4 POSIX标准
1.1.5 Linux操作系统的诞生
1.1.6 L,inux操作系统版本的变迁
1.1.7 Linux名称的由来
1.1.8早期Linux系统开发的主要贡献者
1.2内容综述
第2章微型计算机组成结构
2.1微型计算机组成原理
2.2 I/O端口寻址和访问控制方式
2.2.1 I/O端口和寻址
2.2.2 接口访问控制
2.3 主存储器、BIOS和CMOS
存储器
2.3.1 主存储器
2.3.2 基本输入/输出程序BIOS
2.3.3 CMOS存储器
2.4 控制器和控制卡
2.4.1 中断控制器
2.4.2 DMA控制器
2.4.3 定时/计数器
2.4.4 键盘控制器
2.4.5 串行控制卡
2.4.6 显示控制
2.4.7 软盘和硬盘控制器
第3章 内核编程语言和环境
3.1 as86汇编器
3.1.1 as86汇编语言语法
3.1.2 as86汇编语言程序
3.1.3 as86汇编语言程序的编译和
链接
3.1.4 as86和ld86使用方法和选项
3.2 GNU as汇编
3.2.1 编译aS汇编语言程序
3.2.2 aS汇编语法
3.2.3 指令语句、操作数和寻址
3.2.4 区与重定位
3.2.5 符号
3.2.6 aS汇编命令
3.2.7 编写16位代码
3.2.8 aS汇编器命令行选项
3.3 C语言程序
3.3.1 C程序编译和链接
3.3.2 嵌入汇编
3.3.3 圆括号中的组合语句
3.3.4 寄存器变量
3.3.5 内联函数
3.4 C与汇编程序的相互调用
3.4.1 C函数调用机制
3.4.2在汇编程序中调用C函数
3.4.3在C程序中调用汇编函数
3.5 Linux/0.11目标文迹慎件格式
3.5.1 目标文件格式
3.5.2 Linux 0.11中的目标文件格式
3.5.3 链接程序输出
3.5.4 链接程序预定义变量
3.5.5 System.map文件
3.6 Make程序和Makefile文件
第4章
4.1 80x86 系统寄存器和系统指令
4.1.1 标志寄存器
4.1.2 内存管理寄存器
4.1.3 控制寄存器
4.1.4 系统指令
4.2.1 内存寻址
4.2.2 地址变换
4.2.3 保护
4.3.1 段的定义
4.3.2 段描述符表
4.3.3 段选择符册轿
4.3.4 段描述符
4.3.5 代码和数据段描述符类型
4.3.6 系统描述符类型
4.4 分页机制
4.4.1 页表结构
4.4.2 页表项格式
4.4.3 虚拟存储
4.5 保护
4.5.1 段级保护
4.5.2 访问数据段时的特权级检查
4.5.3 代码段之间转移控制时的特权级
4.5.3 代码段之间转移控制时的特权级
4.5.4 页级保护
4.5.5 组合页级和段级保护
4.6.1 异常和中断向量
4.6.2 中断源和异常源
4.6.3 异常分类
4.6.4 程序或任务的重新执行
4.6.5 开启和禁止中断
4.6.6 异常和中断的优先级
4.6.7 中断描述符表
4.6.8 IDT描述符
4.6.9 异常与中断处理
4.6.10 中断处理任务
4.6.11 错误码
4.7.1 任务的结构和状态
4.7.2 任务的执行
4.7.3 任务管理数据结构
4.7.4 任务切换
4.7.5 任务链
4.7.6 任务地址空间
4.8.1 进入保护模式时的初始化操作
4.8.2 模式切换
4.9.1 多任务程序结构和工作原理
4.9.2 引导启动程序boot.s
4.9.3 多任务内核程序head.s
第5章
5.1 Linux内核模式
5.2 Linux内核系统体系结构
5.3.1 物理内存
5.3.2 内存地址空间概念
5.3.3 内存分段机制
5.3.4 内存分页管理
5.3.5 CPU多任务和保护方式
5.3.6 虚拟地址、线性地址和物理地址
5.3.7 用户申请内存的动态分配
5.4.1 中断操作原理
5.4.2 80x86微机的中断子系统
5.4.3 中断向量表
5.4.4 Linux内核的中断处理
5.4.5 标志寄存器的中断标志
5.5.1 系统调用接口
5.5.2 系统调用处理过程
5.5.3 Linux系统调用州州肆的参数传递方式
5.6.1 系统时间
5.6.2 系统定时
5.7 Linux进程控制
5.7.1 任务数据结构(1)
5.7.1 任务数据结构(2)
5.7.2 进程运行状态
5.7.3 进程初始化
5.7.4 创建新进程
5.7.5 进程调度
5.7.6 终止进程
5.8.1 初始化阶段
5.8.2 任务的堆栈
5.8.3 任务内核态堆栈与用户态堆栈之
5.9 Linux 0.12采用的文件系统
5.10.1 内核主目录linux
5.10.2 引导启动程序目录boot
5.10.3 文件系统目录fs
5.10.4 头文件主目录include
5.10.5 内核初始化程序目录init
5.10.6 内核程序主目录kernel
5.10.7 内核库函数目录lib
5.10.8 内存管理程序目录mm
5.10.9 编译内核工具程序目录tools
5.11 内核系统与应用程序的关系
5.12.1 功能描述
5.12.2 代码注释
5.13 本章小结
第11章
11.1 总体功能描述
11.1.1 浮点数据类型(1)
11.1.1 浮点数据类型(2)
11.1.2 数学协处理器功能和结构
11.2.1 功能描述
11.2.2 代码注释
第14章
14.1 include/目录下的文件
14.2.1 功能描述
14.2.2 代码注释
14.2.3 a.out执行文件格式
14.3 const.h文件
Ⅵ 如何确定Linux内核源代码目录即,KBUILD的路径
方法一:
确定内核源代码目录通常==文件系统中内核驱动模块的build路径
即/lib/moles/2.6.25-14.fc9.i686/build,这个build通常回为链接文件,连接到答
/usr/src/kernels/2.6.25-14.fc9.i686
此方法较准确,通常可以写如下脚本实现:
# KBUILD is the path to the Linux kernel build tree. It is usually the
# same as the kernel source tree, except when the kernel was compiled in
# a separate directory.
KBUILD ?= $(shell readlink -f /lib/moles/$(KVERS)/build)
方法二:
自己下载内核源文件包,自己指定内核的编译目录!
不推荐这种做法,还是按照各大发行版的做法比较好!这样不至于在编译下载的某个设备驱动程序时
Ⅶ linux根目录下5个主要的目录及目录的功能各是什么
(1)/ : 根目录
(2)/bin :存放启动时所需要的普通程序
(3)/boot : 存放内核及启动所需要的文件
(4)/dev :存放设备相关的文件
(5)/etc :存放系统的配置文件
(6)/home:存放用户文件的主目录,用户数据( cd ~ 可进入自己的主目录)
(7)/lib :存放启动时所需要的库文件
(8)/mnt :存放临时的映射文件,通常是一些用来安装其他设备的子目录(如 /mnt/cdrom /mnt/floppy)
(9)/proc :这是一个虚拟的文件系统,存放当前系统的状态(有关进程和系统信息)
(10)/root: 超级用户主目录
(11)/sbin: 存放启动时所需要的系统管理程序
(12)/tmp :存放启动时产生的临时文件
(13)/usr : 包含一般不需要修改的应用程序,命令程序文件,程序库,手册
(14)/var :存放系统产生的经常变化的文件
(15)/var/tmp: 存放用户的临时文件
(16) /usr/lib: 存放非启动用的库文件
(17)/lib/moles /: 存放内核模块
(18)/var/log:存放大多数日志文件
(19)/var/run: 存放运行时的信息
(20)/var/lib: 存放一些系统运行时需要的文件
(21)/var/spool: 存放邮件,新闻及打印序列
(22)/etc/X11:存放X窗口系统所需要的配置文件
(23)/etc/init.d :存放启动描述文件,包括各种模块和服务的加载描述
(24)/etc/rcS.d :存放一些连接到 /etc/init.d的文件,根据runlevel的不同而执行不同的描述
(25)/etc/rc0.d---/etc/rc6.d: 存放一些连接文件,只在指定的runlevel 下执行相应的描述
(26)/usr/X11R6,/usr/X11,/usr/Xfree86 :存放X窗口系统所需要的文件
(27)/usr/bin : 存放应用程序二进制可执行文件
(28)/usr/sbin:存放大部分系统程序
(29)/usr/games:存放游戏程序及相应的数据
(30)/usr/include:存放c 和c++的头文件
(31)/usr/info:存放GNU Info程序所需要的数据
(32)/usr/man:存放man程序所需要的数据
(33)/usr/src:存放源代码文件
(34)/usr/doc: 存放文档文件
(35)/usr/local:存放本地计算机所需要的文件
(36)/usr/shared:存放各种共享文件
Ⅷ linux内核主目录kernel是/home吗
不是的。
/home:是用户家目录。
kernel是内核,内核文件在/boot目录下,一般以vmlinuz开头,vm表示内核支持虚拟内存,z表示image zip是压缩的内核 ,本身里面带有gzip的代码,运行的时候会自行解压的。