当前位置: 首页 > news >正文

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保存和系统环境设置相关的命令,只有超级用户可以使用这些命令。
/usrUnix共享资源目录,存放所有命令、库、手册页等。
/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文件类型包括普通文件、目录、链接、管道、套接字、字符设备和块设备。



http://www.mrgr.cn/news/55721.html

相关文章:

  • C#学习笔记(一)
  • Ajax:跨域、防抖和节流、HTTP协议
  • k8s 1.28.2 集群部署 harbor v2.11.1 接入 MinIO 对象存储
  • 【文心智能体 | AI大师工坊】如何使用智能体插件,完成一款购物类智能体的开发,来体验一下我的智能体『科技君Tom』
  • open3d 读取 pcd
  • freertos的任务管理
  • 【MySQL】索引和事务
  • JAVA继承
  • 时间数据可视化基础实验——Python实现
  • 【付费】Ambari集成Dolphin实战-002-bigtop下编译dolphin——下
  • 简述 C# 二维数据集合 List 的创建、遍历、修改、输出
  • 3. IoC 与DI
  • 数据流风格
  • 改变函数调用上下文:apply与call方法详解及实例
  • Windows 11开发:全面指南
  • Spring Boot 3 + Vue3 + Element-Plus 后台基础管理系统.zip
  • Lua中的break语句
  • 02,talend
  • C++详细笔记(四)
  • c++算法第4天
  • django5入门【03】新建一个hello界面
  • 速盾高防 CDN 防御效果如何?
  • 深入理解 Kafka
  • 基于微信小程序二手物品调剂系统设计与实现
  • Qt开发——Qt项目打包、整合以及生成安装包保姆级教程(Windows系统)
  • WSL2安装ros,安装anaconda,配置PX4