最近初学 Linux 对 linux 的目录产生了很多疑问,看到这篇文章,让我顿时对目录有了一个清晰的认识!推荐给大家!
------------------------------------------------------------------------------------------------------------------------------------
使用 linux 也有一年多时间了 最近也是一直在维护网站系统主机 下面是 linux 目录结构说明 本人使用的是 centos 系统,很久没有发表博文了 近期会整理自己所用所了解知识点,发表 linux 相关的文章,记录自己的 linux 点点滴滴.
linux 目录结构
/: 根目录,一般根目录下只存放目录,不要存放文件,/etc,/bin,/dev,/lib,/sbin 应该和根目录放置在一个分区中
/bin:/usr/bin: 可执行二进制文件的目录,如常用的命令 ls,tar,mv,cat 等.
/boot: 放置 linux 系统启动时用到的一些文件./boot/vmlinuz 为 linux 的内核文件,以及 / boot/grub.建议单独分区,分区大小 100M 即可
/dev: 存放 linux 系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱 mount /dev/cdrom /mnt.
/etc: 系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有 / etc/inittab,/etc/fstab,/etc/init.d,/etc/X11,/etc/sysconfig,/etc/xinetd.d 修改配置文件之前记得备份.注:/etc/X11 存放与 x windows 有关的设置.
/home: 系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~ 表示当前用户的家目录,~test 表示用户 test 的家目录.建议单独分区,并设置较大的磁盘空间,方便用户存放数据
/lib:/usr/lib:/usr/local/lib: 系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为 / lib/modules.
/lost+fount: 系统异常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在装置目录下.如加载硬盘于 / disk 中,此目录下就会自动产生目录 / disk/lost+found
/mnt:/media: 光盘默认挂载点,通常光盘挂载于 / mnt/cdrom 下,也不一定,可以选择任意位置进行挂载.
/opt: 给主机额外安装软件所摆放的目录.如:FC4 使用的 Fedora 社群开发软件,如果想要自行安装新的 KDE 桌面软件,可以将该软件安装在该目录下.以前的 Linux 系统中,习惯放置在 /usr/local 目录下
/proc: 此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有 / proc/cpuinfo,/proc/interrupts,/proc/dma,/proc/ioports,/proc/net/* 等
/root: 系统管理员 root 的家目录,系统第一个启动的分区为 /,所以最好将 / root 和 / 放置在一个分区下.
/sbin:/usr/sbin:/usr/local/sbin: 放置系统管理员使用的可执行命令,如 fdisk,shutdown,mount 等.与 / bin 不同的是,这几个目录是给系统管理员 root 使用的命令,一般用户只能 "查看" 而不能设置和使用.
/tmp: 一般用户或正在执行的程序临时存放文件的目录, 任何人都可以访问, 重要数据不可放置在此目录下
/srv: 服务启动之后需要访问的数据目录,如 www 服务需要访问的网页数据存放在 / srv/www 内
/usr: 应用程序存放目录,/usr/bin 存放应用程序, /usr/share 存放共享数据,/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件./usr/local: 存放软件升级包./usr/share/doc: 系统说明文件存放目录./usr/share/man: 程序说明文件存放目录,使用 man ls 时会查询 / usr/share/man/man1/ls.1.gz 的内容建议单独分区,设置较大的磁盘空间
/var: 放置系统执行过程中经常变化的文件,如随时更改的日志文件 /var/log,/var/log/message: 所有的登录文件存放目录,/var/spool/mail: 邮件存放的目录,/var/run: 程序或服务启动
后,其 PID 存放在该目录下.建议单独分区,设置较大的磁盘空间
------------------------------------------
/dev: 目录
dev 是设备 (device) 的英文缩写./dev 这个目录对所有的用户都十分重要.因为在这个目录中包含了所有 Linux 系统中使用的外部设备.但是这里并不是放的外部设备的驱动程序,这一点和
windows,dos 操作系统不一样.它实际上是一个访问这些外部设备的端口.我们可以非常方便地去访问这些外部设备,和访问一个文件,一个目录没有任何区别.
Linux 沿袭 Unix 的风格,将所有设备认成是一个文件.
设备文件分为两种:块设备文件 (b) 和字符设备文件(c)
设备文件一般存放在 / dev 目录下,对常见设备文件作如下说明:
/dev/hd[a-t]:IDE 设备
/dev/sd[a-z]:SCSI 设备
/dev/fd[0-7]:标准软驱
/dev/md[0-31]:软 raid 设备
/dev/loop[0-7]:本地回环设备
/dev/ram[0-15]:内存
/dev/null:无限数据接收设备, 相当于黑洞
/dev/zero:无限零资源
/dev/tty[0-63]:虚拟终端
/dev/ttyS[0-3]:串口
/dev/lp[0-3]:并口
/dev/console:控制台
/dev/random:随机数设备
/dev/fb[0-31]:framebuffer
/dev/cdrom => /dev/hdc
/dev/modem => /dev/ttyS[0-9]
/dev/pilot => /dev/ttyS[0-9]
/dev/urandom:随机数设备
(PS:随机数设备,后面我会再写篇博客总结一下)
/dev 目录下的节点是怎么创建的
devf 或者 udev 会自动帮你创建得.
kobject 是 sysfs 文件系统的基础,udev 通过监测,检测 sysfs 来获取新创建的设备的.
------------------------------------------
/etc: 目录
包含很多文件. 许多网络配置文件也在 / etc 中.
/etc/rc or /etc/rc.d or /etc/rc*.d 启动,或改变运行级时运行的 scripts 或 scripts 的目录.
/etc/passwd
用户数据库,其中的域给出了用户名,真实姓名,家目录,加密的口令和用户的其他信息.
/etc/fstab
启动时 mount -a 命令 (在 / etc/rc 或等效的启动文件中) 自动 mount 的文件系统列表. Linux 下,也包括用 swapon -a 启用的 swap 区的信息.
/etc/group
类似 / etc/passwd ,但说明的不是用户而是组.
/etc/inittab
init 的配置文件.
/etc/issue
getty 在登录提示符前的输出信息. 通常包括系统的一段短说明或欢迎信息. 内容由系统管理员确定.
/etc/motd
Message Of The Day,成功登录后自动输出. 内容由系统管理员确定. 经常用于通告信息,如计划关机时间的警告.
/etc/mtab
当前安装的文件系统列表. 由 scripts 初始化,并由 mount 命令自动更新. 需要一个当前安装的文件系统的列表时使用,例如 df 命令.
/etc/shadow
在安装了影子口令软件的系统上的影子口令文件. 影子口令文件将 / etc/passwd 文件中的加密口令移动到 / etc/shadow 中,而后者只对 root 可读. 这使破译口令更困难.
/etc/login.defs
login 命令的配置文件.
/etc/printcap
类似 / etc/termcap ,但针对打印机. 语法不同.
/etc/profile , /etc/csh.login , /etc/csh.cshrc
登录或启动时 Bourne 或 C shells 执行的文件. 这允许系统管理员为所有用户建立全局缺省环境.
/etc/securetty
确认安全终端,即哪个终端允许 root 登录. 一般只列出虚拟控制台,这样就不可能 (至少很困难) 通过 modem 或网络闯入系统并得到超级用户特权.
/etc/shells
列出可信任的 shell.chsh 命令允许用户在本文件指定范围内改变登录 shell. 提供一台机器 FTP 服务的服务进程 ftpd 检查用户 shell 是否列在 /etc/shells 文件中,如果不是将不允许该用户登录.
/etc/sysconfig
网络配置相关目录
------------------------------------------/proc: 目录
档名 文件内容
/proc/cmdline 加载 kernel 时所下达的相关参数!查阅此文件,可了解系统是如何启动的!
来源: http://www.bubuko.com/infodetail-2461671.html