03_深入理解Linux:系统组成、内核版本及文件系统详解
文章目录
- Linux发行版本
- 查看操作系统的发行版本号
- Linux系统组成及内核版本
- 内核
- 文件系统
- Shell
- 应用程序
- 初识Linux——“一切皆文件”
- 设备文件
- 配置文件
- MBR分区概念
- 查看硬盘和分区
Linux发行版本
Linux系统有多个发行版本,主要包括Red Hat系列、Suse系列和Debian系列。这些发行版本基于Linux内核和自由软件,具有相似的内核和软件包,但在具体操作和使用上可能有所不同。一些著名的发行版包括:
- Red Hat企业版
- Fedora社区版
- CentOS社区版
- Ubuntu
- Deepin Linux
在Red Hat系列中,Red Hat企业版是面向企业应用的官方版本,Fedora是面向个人桌面用户的社区版,CentOS是基于Red Hat企业版源码进行重构的社区版。CentOS由于可以免费使用,成为许多网络公司服务器系统的首选。
在Debian系列中,Debian是一个通用的操作系统,具有广泛的软件包支持,使用apt-get命令进行软件管理。
在Suse系列中,Suse是一种面向企业的操作系统,使用zypper命令进行软件管理。
查看操作系统的发行版本号
你可以通过以下命令查看操作系统的发行版本号:
cat /etc/os-release
这将显示当前操作系统的详细信息。
cat /etc/centos-release
这将显示当前CentOS Linux系统详细的发行版本号。
Linux系统组成及内核版本
Linux系统是一个强大的开源操作系统,它由四个主要部分组成:内核、Shell、文件系统和应用程序。这些组件共同工作,为用户提供了一个稳定且功能丰富的工作环境。
内核
Linux内核是操作系统的核心,负责管理系统的硬件资源,并提供基本的功能和服务。它能够识别各种硬件设备,并为其提供相应的驱动程序。你可以通过运行以下命令来查看当前系统的内核版本:
uname -r
例如,输出可能是3.10.0-693.el7.x86_64
,这表明了内核的版本号和一些系统特定的信息。
文件系统
文件系统是文件在存储设备上的组织方式。在Linux中,常见的文件系统包括Ext4、XFS、Btrfs等。这些文件系统决定了文件和目录的存储方式和管理。
Shell
Shell是用户与内核进行交互的接口。它接收用户输入的命令并将其发送到内核执行。常见的Shell包括Bash、Zsh、Fish等。
应用程序
Linux系统上可以运行各种应用程序,包括文本编辑器、编程语言、办公套件、网络工具和数据库等。这些应用程序可以通过软件包管理器进行安装和管理,例如apt-get、yum、zypper等。
初识Linux——“一切皆文件”
Linux系统的设计哲学是“一切皆文件”。这意味着系统中的一切都被抽象为文件,包括设备和配置。
设备文件
在/dev
目录下存放的是设备文件,例如硬盘、键盘、鼠标等。
配置文件
Linux中的所有配置都通过修改特定的配置文件来实现,这些配置文件通常存放在/etc
目录下。例如,网卡配置文件/etc/sysconfig/network-scripts/ifcfg-ens33
。
MBR分区概念
MBR(主引导记录)类型分区最多只能分4个主分区。MBR区位于硬盘的最前面512字节,其中446字节用于引导程序,64字节用于分区表信息,2字节为标志。由于分区表信息需要16字节的数据表示,因此只能有4个主分区。
- 主分区(Primary Partition):直接存储数据的分区。
- 扩展分区(Extended Partition):不直接存储数据,而是包含逻辑分区。
- 逻辑分区(Logical Partition):存储数据的分区,位于扩展分区内部。
查看硬盘和分区
你可以通过以下命令查看系统中的硬盘和分区情况:
fdisk -l
查看系统中有几块硬盘。
lsblk
列出系统下所有块设备的信息及分区情况。
lsblk /dev/sda
查看特定硬盘的分区状况。
df
查看所有挂载,包括分区的挂载。
Linux文件系统和目录结构
Linux使用XFS作为默认文件系统,它是一个高度可扩展、高性能的文件系统,支持大容量文件系统和高并发操作。
在Linux中,"/"根目录下有多个重要的目录,每个目录都有其特定的功能:
文件夹 | 作用 |
---|---|
/bin | 存放系统命令的目录,所有用户都可以执行。 |
/sbin | 保存和系统环境设置相关的命令,只有超级用户可以使用这些命令。 |
/usr | Unix共享资源目录,存放所有命令、库、手册页等。 |
/usr/bin | 存放系统命令的目录,这些命令和系统启动无关。 |
/usr/sbin | 存放根文件系统不必要的系统管理命令,超级用户可执行。 |
/dev | 存放设备文件。 |
/etc | 存放配置文件的地方。 |
/opt | 可选应用软件包,第三方安装的软件保存位置。 |
/lib | 存放系统程序运行所需的共享库。 |
/proc | 虚拟文件系统,数据保存在内存中,存放当前进程信息。 |
/root | 存放root用户的相关文件,root用户的家目录。 |
/tmp | 存放临时文件。 |
/var | 是储存各种变化的文件,比如log等等。 |
/home | 用户缺省宿主目录。 |
/lost+found | 存放一些系统出错的检查结果。 |
/srv | 服务数据目录。 |
/mnt | 挂载目录,临时文件系统的安装点。 |
/media | 挂载目录,挂载媒体设备,如软盘和光盘。 |
/misc | 挂载目录,挂载NFS服务。 |
/run | 里面的东西是系统运行时需要的,重启时应该抛弃。 |
Linux文件类型包括普通文件、目录、链接、管道、套接字、字符设备和块设备。