在Linux运维中,掌握YUM和磁盘管理是提升效率的关键。下面将带你快速了解YUM的工作原理和企业案例演练,以及磁盘管理的基础知识。
YUM(Yellowdog Updater, Modified)是一个在基于 RPM 的 Linux 发行版(如 Red Hat Enterprise Linux、CentOS 和 Fedora)中用于管理软件包的命令行工具。它可以自动解决依赖关系,从而简化软件包的安装、升级和删除过程。YUM通过使用软件仓库(repository)来管理软件包。软件仓库是一个包含软件包及其元数据的服务器。元数据包括软件包的名称、版本、依赖关系等信息。YUM使用这些元数据来确定如何安装、升级或删除软件包,以及如何解决依赖关系。
磁盘管理是Linux运维的另一项重要技能。它涉及到磁盘分区、格式化、挂载和维护等操作。掌握这些基础知识对于确保系统的稳定性和性能至关重要。例如,使用fdisk
命令可以创建、删除和修改磁盘分区,而mkfs
命令则用于格式化分区,使其可以被Linux系统识别和使用。
? 粉丝福利
关注公众号回复【Linux工具包】获取:
✅ linux150个基础命令(书签版)
✅linux安装教程
01.YUM软件包管理
YUM(Yellow Updater Modified),这个强大的前端软件包管理器。YUM适用于CentOS、Fedora、Red Hat及SUSE等发行版,它简化了RPM包的管理,自动处理依赖关系,让你的运维工作更加高效。
YUM软件包管理
YUM的核心优势在于它能够自动下载并安装RPM包,同时自动处理所有依赖的软件包,这大大提升了安装软件的效率,节省了宝贵的时间。
1.1 YUM工作原理
要精通YUM,理解其工作原理至关重要。YUM的运行依赖于两个主要部分:YUM源和YUM客户端。
YUM源:通过HTTP或FTP服务器发布RPM包的基准信息,包括版本号、配置文件、二进制信息和依赖关系等。
YUM客户端:从YUM源下载所需的RPM包。它通过查找
/etc/yum.repos.d/
目录下的.repo
文件来确定YUM源的镜像地址。如果配置了官方源,客户端需要联网下载软件;如果没有网络,可以构建光盘源或内部源。
YUM客户端操作
YUM客户端在安装软件时,默认将源地址、Header信息、软件包、数据库信息和缓存文件存储在/var/cache/yum
中。使用YUM时,它优先查找Cache中的软件包,如果Cache中不存在,则访问外网YUM源。
1.2 YUM企业案例演练
YUM命令行参数详解
YUM作为Linux系统的包管理工具,通过简洁的命令行参数即可高效完成软件安装、更新、删除等操作。以下是常用参数的详细解释:
基础格式:yum [command] [package] [options]
常用参数说明:
● -y:自动确认操作(如安装/卸载时跳过交互式确认)
● -q:静默模式,不显示安装过程(仅输出结果)
● install:安装指定软件包(如 yum install httpd
)
● search:搜索软件包(如 yum search nginx
)
● list:显示软件包列表(如 yum list httpd
查看httpd状态)
● remove/erase:删除软件包(两者功能相同,如 yum remove httpd
)
● update:更新软件包或内核(如 yum update httpd
更新httpd,yum update
更新所有可更新包)
● check-update:检查可更新的软件包
● info:显示软件包详细信息(如 yum info httpd
)
● provides:查询文件/命令由哪个软件包提供(如 yum provides "*/rz"
查找rz命令的来源)
● grouplist:列出可安装的软件组(如 yum groupinstall "GNOME Desktop"
安装图形界面)
● groupinstall/groupremove:安装/删除软件组
● deplist:查看软件依赖(如 yum deplist httpd
)
● clean:清理缓存(如 yum clean all
清理所有缓存,yum clean packages
仅清理软件包缓存)
实战案例:用YUM高效管理Linux系统
掌握了参数后,结合以下案例快速上手YUM操作:
案例1:安装HTTPD服务(Web服务器)
命令:yum install httpd -y
作用:这里的-y
参数表示自动确认安装过程中的所有提示,无需手动输入yes。安装完成后,你可以在系统中找到httpd服务。
案例2:查询软件组
1. 查询可用软件组:yum grouplist
作用:这将列出所有可用的软件组,包括“Minimal Install”、“Compute Node”、“Infrastructure Server”等。
案例3:安装图形界面
安装图形界面:yum groupinstall "GNOME Desktop" -y
作用:安装完成后,你的系统将具备图形界面功能,方便进行图形化操作。
案例4:搭建LAMP架构(中小企业常用环境)
命令:yum install httpd php php-devel php-mysql mariadb mariadb-server -y
作用:一键安装Apache、PHP、MySQL等LAMP组件,快速搭建Web开发环境。
案例5:卸载软件包
命令:yum remove ntpdate -y
作用:删除ntpdate软件包,避免资源占用。
案例6:查找命令对应的软件包
命令:yum provides rz
或 yum provides "*/rz"
作用:快速定位提供"rz"命令的软件包(如lrzsz)。
案例7:系统升级与维护
1. 检查可更新包:yum check-update
查看系统中可升级的软件包列表。
2. 升级所有软件包或内核:yum update -y
自动升级系统所有可更新组件(需谨慎操作,可能影响系统稳定性)。
02.Linux磁盘管理
在Linux系统中,硬盘不仅是存储数据的物理设备,更是系统稳定运行的关键。对于运维工程师来说,掌握硬盘的维护和管理是必备技能。本文将带你深入了解硬盘的基础知识,以及如何在企业生产环境中高效管理硬盘。
2.1 计算机硬盘简介
硬盘是计算机的主要存储媒介之一,它由一个或多个铝制或玻璃制的碟片组成,碟片上覆盖有铁磁性材料。硬盘内部结构包括磁道、柱面、扇区和磁头等部件。
在Linux系统中,硬件设备的相关配置文件通常存放在/dev/
目录下,
硬盘的常见命名方式包括:
/dev/hda
、/dev/sda
、/dev/sdb
、/dev/sdc
、/dev/vda
等,具体名称取决于硬盘的接口类型。
硬盘数据存储方式
在硬盘上,数据的最小存储单位称为扇区(Sector),每个扇区通常存储512字节。为了提高读取效率,操作系统不会逐个扇区读取数据,而是一次性连续读取多个扇区,这样的一组扇区称为一个块(Block)。块是文件存取的最小单位,其大小常见的有1KB、2KB、4KB,在Linux中通常设置为4KB,即连续八个扇区组成一个块。
查看Linux分区的Block大小
你可以通过以下三种方法查看Linux分区的块大小:
1.使用dumpe2fs
命令:
dumpe2fs /dev/sda1 | grep "Block size"
2.使用tune2fs
命令(仅适用于ext2/ext3/ext4文件系统):
tune2fs -l /dev/sda1 | grep "Block size"
3.使用stat
命令:
stat /boot/ | grep "IO Block"
优化Block大小以节省空间
在某些情况下,根据企业的实际需求,调整块大小可以显著节省存储空间。例如,如果创建一个文件大小为10字节,而默认块大小为4KB,那么即使文件很小,也会占用整个块。如果有1万个这样的小文件,理论占用空间为97.65625MB,但实际占用空间可能达到40GB。在这种情况下,将块大小设置为1KB可以大大节省空间。
实践操作
添加硬盘:在企业生产服务器上添加硬盘通常涉及物理安装硬盘到服务器,然后通过
fdisk
或parted
命令进行分区。分区:使用
fdisk /dev/sdx
命令对新硬盘进行分区。这里的/dev/sdx
是新硬盘的设备文件。初始化:对新分区进行格式化,例如使用
mkfs.ext4 /dev/sdx1
命令将分区格式化为ext4文件系统。挂载:将新分区挂载到系统中,例如使用
mount /dev/sdx1 /mnt
命令将分区挂载到/mnt
目录。故障修复:如果硬盘出现故障,可使用
fsck
命令进行文件系统检查和修复。
2.2 硬盘Block及Inode详解
硬盘管理是运维工程师必须掌握的技能之一。硬盘不仅是存储数据的物理介质,更是系统稳定运行的关键。了解硬盘的Block和Inode,以及如何在企业生产环境中高效管理硬盘。
硬盘Block及Inode详解
在Linux系统中,文件数据的存储包括两个部分:文件内容和文件属性(如权限、所有者等)。文件内容存储在Block中,而文件属性存储在Inode中。
SuperBlock
硬盘分区中还有一个重要的部分——超级区块(SuperBlock)。SuperBlock记录了整个文件系统的整体信息,包括Inode和Block的总量、使用大小、剩余大小等。每个Inode和Block都有编号,方便Linux系统快速定位查找文件。
Inode
Inode记录了文件的属性,如权限、所有者等,并记录了该文件的数据所在的Block编号。每个文件都会占用一个Inode,Inode内则有文件数据放置的Block号码。如果能够找到文件的Inode,就可以找到该文件所放置数据的Block号码,从而读取该文件内容。
Block
Block存储文件的内容。如果文件超过默认Block大小,会自动占用多个Block。
查看Linux系统Inode
你可以通过以下命令查看Linux系统的Inode信息:
使用
dumpe2fs
命令:
dumpe2fs /dev/sda1 | grep "Inode size"
2.使用tune2fs
命令:
tune2fs -l /dev/sda1 | grep "Inode size"
3.使用stat
命令:
stat /boot/ | grep "Inode"
查看磁盘容量
Linux中常用的查看磁盘或目录容量的命令有df
和du
。
df命令
df
(disk filesystem)命令用于查看磁盘的容量、使用容量、剩余容量等。默认以KB为显示单位。
-i
:查看Inodes的使用情况。-h
:用合适的单位显示(如KB、MB、GB)。-k
、-m
:分别表示以KB和MB为单位显示。
du命令
du
(disk usage)命令用于查看某个目录或文件所占用空间的大小。
-a
:列出所有文件的大小和目录。-b
:以B为单位输出。-k
:以KB为单位输出。-m
:以MB为单位输出。-h
:系统自动调节单位显示。-c
:最后加总。-s
:列出总和。
格式化磁盘时指定Inode和Block大小
在格式化磁盘时,可以指定默认Inode和Block的大小。例如,使用以下命令:
mkfs.ext4 -b 4096 -I 256 /dev/sdb
这里的-b 4096
指定默认Block大小为4096字节,-I 256
指定默认Inode大小为256字节。
2.3 硬链接魔法简介
在Linux的神秘领域中,硬链接就像是给文件施加了复制魔法。? 它允许多个文件名指向同一个inode,就像是多个标签指向同一份数据。这意味着,无论你通过哪个文件名访问,看到的都是相同的内容。
而且,如果你修改了文件内容,所有文件名都会显示这个变化。但是,如果你删除了一个文件名,其他的文件名仍然可以访问文件内容,就像那个被删除的只是一个影子。
? 创建硬链接
想要给你的文件施加复制魔法吗使用以下命令:
ln magic.txt spell.txt
这里,magic.txt
是原文件,而spell.txt
是它的复制品。使用ls -l
命令,你会发现它们共享同一个inode号码,而且inode的链接数会增加,显示为2。
?️ 删除硬链接
如果你不再需要一个复制品,可以这样做:
rm -f spell.txt
这时,magic.txt
的链接数会减少。如果链接数降到0,系统会回收inode和对应的block区域,就像从未有过这个复制品一样。
? 实用小技巧
? 硬链接不能跨分区:复制品不能离开它的维度。
? 硬链接对目录无效:目录有自己的守护魔法,不能创建硬链接。
? 节省inode空间:硬链接共享inode,节省空间。
? 文件内容始终存在:直到所有硬链接都被删除,文件内容才会消失。
2.4 软链接介绍
软链接就像是文件的快捷方式。想象一下,你有一份重要的文件document.txt
,你希望在多个目录下都能轻松访问它,但又不想复制多份。这时,软链接就派上用场了。创建一个软链接,比如link.txt
,它的内容就是document.txt
的路径。当你访问link.txt
时,系统会自动引导你到document.txt
。
? 创建软链接
创建软链接的命令如下:
ln -s document.txt link.txt
这里,document.txt
是源文件,而link.txt
是指向它的软链接。
? 软链接的限制
软链接依赖于源文件的存在。如果删除了document.txt
,尝试访问link.txt
会得到错误:“没有这样的文件或目录”。
? 软链接与硬链接的区别
指向内容:软链接指向文件名,硬链接指向inode。
跨分区:软链接可以跨分区,硬链接不可以。
inode使用:软链接会消耗额外的inode,硬链接则共享inode。
? 实用小技巧
软链接可以链接文件和目录。
删除源文件或重启系统后,软链接仍然存在,但内容会丢失。
如果新建了同名的源文件,软链接会恢复正常。
?️ 磁盘分区和格式化在Linux中,磁盘分区和格式化是常见的操作。使用fdisk
命令可以管理分区。
? 使用fdisk
fdisk [设备名称]
:不带-l
参数时,可以进行分区操作。p
:打印当前磁盘的分区情况。n
:建立一个新的分区。w
:保存更改。q
:退出。d
:删除一个分区。
软链接是Linux中一个非常有用的功能,它可以让你更灵活地管理文件和目录。掌握软链接,你将能够更高效地组织你的文件系统。
YUM与磁盘管理指南
下一篇将介绍:
磁盘分区:掌握Linux数据管理
一、硬盘分区硬盘分区是Linux系统管理中的基础,主要分为三种类型:
主分区:也称为引导分区,每个硬盘最多可以有4个主分区。通常,主分区对应于操作系统的“C盘”。
扩展分区:用于指向下一个分区的指针,形成一个单向链表,帮助管理多个逻辑分区。
逻辑分区:位于扩展分区之上,可以创建多个,每个逻辑分区都是独立的存储单元。
二、实战操作在Linux中,使用fdisk
命令可以轻松管理分区。以下是一些基本操作:
创建分区:使用
n
命令创建新的分区。删除分区:使用
d
命令删除指定的分区。保存更改:使用
w
命令保存分区表的更改。退出:使用
q
命令退出fdisk
。三、今日拓展
磁盘挂载:了解如何将分区挂载到文件系统中,使其可用。
Nginx服务:预习Nginx服务基础,掌握Web服务器的配置和管理。
磁盘分区是Linux系统管理的重要组成部分,掌握分区管理可以更有效地组织和利用存储资源。通过实战操作,你可以更深入地理解分区的概念和应用。同时,预习磁盘挂载和Nginx服务将为你的Linux技能树增添更多枝叶。

优网科技秉承"专业团队、品质服务" 的经营理念,诚信务实的服务了近万家客户,成为众多世界500强、集团和上市公司的长期合作伙伴!
优网科技成立于2001年,擅长网站建设、网站与各类业务系统深度整合,致力于提供完善的企业互联网解决方案。优网科技提供PC端网站建设(品牌展示型、官方门户型、营销商务型、电子商务型、信息门户型、DIY体验、720全景展厅及3D虚拟仿真)、移动端应用(手机站、APP开发)、微信定制开发(微信官网、微信商城、企业微信)、微信小程序定制开发等一系列互联网应用服务。