Linux系统目录简介

帮助理解linux系统目录结构和作用

Linux系统目录简介

 

  • 编辑初衷

 

入班以来,我们大致了解了Linux系统的一些基础知识和部分简单的实战技能。从Linux系统基础知识,到文件管理,再到文本编辑,最后shell脚本的实例编辑等,自我感觉对文件系统和目录结构参透不深。导师在屏幕上对文件的查找和目录的熟悉程度让我萌生钦佩,虽然我是初学者,但非常有必要熟练记忆这块内容并深刻理解,所以我在网上搜集了部分相关内容,与课件ppt以及自己的笔记加以整合,做系统化的认识和学习,以便帮助我后续能对系统熟练的管理和运用。

 

 

  • 编辑思路

 

1、图形描述Linux系统目录结构

2、分层介绍每个目录的构成、属性及作用

3、详细介绍部分重要目录,强化日常使用需求

 

………………………………正文如下………………………………

 

 

一、目录结构(图形):

图片1

 

 

二、目录的属性、作用:

 

  • /  – 根(根目录)
    第一层目录,位于目录结构的最顶层,用斜线“/”表示,是系统中所有其他目录的根。一般根目录下只存放目录。每一个文件和目录从根目录开始。只有root用户具有该目录下的写权限。请注意,/root是root用户的主目录,这与/.不一样。

系统根目录下一般包括:/bin,/boot,/dev,/etc,/home,/root,/sbin,/tmp,/usr,/var等。

图片2

 

  • /bin – 用户二进制文件目录

/bin目录又称为二进制目录,包含供系统管理员和普通用户使用的重要linux命令的二进制映像。该目录存放的内容包括各种可执行文件,还有某些可执行文件的符号连接。在单用户模式下,你需要使用的常见Linux命令都位于此目录下。系统的所有用户使用的基本命令都设在这里。
常用的命令有:cp、dmesg、kill、login、rm、ping、chomd、bash、cat、echo、ls、 mail、vi等。

图片3

 

  • /boot
    /boot 目录存放系统核心文件以及启动时必须读取的文件,包括Linux内核的二进制映像。其中/boot/vmlinuz为linux的内核文件,以及/boot/gurb。Linux系统在本地启动时,目录/boot非常重要。

图片4

 

  • /dev– 设备文件
    包含设备文件。
    /dev目录保存着外部设备代码的文件,这些文件比较特殊,实际上它们都指向所代表的外围设备,如终端、磁盘驱动器、光驱、打印机等。你可以访问这些外部设备,与访问一个文件或一个目录没有区别。如该目录下的子目录/dev/cdrom表示光驱目录;子目录/dev/console表示控制台;子目录 /dev/fd表示软驱;子目录/dev/hd表示硬盘上的一个分区;lp0表示打印机;ttyS0表示系统的串口设备;dsp表示系统的音箱设备。

例如:在系统中键入“cd /dev/cdrom”,就可以看到光驱中的文件;键入“cd /dev/mouse”即可看鼠标的相关文件。

图片5

 

  • /etc– 配置文件
    /etc 目录是整个Linux系统的中心,其中包含所有系统管理和维护方面的配置文件,如conf、host.conf、logrotate.conf、man.config、mke2fs.conf、modprobe.conf、resolv.conf、sysctl.conf、syslog.conf(或rsyslog.conf)、xinetd.conf和yum.conf等,其他的配置文件分别位于单独的子目录中。

通常应注意备份这个目录中的重要配置文件,以便需要是能够快速的恢复系统。用于存放系统的配置文件和特定主机的相关文件。例如,记录用户帐号名称的 password 文件、投影密码的 shadow 文件等。该目录不包含任何二进制文件,并且该目录下的所有文件主要由管理员使用,普通用户只对其具有阅读权限。该目录还包含一些网络配置文件、文件系统、 x系统配置文件、设备配置信息、设置用户信息等。
/etc/cron.d:用于存储cron进程调度运行后台进程所用的配置和控制文件。其他目录包括/etc/crontab文件定义的cron.hourly、cron.daily、cron.weekly和cron.monthly等四个目录。
/etc/cups:用于存储通用UNIX打印系统(Commom UNIX Printing System,CUPS)使用的各种配置文件。
/etc/default:其中的文件用于提供部分工具软件(如useradd程序)使用的变量及其默认值。
/etc/httpd:Apache配置文件的根目录。Apache是一个通用的、高性能的HTTP服务器,也是世界上最流行的Web服务器。Apache采用模块化的设计方式,支持运行时的动态模块选择、虚拟主机,以及服务进程数量的动态调整等。
/etc/init.d:用于存储进入相应运行级时需要由init调度执行的脚本文件。在Fedora
Linux系统中,这只是一个符号链接文件,实际的目录应为/etc/rc.d/init.d。
/etc/ipsec.d:用于存储IPSee使用的配置文件等。
/etc/kde:其中含有部分KDE初始化文件和KDM配置文件。
/etc/pki:用于存储各种密匙,如用于安装软件包的密匙等。
/etc/ppp:用于存储PPP的脚本和配置文件。
/etc/profile.d:用于存储/etc/profile等使用的辅助初始化文件,如lang.sh脚本文件等。
/etc/rc.d:用于存储进入相应运行级是由init进程调度执行的脚本文件。其中含有init.d和rcN.d等子目录(其中的N为0、1、2、3、4、5和6,表示系统的运行级)。
/etc/samba:Samba配置文件的根目录。Samba是一个网络共享软件的总称,Linux系统中实现的SMB协议,允许Linux系统为Windows系统提供文件和打印共享服务。
/etc/security:用户存储的基本安全控制文件,包括注册控制文件、控制访问控制文件,以及资源限制控制文件等。
/etc/selinux:SElinux(Security Enhanced Linux,由美国国家安全部(National Security Agency)领导开发的GPL项目,它拥有一个灵活而强制性的访问控制结构,旨在提高Linux系统的安全性,提供强健的安全保证,可防御未知攻击,据称相当于B1级的军事安全性能。比MS
NT所谓的C2等高得多。应用SELinux后,可以减轻恶意攻击或恶意软件带来的灾难,并提供对机密性和完整性有很高要求的信息很高的安全保障。)配置文件的根目录。
/etc/skel    其中存有默认的初始化文件,如.bash_logout、.bash_profile、.bashrc、.emacs、.kde和.zshrc等。每当新增一个新用户时,系统将会把其中的部分初始化文件复制到用户的主目录中。注意:上述文件均为隐藏文件。(即以“.“开头的文件名)
/etc/ssh:这个目录含有系统配置过程,以及系统引导过程中需要用到的各种配置文件,也是chkconfig维护的各种后台服务进程配置文件的根目录。例如,其中的clock文件包含系统的时区设置,keyboard文件包含键盘的类型定义,init文件包含系统引导过程使用的参数定义等。
/etc/tomcat5:tomcat的根目录
/etc/vsftpd:包含FTP服务器的配置文件,其中包括vsftpd.conf、ftpusers和user_list等重要文件。
/etc/xinetd.d:其中包含xinetd服务进程控制的所有传统网络服务使用的配置文件,尤其包含telnet等网络应用的配置文件。在Linux系统中,原有的inetd已由功能更强的xinetd服务进程取代,原有的inetd.conf配置文件也由xinetd.d目录中的一系列单独的配置文件取代。
/etc/yum:其中包含yum软件更新工具使用的配置文件。
/etc/yum.repos.d:其中包含每个软件仓库的配置文件。

图片6

 

6、/home  – 家目录

/home: 系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~test表示用户test的家目录。

例如:/home/jinlong ;/home/bican

图片7

 

7、/root  – root用户的家目录

超级用户root的主目录,在Linux系统中,斜杠字符“/”是整个系统的根目录,而非超级用户的主目录。

图片8

 

  • /run  – 系统运行文件

/run 目录里面的东西是系统运行时需要的,不能随便删除,但是重启的时候应该抛弃,下次系统运行时重新生成。在我们的电脑中, /run是个tmpfs, /var/run是个指向/run的链接, 换句话说他俩是同一个东西。

图片9

 

  • /sbin

目录/sbin、/usr/sbin和/usr/local/sbin放置系统管理员使用的可执行命令,如管理工具、应用软件和通用的根用户权限命令等内容。如包含getty、init、update、fdisk、shutdown、mount等。

与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能”查看”而不能设置和使用。

图片10

 

  • /tmp- 临时文件

/tmp目录包含系统和用户创建的临时文件。当系统重新启动时,这个目录下的文件都将被删除。 一般用户或正在执行的程序临时存放文件在这里,任何人都可以访问,重要数据不可放置在此目录下。

图片11

 

  • /usr – 用户程序

/usr目录包含二进制文件、库文件、文档和二级程序的源代码。

/usr/bin中包含用户程序的二进制文件。如果你在/bin中找不到用户二进制文件,到/usr/bin目录看看。例如:at、awk、cc、less、scp。

/usr/sbin中包含系统管理员的二进制文件。如果你在/sbin中找不到系统二进制文件,到/usr/sbin目录看看。例如:atd、cron、sshd、useradd、userdel。

/usr/lib中包含了/usr/bin和/usr/sbin用到的库。

/usr/local中包含了从源安装的用户程序。例如,当你从源安装Apache,它会在/usr/local/apache2中。

图片12

 

  • /var变量文件

放置系统执行过程中经常变化的文件,如随时更改的日志文件 /var/log,/var/log/message: 所有的登录文件存放目录,/var/spool/mail: 邮件存放的目录, /var/run: 程序或服务启动。

图片13

 

把这篇笔记做出来,我又跟着学了一遍,感觉自己更加的理解系统各个目录的结构和作用,我觉的这些对我有很多帮助。这篇笔记不是很完整,如果我后面对目录结构有更多的理解,我会再往里添加更好的东西。学以致用。丰富自我。

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96167

(4)
JllbcJllbc
上一篇 2018-04-15 18:19
下一篇 2018-04-15

相关推荐

  • 运维之ansible

    运维工作:系统安装(物理机、虚拟机)–> 程序包安装、配置、服务启动 –> 批量操作 –> 程序发布  –> 监控 稳定可用     ——-      标准化            ———        自动化 系统安装: 1、…

    2018-07-16
  • 脚本练习

    1、每周的工作日1:30,将/etc备份至/backup目录中,保存的文件名称格式为“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的时间tar Jcf /etc/ /data/ectbak-`date -d “-1 day” +%F-%H`.tar.xz30 1 * * 1-5 /root/Myscrip…

    Linux笔记 2018-05-08
  • 第八周作业

    1、简述systemd的新特性及unit常见类型分析,能够实现编译安装的如nginx\apache实现通过systemd来管理
    2、描述awk命令用法及示例(至少3例)
    3、描述awk函数示例(至少3例)

    Linux笔记 2018-06-29
  • nginx各模块介绍和应用

     ngx_http_access_module模块: 实现基于ip的访问控制功能 (1)、allow address | CIDR | unix: | all; (2)、deny address | CIDR | unix: | all; http, server, location, limit_except 2.ngx_http_auth_basic_m…

    Linux笔记 2018-07-02
  • linux 学习6

    1、简述osi七层模型和TCP/IP五层模型 1、 osi七层模型 1、应用层:OSI 参考模型中最靠近用户的一层,为计算机用户提供应用接口,也为用户直接提供各种网络服务。我们常见应用层的网络服务协议有:HTTP,HTTPS,FTP,POP3、SMTP等。 2、表示层:提供各种用于应用层数据的编码和转换功能,确保一个主机的应用层发送的数据能被另一个主机的应用…

    Linux笔记 2018-07-28
  • 课堂笔记

    cat— 文本文件 1.cat/etc/centos/—release看到发行版名称 lsb—releas—a                    看到发行版名称 (centors  7上如果看不到发行版名称,并不是没有,而是没有安装对映的软件,生产环境中都是最小化安装,默认安装是最小文件) 2.sz/etc/centos—release传到w…

    Linux笔记 2018-07-24