Linux的组成与目录结构
【1】Linux的组成
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/559e906b09ea493bb041b43ab115f293.png)
- computer resources:计算机硬件。
- kernel:系统内核,系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。作用:管理设备、进程、内存、交换空间、文件系统,控制系统程序与硬件交互。
- Shell:是系统的用户界面,提供了用户和内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行,是一个命令解释器。但它不仅是命令解释器,而且还是高级编程语言,shell编程。作用:提供人机交互(类似与windows的cmd),使用户与内核之间交互。
- Program/Utilities/Tools:程序,基础支撑以及系统工具等。
- File system:文件系统,是文件存放在磁盘等存储设备上的组织方法,Linux支持多种文件系统,如ext3、ext2、NFS、SMB、iso9660等。
- Users Applications:用户的程序,用户安装的office、Oracle、VScode等程序。
【2】Linux目录结构
cd / --来到根目录
ls -a --展示所有-a
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/5530b425729242d9b78280cb1c6a2d06.png)
- / 代表根目录。
- . 代表当下目录,和 ./ 一样。
- . . 代表上级目录,和 . ./ 一样。
- /bin 存放着最常用的程序和指令。
- /boot 存放启动Linux时使用的内核文件,连接文件,镜像文件。
- /dev 设备相关Device(设备)的缩写,存放的时Linux的外部设备,注意:在Linux中访问设备和访问文件的方式是相同的。
- /etc 存放所有系统需要的配置文件和子目录列表,更改目录下的文件可能会导致系统不能启动。
- /home 用户的主目录,以用户的账号命名的。
- /lib 存放基本代码库(例如C++库),类似Windows的dll文件,几乎所有的应用程序都需要用到这些共享库。
- /lib64 类似lib,只不过是64位的。
- /media 类Windows的其他设备,如U盘、光驱,识别后Linux会把设备放到这个目录下。
- /mnt 临时挂载别的文件系统,可以将光驱挂在到/mnt/上,然后进入该目录就可以查看关卡里的内容了。
- /opt 默认空的,安装软件放入这里,如数据库等。
- /proc 管理内存空间,虚拟的目录,是系统内存的映射,我们可以直接访问这个目录来,获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件来做修改。
- /root 系统管理员的用户主目录。
- /run 临时文件系统,存储系统启动以来的信息,当系统重启时,这个目录下的文件就应该被删掉或者清除。如果系统有/var/run,应该让他指向run。
- /sbin 主要放置系统管理的必备程,内部基本的系统命令,如shutdown,reboot,用于启动系统,修复系统。
- /srv 存放服务启动后需要提取的数据,不用就为空。
- /sys 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs 。sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中。
- /tmp 这个目录用来存放一些临时文件。
- /usr 用户的很多应用程序和文件放在这个文件目录下,类似Windows的program files。
- /var 存放经常修改的数据,比如程序运行的日志文件(/var/log目录下)。
系统启动必须项目
/boot /etc /lib /sys
指令集合
/bin /sbin
外部文件管理
/dev /media /mnt
临时文件
/run /lost+found /tmp
/lost+found 一般情况为空,系统非法关机后,这里存放一些文件
账户
/root /home /usr /usr/bin /usr/sbin /usr/src
/usr/bin 系统用户使用的应用程序和指令
/usr/sbin 超级用户使用的比较高级的管理程序和系统守护程序
/usr/src 内核源代码默认的放置目录
运行过程中要用
/var /proc
扩展用的
/opt /srv