Linux操作系统配置与管理项目化教程(第二版)课件 白玉羚 项目1-6 下载Linux操作系统-管理文件_第1页
Linux操作系统配置与管理项目化教程(第二版)课件 白玉羚 项目1-6 下载Linux操作系统-管理文件_第2页
Linux操作系统配置与管理项目化教程(第二版)课件 白玉羚 项目1-6 下载Linux操作系统-管理文件_第3页
Linux操作系统配置与管理项目化教程(第二版)课件 白玉羚 项目1-6 下载Linux操作系统-管理文件_第4页
Linux操作系统配置与管理项目化教程(第二版)课件 白玉羚 项目1-6 下载Linux操作系统-管理文件_第5页
已阅读5页,还剩323页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目一

下载Linux操作系统目录任务1.1

认识Linux操作系统01任务1.2了解Linux操作系统的体系结构02任务1.3选择Linux操作系统版本03任务1.4下载CentOSLinux操作系统光盘映射文件04任务1.1

认识Linux操作系统011.1.1Linux起源Linux是一款开源免费的类Unix操作系统内核,其核心架构以模块化、可裁剪性及多用户多任务设计著称。基于该内核,全球开发者社区构建了超千种发行版(如Ubuntu、CentOS、Fedora、Debian),覆盖服务器、桌面、嵌入式、云计算、物联网等全场景。此外,Linux是一个多用户、多任务、支持多线程和多CPU的操作系统,能运行主要的UNIX工具软件、应用程序和网络协议。它的稳定性、安全性与网络功能是许多操作系统无法比拟的。

1.1.1Linux起源1991年10月5日,Linux内核由林纳斯·托瓦兹在comp.os.minix新闻组上首次发布。

1993年3月,Linux1.0诞生,Linux加入GPL协议。1998年开始,Google、IBM、Sun、Oracle等公司纷纷与Linux展开了商业往来。同时,随着大量高水平程序员的加入,Linux得到了快速发展。目前Linux的发行版主要有Ubuntu、CentOS、RedHat等,用户遍布世界各地。现如今,Linux应用到了更多的硬件平台,在服务器、嵌入式系统等领域都被广泛应用。1.1.2Linux技术优势

Linux作为开源操作系统的标杆,在成本、性能、安全及生态兼容性上形成不可替代的竞争力。成本低灵活性高、安全性高支持多用户、多任务系统1.1.2Linux技术优势

Linux作为开源操作系统的标杆,在成本、性能、安全及生态兼容性上形成不可替代的竞争力。030201Linux成本低灵活性高、安全性高支持多用户、多任务系统1.1.3Linux的主要特点

1.开放性。Linux开放源代码,用户可以在互联网上免费下载到各种版本的Linux操作系统。此外,用户可以修改Linux的源代码以符合自己的需求。2.真正实现多用户多任务。在Linux系统中,每个用户对自己的资源有特定的权限,并且计算机可以同时执行多个程序,而且各个程序的运行互相独立。

3.广泛的硬件支持。Linux不必像早先的UNIX系统那样仅可以运行在一个公司出产的设备上,而是可以支持个人计算机的x86、ARM、MIPS、ALPHA等多种体系结构的微处理器。1.1.3Linux的主要特点

4.拥有良好的用户界面。Linux向用户提供了字符界面和图形界面两种界面。Linux的传统用户界面是字符界面,即shell。Linux的图形界面。

5.丰富的网络功能。完善的内置网络是Linux的一大特点,Linux是依靠互联网才迅速发展起来的。6.可靠的系统安全。Linux的内核高效稳定,它采取了许多安全技术措施,包括对读写进行权限控制、带保护的子系统、审计跟踪、核心授权等,还提供了大量的网络管理软件、网络分析软件和网络安全软件等1.1.4Linux应用领域服务器领域大数据与数据分析领域桌面应用领域云计算领域嵌入式系统任务1.2了解Linux操作系统的体系结构021.2.1Linux内核Linux内核是指一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。它是Linux操作系统的基础,用于完成最基本的任务。Linux内核主要包括进程调度、内存管理、文件系统、进程间通信和网络接口等。1.2.1Linux内核

进程调度的主要工作是进程的执行。在内核中,这些进程称为线程。内核通过SCI提供了一个应用程序编程接口(API)来创建一个新进程或者停止一个进程,并在它们之间进行通信和同步。进程管理还包括处理活动进程之间共享CPU的需求。进程调度1.2.1Linux内核

内存管理的主要作用是控制多个进程安全地共享内存区域。为了提高效率,如果由硬件管理虚拟内存,内存是按照所谓的内存页方式进行管理的。Linux支持虚拟内存,即运行程序时,操作系统把当前使用的程序块保留在内存中,其余的程序块保留在磁盘中。内存管理1.2.1Linux内核

虚拟文件系统隐藏了各种文件系统的具体细节,为文件操作提供统一的接口。Linux中的这些文件就是通过VFS来实现的。Linux提供了一个大的通用模型,使这个模型包含了所有文件系统功能的集合。虚拟文件系统又分为逻辑文件系统和设备驱动程序。Linux内核中有大量的代码在设备驱动程序部分,用于控制特定的硬件设备。文件系统1.2.1Linux内核

进程间通信就是在不同进程之间传播或交换信息,进程的用户空间是不能相互访问的。因此,如果想实现进程间的通信,就要借助内核。进程通信紫系统支持在进程之间的各种通信机制。进程间通信1.2.1Linux内核Linux支持大量网络协议,网络接口紫系统提供了对各种网络标准的存取和各种网络硬件的支持。网络接口1.2.2ShellLinuxShell是用户与(操作系统)内核之间的(核心)交互界面,季是命令航解释器,也是强大的

脚本

编程环境。shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序。shell编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的shell程序与其他应用程序具有同样的效果。1.2.2Shellshell的版本版本说明BASHGNU计划的一部分,用户CNU/Linux系统,是CentOSStream9操作系统默认的ShellBourneshell由AT&T公司的SteveBourne开发,是Unix上的标准Shell,也是第一个广泛流行的Shell。Kornshell由DavidKorn在贝尔实验室研发,是BourneShell的后继者,语法与BourneShell相同,结合了sh和csh的优点。。CShell由柏克莱大学的BillJoy设计,其语法类似C语言。Zshell是指终极shell,集成了bash、ksh的重要特性,同时又增加了自己独有的特性。1.2.3Linux文件系统Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构。文件系统是文件存放在磁盘等存储设备上的组织方法。目前,Linux系统能支持EXT2、EXT3、FAT、FAT32、VFAT等文件系统。每个文件系统由逻辑块的序列组成,一个逻辑盘空间一般划分为几个用途各不相同的部分,即引导块、超级块、数据区等。1.2.4

实用工具分为三类编辑器用于编辑文件,主要有Ed、Ex、Vi和Emacs;Linux的过滤器就是从用户文件或其他地方按行读取内容,并且把内容写到标准输出。过滤器一些过滤器用行编辑命令输出一个被编辑的文件。另外一些过滤器是按模式寻找文件并以这种模式输出部分数据。还有一些执行字处理操作,检测一个文件中的格式,输出一个格式化的文件。交互程序交互程序允许用户发送信息或接收来自其他用户的信息。实用工具包括文本编辑器、Internet工具、编程语言、数据库等。任务1.3选择Linux操作系统版本031.3选择Linux操作系统版本内核(Kernel)发行套件(Distribution)Linux的版本号:1.3.1识读内核版本Linux内核版本是Linux操作系统的核心组成部分,其迭代反映了技术演进和功能更新。Linux内核版本命名格式如下:

说明:主版本号:标志重大架构更新或里程碑功能引入。次版本号:区分稳定版与开发版。自2.6.0版本后,该字段仅用于标识功能更新周期。修订版本号:记录稳定版内核的补丁与修复次数(如6.14.0到6.14.1可能包含安全修复)。安全补丁标识:附加于修订版本号后,标识紧急安全更新。

主版本.次版本.修订版本号-安全补丁标识1.3.1识读内核版本Linux内核版本是Linux操作系统的核心组成部分,其迭代反映了技术演进和功能更新。Linux内核版本命名格式如下:

说明:主版本号:标志重大架构更新或里程碑功能引入。次版本号:区分稳定版与开发版。自2.6.0版本后,该字段仅用于标识功能更新周期。修订版本号:记录稳定版内核的补丁与修复次数(如6.14.0到6.14.1可能包含安全修复)。安全补丁标识:附加于修订版本号后,标识紧急安全更新。

主版本.次版本.修订版本号-安全补丁标识1.3.1识读内核版本

6代表主版本号14代表次版本号0代表修订版本号rc1代表安全补丁标识。

1.3.2

选择发行版本Linux的发行版本是由许多公司或机构将内核、源代码及相关的应用程序组织构成一个完整的操作系统,以便于一般的用户可以简便地安装和使用Linux。

1.3.2

选择发行版本

1.Slackware。

Slackware创建于1992年,它没有任何配置系统的图形界面工具。优点是由于尽量采用原版的软件包而不进行任何修改,因此软件制造新Bug的概率便低了很多。在其他主流发行版强调易用性的时候,Slackware依然固执地追求最原始的效率,即所有的配置均要通过配置文件来进行。

官方网站为/。1.3.2

选择发行版本2.RedHatLinux。

RedHat是最成功的Linux发行版本之一,它可以让用户很快享受到Linux的强大功能而免去繁琐的安装与设置工作。RedHat公司的免费发行版到RedHat9.0就已经结束了,现在RedHat公司已经转向企业级操作系统的开发。

官方网站为/。

1.3.2

选择发行版本3.DebianLinux。

Debian可以算是迄今为止最遵循GNU规范的Linux系统,它的特点是使用了Debian系列特有的软件包管理工具dpkg,使得安装、升级、删除和管理软件变得非常简单。Debian是完全由网络上的Linux爱好者负责维护的发行套件。这些志愿者的目的是制作一个可以同商业操作系统相媲美的免费操作系统,并且其所有的组成部分都是自由软件。

官方网站:/。1.3.2

选择发行版本4.Ubuntu。

Ubuntu基于DebianGNU/Linux,支持x86、amd64和ppc架构。Ubuntu对GNU/Linux的普及特别是桌面普及作出了巨大贡献。它包括了大量来自Debian发行版的软件包,同时保留了Debian的软件包管理系统。

官方网站为/。1.3.2

选择发行版本5.SuSELinux。

SuSE是德国最著名的Linux发行版,在世界范围内也享有较高的声誉,它的特点是使用了自主开发的软件包管理系统YaST。2003年11月,Novell收购了SuSE,使SuSE成为RedHat的一个强大的竞争对手。同时还为Novell正在与微软进行的竞争提供了一个新的方向。

官方网站为/linux/suse/。1.3.2

选择发行版本CentOS是一个基于RedHatEnterpriseLinux代码构建的开源Linux发行版,因其稳定性、安全性和免费特性,在企业级服务器、云计算和开发环境中得到广泛应用。2014年CentOS7发布,引入Systemd初始化系统,支持更多现代硬件和虚拟化技术。CentOS8发布于2019年,基于RHEL8,进一步提升系统性能和安全性,支持更多容器技术如Docker,但已于2021年停止维护。CentOSStream作为RHEL的上游开发分支,采用滚动更新模式,介于Fedora和RHEL之间,旨在为开发者提供一个持续更新的平台,以便更早地访问新的功能和修复。1.3.2

选择发行版本(1)CentOS可以实现RedHat的全部功能。(2)CentOS是免费的。(3)使用yum命令可以帮助用户即时免费地更新系统。CentOS的官网(4)CentOS相当于RHEL的升级,并且改进了RHEL中的Bug。CentOS特点1.3.3了解CentOSStream9CentOS9正式名称为CentOSStream9,是红帽公司推出的基于RedHatEnterpriseLinux(RHEL)源代码构建的滚动更新Linux发行版,其核心定位是作为RHEL上游开发平台,允许开发者在RHEL正式发布前参与测试和功能验证。任务1.4下载CentOSLinux操作系统光盘映射文件041.4下载CentOS

1.进入官网。2.单击CentosStream区域的Download按钮,如图1-2所示。图1-2Linux官网首页1.4下载CentOS3.进入下载页,然后找到适合你系统的ISO镜像文件并点击下载

1.4下载CentOSISOs:镜像文件,这是一种光盘镜像文件格式。RPMs:RPM(RedHatPackageManager)是红帽公司开发的软件包管理系统,用于在基于RedHat的Linux发行版(如CentOS)中安装、升级、查询和卸载软件包。RPM包是一种预编译的软件包格式,它包含了软件的二进制文件、配置文件、依赖信息等。

1.4下载CentOS

Cloud:CentOS的云镜像。这些镜像专为在云环境中使用而设计,比如公有云(如阿里云、腾讯云等)、私有云(如OpenStack)。云镜像经过优化,能够快速在云平台上部署CentOS系统,并且支持弹性伸缩等云特性。Containers:允许开发者将应用及其依赖打包成一个独立的单元,这个单元可以在不同的环境中快速、一致地运行。Vagrant:用于创建和部署虚拟化开发环境。1.4下载CentOS4.选择x86_64的ISOs下载,弹出“新建下载任务”对话框,选择“下载到”的位置,再单击“下载”按钮。项目二

安装Linux操作系统目录任务2.1做好安装前的准备01任务2.2安装CentOSStream9Linux操作系统02任务2.3完成首次启动CentOS的设置03任务2.4打开Linux终端窗口04任务2.5

设置Systemd目标单元任务2.6

使用系统服务管理工具systemd管理服务0506任务2.1做好安装前的准备01

在开始Linux系统安装之前,最好先对计算机硬件信息有一些了解。了解计算机硬件信息的方法有如下几种:1.参考计算机使用说明书。2.在已经安装了Windows系统的计算机上执行“开始”→“控制面板”→“系统”命令,从打开的窗口中了解一些相关的计算机配置信息。

如果想详细查看硬件信息,可以查看CPU支持的指令集,以便安装CPU类型对应的Linux操作系统版本,可以借助专门的软件工具,如everest。2.1.1查看计算机配置3.安装Linux操作系统还应该注意以下几个系统配置问题:步骤一:查看硬件环境。步骤二:检查网络配置。步骤三:查看外设型号。2.1.1查看计算机配置2.1.2掌握必备的Linux安装知识logo1.操作系统的安装顺序安装时要考虑计算机内是否已安装有其他操作系统,是否要让Linux操作系统与原有的操作系统并存。若让Windows系列操作系统与Linux系统并存,务必先安装Windows系统,再安装Linux系统。

2.1.2掌握必备的Linux安装知识2.设备与设备名称硬件设备Linux中的设备名称IDE硬盘/dev/hd[a-d]后跟一个字母表示IDE通道和设备号。例如,第一个IDE通道的主设备表示为“/dev/hda”,第一个IDE通道的从设备表示为“/dev/hdb”。分区命名则是在硬盘设备文件名后添加数字序号.SCSI硬盘/dev/sd[a-d]第一块SCSI接口类型硬盘表示为“/dev/sda”,第二块表示为“/dev/sdb”。分区命名规则与IDE硬盘类似,如“/dev/sda1”表示第一块SCSI硬盘上的第一个分区。USB设备/dev/sdb1(USB存储设备分区)、/dev/ttyUSB0(USB串口)打印机/dev/lp[0-2]网卡网卡设备名通常遵循“ethX”、“ensX”或“enpXsY”等命名规则,具体取决于系统配置和网卡类型。传统命名中,第一块网卡可能表示为“eth0”;而在使用可预测命名机制时,可能表示为“ens33”或“enp0s3”等。3.Linux分区的表示

由于接触最多的是Windows操作系统,所以大多数人都习惯使用类似于C或D的符号来标识硬盘分区,但是在Linux中却不是这样。Linux的命名设计比其他操作系统更灵活,能表达更多的信息。Linux通过字母和数字的组合来标识硬盘分区,如hda1,具体含义是hda是IDE1口的主硬盘(分区名的前三个字母的含义前面已经讲述),最后的数字表示在该设备上的分区顺序,前四个分区(主分区或扩展分区)用数字1~4表示,逻辑分区从5开始。例如,hda3表示第一个IDE硬盘上的第三个主分区或扩展分区,而hda5表示第一个IDE硬盘上的第一个逻辑分区。2.1.2掌握必备的Linux安装知识4.系统的目录与分区使用2.1.2掌握必备的Linux安装知识

在Linux操作系统中没有Windows的所谓磁盘分区(C盘、D盘)概念,所有在不同分区的数据构成唯一的一个目录树,这个目录树是以“/”作为Linux的根目录。

在安装时Linux系统必须有一个“/”(根目录),其他目录依附在它下面。这些其他目录所使用的实际硬盘空间可以是独立的,在不同的硬盘,也可以是不独立的,在同一个硬盘。如果没有独立,就是使用“/”分区的空间或者在上一层目录的分区空间。实现这种管理方式是通过将每个分区当成目录使用,这种指定的目录即称为挂载点(mountpoint)。任务2.2安装CentOSStream9Linux操作系统02

CentOS(CommunityEnterpriseOperatingSystem,社区企业操作系统)是Linux发行版之一,是来自于RedHatEnterpriseLinux依照开放源代码规定释出的源代码所编译而成的。

CentOS是一个基于RedHatLinux(收费)提供的可自由使用源代码的企业级Linux发行版本。而且在RHEL的基础上修正了不少已知的Bug,相对于其他Linux发行版,其稳定性值得信赖。更重要的是它是免费的,所以它受到了很多企业的青睐。2.2安装CentOSStream9Linux操作系统1.

引导系统后

。界面说明:InstallCent0SStream9:安装Cent0SStream9。Testthismedia&installCent0SStream9:测试安装文件并安装Cent0SStream9。Troubleshooting:修复故障。2.2安装CentOSStream9Linux操作系统2.等待安装2.2安装CentOSStream9Linux操作系统3.进入语言选择界面。选择“简体中文(中国)”选项,然后单击“继续”按钮。2.2安装CentOSStream9Linux操作系统4.时间和日期设置、安装源、安装位置、软件选择。时间和日期选择“亚洲/上海”时区,软件选择这个选项选择“最小化安装”,安装位置选择自动分区。2.2安装CentOSStream9Linux操作系统

(1)安装源选择。单击“安装源”选项,进入“安装源”选择界面,在其中选择正确的安装来源。2.2安装CentOSStream9Linux操作系统(2)打开“安装目标位置”界面,选择安装位置,通常为默认。2.2安装CentOSStream9Linux操作系统

(3)软件选择,根据个人需求进行选择。如果需要图形化界面,且需要将本机设为服务器,则选择“带GUI的服务器”选项。2.2安装CentOSStream9Linux操作系统(4)网络和主机名,打开“网络和主机名”界面,如图2-8所示。默认情况下Ethernet是关闭的,因为是NAT模式,会通过DHCP自动获取IP。2.2安装CentOSStream9Linux操作系统(5)如果需要设置ROOT密码,单击“Root密码”选项,设置密码,然后单击“完成”按钮,如果密码强度低,则单击两次“完成”按钮。2.2安装CentOSStream9Linux操作系统(6)如果有需要,还可以创建一个常用账号。单击“创建用户”选项,可以创建用户,并为其设置密码。2.2安装CentOSStream9Linux操作系统5.所有选项设置完毕后,点击“开始安装”按钮,进入安装界面.2.2安装CentOSStream9Linux操作系统6.进度条完成后,完成安装,

单击“重启系统”按钮重启机器。2.2安装CentOSStream9Linux操作系统任务2.3完成首次启动CentOS的设置032.3完成首次启动CentOS的设置进入欢迎界面单击“开始配置”按钮,打开“隐私”界面,在此界面可以选择是否打开“位置服务”。2.3完成首次启动CentOS的设置点击“前进”按钮,进入“在线账号”界面,在此可以连接您的在线账号。如果不连接在线账号可以直接点击右上方“跳过”按钮。点击“前进”按钮,进入“关于您”界面,在此可以设置“全名”和“用户名”,用于创建主目录。设置后,点击右上方“前进”按钮,进入“密码设置”界面。2.3完成首次启动CentOS的设置“关于您”设置界面2.3完成首次启动CentOS的设置“密码”设置密码设置完成后,点击右上方“前进”按钮,打开“配置完成”界面。2.3完成首次启动CentOS的设置“配置完成”界面配置完成后,可以登录系统了。选择要使用的用户。2.3完成首次启动CentOS的设置登录界面2.3完成首次启动CentOS的设置任务2.4打开Linux终端窗口04

用户可在图形界面下通过鼠标来方便地进行操作。但是,若希望将Linux作为一个服务器,而维护人员更多的是通过远程登录到服务器进行维护活动。这时,由于网络速度等因素的限制,使用命令方式进行系统的维护管理将更加方便、快捷。2.4打开Linux终端窗口单击桌面底部的工具栏“终端”图标,即可打开“终端”窗口。2.4打开Linux终端窗口任务2.5设置Systemd目标单元052.5.1了解目标单元的作用

在CentOS9中,运行级别(Runlevel)的概念已被Systemd目标单元(TargetUnits)取代,但传统运行级别的功能仍可通过Systemd目标实现。

Systemd目标单元是用于管理系统启动状态和运行级别的核心机制,替代了传统的SysVinit运行级别概念。它定义了系统在启动后应达到的状态,它通过管理一组相关服务单元的启动顺序和依赖关系,实现特定的系统状态。CentOS9默认使用multi-user.target(多用户模式)或graphical.target(图形界面模式),传统命令(如init3)在CentOS9中已失效,需改用Systemd命令。

传统运行级别Systemd目标单元描述0runlevel0.target关机1runlevel1.target单用户模式(救援模式)2runlevel2.target多用户模式(无网络)3multi-user.target多用户模式(有网络)4runlevel4.target未定义(通常与3相同)5graphical.target图形界面模式2.5.1了解目标单元的作用传统运行级别与Systemd目标的映射multi-user.target

等效于传统运行级别3,表示多用户模式(无图形界面)。适用于服务器环境,仅提供命令行界面。graphical.target

等效于传统运行级别5,表示图形界面模式。适用于需要图形界面的桌面环境。rescue.target

单用户救援模式,用于系统维护和故障排除。类似于传统运行级别1。mergency.target

紧急模式,提供最小化的系统环境,用于修复严重问题。reboot.target和poweroff.target

分别用于重启和关机。2.5.2常用目标单元2.5.3查看当前运行级别/目标使用systemctl命令可以查看当前运行级别/目标,命令如下:结果说明:显示multi-user.target表示多用户模式显示

graphical.target表示图形界面模式

[root@localhost~]#

systemctlget-defaultgraphical.target

2.5.3查看当前运行级别/目标systemctllist-units--type=targetUNITLOADACTIVESUBDESCRIPTION>basic.targetloadedactiveactiveBasicSystemcryptsetup.targetloadedactiveactiveLocalEncryptedVolumesgetty.targetloadedactiveactiveLoginPromptsgraphical.targetloadedactiveactiveGraphicalInterfaceintegritysetup.targetloadedactiveactiveLocalIntegrityProtectedVolumeslocal-fs-pre.targetloadedactiveactivePreparationforLocalFileSystemslocal-fs.targetloadedactiveactiveLocalFileSystemsmulti-user.targetloadedactiveactiveMulti-UserSystemnetwork-online.targetloadedactiveactiveNetworkisOnlinenetwork-pre.targetloadedactiveactivePreparationforNetworknetwork.targetloadedactiveactiveNetworknfs-client.targetloadedactiveactiveNFSclientservicesnss-user-lookup.targetloadedactiveactiveUserandGroupNameLookupspaths.targetloadedactiveactivePathUnitsremote-fs-pre.targetloadedactiveactivePreparationforRemoteFileSyste>remote-fs.targetloadedactiveactiveRemoteFileSystemsrpc_pipefs.targetloadedactiveactiverpc_pipefs.targetrpcbind.targetloadedactiveactiveRPCPortMapperslices.targetloadedactiveactiveSliceUnitssockets.targetloadedactiveactiveSocketUnitssound.targetloadedactiveactiveSoundCardsshd-keygen.targetloadedactiveactivesshd-keygen.target查看当前激活的目标2.5.4切换运行级别/目标1.切换到多用户模式(无图形界面)[root@localhost~]#

systemctlset-defaultmulti-user.target重启:

[root@localhost~]#reboot2.切换到图形界面模式

[root@localhost~]#systemctlset-defaultgraphical.target重启后生效。任务2.6使用系统服务管理工具systemd管理服务062.6使用系统服务管理工具systemd管理服务CentOS9版本的Linux系统使用了systemd管理机制,它是一个用户级的应用程序,包含一个完整的软件包,其配置文件在/etc/systemd目录下,它不仅能够完成系统的初始化工作,还能对系统和服务进行管理,例如启动、停止、重启、查看、禁止和启用服务。2.6使用系统服务管理工具systemd管理服务

systemd的特性如下:

1.基于socket的激活机制,systemd为支持此机制的服务监听socket,当接收到来自客户端的socket通信时,由systemd激活对应的服务,应答客户端的请求。

2.基于device的激活机制,当有设备接入到系统时,systemd会自动激活device、mount、automount等unit来识别、挂载、接入对应的设备。2.6使用系统服务管理工具systemd管理服务3.基于path的激活机制,当某个文件路径变得可用时或路径出现相应的文件时,激活相应的服务。4.按需激活进程。5.基于依赖关系定义了服务控制逻辑。6.基于bus的激活机制。7.系统引导时,其服务的启动是并行的。【示例】[root@localhost~]#sysemctlstarthttpd.service(1)使用sysemctlstart命令可以启动ApacheHTTP服务器。[root@localhost~]#sysemctltry-starthttpd.service(2)已知HTTP服务已经处于运行状态,使用sysemctltry-start重启HTTP服务。[root@localhost~]#sysemctlreloadhttpd.service(3)使用sysemctlreload命令重新加载配置文件。【示例】01[root@localhost~]#sysemctlstophttpd.service(4)使用sysemctlstop命令停止ApacheHTTP服务器。02说明:无论服务器是否已经运行,都可以用restart选项重启服务器。

[root@localhost~]#sysemctlrestarthttpd.service(5)使用sysemctlrestart命令重启ApacheHTTP服务器。03[root@localhost~]#sysemctlenablehttpd.service(6)使用sysemctlenable命令设置HTTP服务开机启动。【示例】(7)使用sysemctlstatus命令查看HTTP服务开启的状态。[root@localhost~]#sysemctlstatushttpd.service(8)使用sysemctldisable命令关闭HTTP服务。[root@localhost~]#sysemctldisablehttpd.service项目三

使用Linux命进行常规操作目录任务3.1熟悉Linux命令基本结构01任务3.2使用命令行界面02任务3.3显示和设置系统基本信息03任务3.4关闭与重启Linux系统04任务3.5获得命令帮助任务3.6管理日期和时间0506任务3.7管理进程任务3.8作业调度0708任务3.1熟悉Linux命令基本结构013.1熟悉Linux命令基本结构

尽管Linux发行版普遍搭载图形化界面(GUI),但在实际开发、运维及系统管理中,命令行操作仍是高效完成复杂任务的首选工具。Linux命令行通过简洁的语法和强大的组合能力,能够直接调用系统内核功能,覆盖从文件管理到进程控制的几乎所有操作场景。总之,在Linux环境中使用Linux命令可以极大地提高开发效率。3.1.1

命令格式

Linux命令的标准格式为:命令名[选项][参数]说明:命令名:核心功能(如ls列出目录)。选项:调整命令行为(通常以-或--开头)。选项可分为长选项和短选项。短选项为单字符,选项前使用一个减号“-”,长选项为多个字符的组合,选项前使用两个减号“--”。长选项只能单个使用,而短选项可以组合使用,例如“ls-la”。参数:命令作用的目标(如文件名、目录路径)。示例说明:

ls:命令名,列出目录内容。

-l:选项,以详细列表形式显示(包含权限、大小等)。

/home/user:参数,指定操作的目录路径。

ls-l/home/user3.1.2Linux命令使用规则01Linux命令与参数区分大小写。02Linux命令通常不使用长选项。03某些特殊情况下,Linux命令中的选项和参数可以省略。04操作参数可以是文件,也可以是目录,有些命令必须使用多个操作参数。05最简单的命令只有命令名,复杂的shell命令可以有多个参数。任务3.2使用命令行界面023.2使用命令行界面

命令行界面

通常不支持鼠标操作,用户通过键盘输入命令,计算机接收到命令后,予以执行。大多数Linux发行版本提供了终端

,它是一个为用户提供命令行界面的窗口应用程序,用户能通过终端以命令行方式使用Linux系‍统。桌面——单击左上角的“活动”按钮——“终端”图标

用户在终端窗口中输入的命令将由shell执‍行。若要退出终端,可以单击终端窗口右上角的关闭按钮。任务3.3显示和设置系统基本信息033.3.1显示计算机和操作系统的信息uname命令用来显示内核名称、主机名、内核版本、架构等。命令格式如下:常用选项说明:-s:内核名称(如Linux)-r:内核版本(如5.4.0-135-generic)-m:机器硬件架构(如x86_64)-n:网络节点主机名-v:内核构建信息uname

-a3.3.1显示计算机和操作系统的信息1.显示操作系统的内核版本‍号。2.显示计算机硬件架‍构。[root@localhost~]#uname-r5.14.0-284.11.1.el9_2.x86_64说明:RHEL9.2系统使用的Linux内核版本为5.14.0。[root@localhost~]#uname-mx86_643.3.2

显示CPU的相关信息lscpu命令用于显示CPU的相关信息,包括CPU型号、CPU数量、内核数量‍等。命令格式如下:【示例】显示计算机的CPU的相关信‍息。lscpu[root@localhost~]#lscpu架构:x86_64CPU运行模式:32-bit,64-bitAddresssizes:45bitsphysical,48bitsvirtual字节序:LittleEndian3.3.3查看系统内存、虚拟内存的占用情况free命令用来查看系统内存。

[root@localhost~]

#freetotal

used

free

shared

buffers

cachedMem:158556

154284

52720

7284

50380/+buffers/cache:96620

61936Swap:369452

76456

2929963.3.3查看系统内存、虚拟内存的占用情况以上free命令的具体含义解释如下:第2行:total:内存总数。used:已经使用的内存数。free:空闲的内存数。shared:当前已经废弃不用,总是0。buffers:BufferCache内存数。cached:PageCache内存数。关系:total=used+free。第3行。-buffers/cache的内存数96620等于第1行的used-buffers-cached。+buffers/cache的内存数61936等于第1行的free+buffers+cached。可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。第4行单独针对交换分区。任务3.4关闭与重启Linux系统043.4.1使用shutdown命令关机或重启shutdown命令是Linux中最常用的关机命令之一,用于关闭或重启系统。执行shutdown命令时,每个用户都会收到一条信息,从中可以得到关机的最后期限。一般只有root账号才有权执行此命令。命令格式:shutdown

[选项]

[参数]选项参数说明:-a:指定权限。-r:重启(和reboot命令一样)。-k:模拟关机(只向用户发出警告信息,但不关机)。-h:关闭计算机并关闭电源(常用)。-n:不调用init进程关闭计算机(不推荐)。-c:取消正在执行的关机命令。-f:重启计算机,但不进行磁盘检测。-F:重启计算机,进行磁盘检测。-t:指定发出警告信息与删除信息时要延迟的秒数。示例(1)立即关机。[root@localhost~]

#shutdown-hnow(2)关闭系统后重启系统。[root@localhost~]

#shutdown-r(3)系统1分钟后重启。[root@localhost~]

#shutdown-r+1minutes(4)系统15:30后重启。[root@localhost~]

#shutdown-r15:30

(5)安全的关机方法。[root@localhost~]

#Sync;Sync;Sync;shutdown-hnow3.4.2使用reboot命令重启reboot命令用于重启系统。分为两种情况。1.正常重启系统直接执行reboot命令,系统会执行正常关机并重新启动,类似于在系统菜单中单击重新启动选项。2.强制重启系统reboot-f命令会强制重启机器,类似于按下计算机的电源按钮,不会进行正常关机流程,可能会导致数据丢失,一般不建议使用,除非系统出现严重故障。任务3.5获得命令帮助05

Linux系统中有大量的命令,命令又有不同的选项和参数,Linux系统提供了man联机帮助手册(简称man手册),包含命令、编程函数和文件格式等帮助信‍息。man命令用于显示man手册。

要想查看某个命令的使用手册(manpage),只需在输入man后跟该命令的名称。3.5.1使用man手册3.5.1使用man手册【示例】(1)查看ls的使用手册。[root@localhost~]#manls

使用man命令,首先进入manpage环境,要退出manpage帮助直接按Q键。其他manpage按键作用如下:

空格:向下翻页。

pageup:向上翻页。

pagedown:向下翻页。

/word:查找word单词。3.5.1使用man手册【示例】(1)查看ls的使用手册。[root@localhost~]#manls

使用man命令,首先进入manpage环境,要退出manpage帮助直接按Q键。其他manpage按键作用如下:

空格:向下翻页。

pageup:向上翻页。

pagedown:向下翻页。

/word:查找word单词。(2)查看man自己的使用手册。[root@localhost~]#manman

使用man命令查看自己的使用手册是最容易被大家忽略的。3.5.2使用--help选项使用--help选项可以显示命令的用法和选项的含义等帮助信息,只要在命令后面跟上--help选项即可。使用--help选项显示的命令帮助信息是程序作者写入程序内部的,比man手册显示的帮助信息更简‍洁。

使用--help选项可以显示命令的用法和选项的含义等帮助信息,只要在命令后面跟上--help选项即可。使用--help选项显示的命令帮助信息是程序作者写入程序内部的,比man手册显示的帮助信息更简‍洁。3.5.2使用--help选项任务3.6管理日期和时间063.6.1显示/修改当前的日期时间date命令用来显示/修改当前的日期时间。【示例】(1)显示系统当前时间。[root@localhost~]#date(2)将时间更改为2025年06月10日10点23分。[root@localhost~]#date0610102320253.6.2显示日历或年历cal命令用来显示日历或年历。【示例】(1)显示当月的日历。[root@localhost~]#cal(2)显示2025年06月的日历。[root@localhost~]#cal062025(3)显示2025年的年历。[root@localhost~]#cal-y2025任务3.7管理进程073.7.1了解进程

进程是程序在操作系统中的一次执行实例。每个进程都有独立的内存空间、PID(进程ID)、系统资源(文件描述符、CPU时间等)。进程是操作系统进行资源分配和调度的基本单位。运行一个程序,就会在系统中创建一个或者多个进程,进程可以看成是在计算机里正在运行的程序。Linux操作系统启动后,就已经创建了许多进程。3.7.2启动进程

启动一个进程有两个主要途径:手工启动和调度启动。调度启动是事先进行设置,根据用户要求自行启动,将在本节稍后讲述。手工启动又分为前台启动和后台启动。前台启动是最常用的方式,一般用户输入一个命令就已经启动了一个进程,而且是一个前台进程。前台启动的一个特点是进程不结束,终端不出现“#”或“$”提示符,所以用户不能再执行其他的任务。后台启动的一种方法是用户在输入命令后面加“&”字符,后台进程常用于进程耗时长、用户不着急得到结果的场合。用户在启动一个后台进程后,终端会出现“#”或“$”提示符,而不必等待进程结束,用户可以继续执行其他任务。实际上系统启动后已经处于多进程状态,有许多进程在后台运行着。

【示例】[root@localhost~]#yesyy…命令yes是向标准输出发出无穷无尽的一串y,用户再也不能继续其他的任务了。(1)yes命令前台启动。[root@localhost~]#yes>dev/null&[1]6689[root@localhost~]#(2)yes命令后台启动。01023.7.3查看进程状态在Linux中,查看系统进程是日常运维和故障排查的基础操作。ps命令用来查看系统的进程。命令格式:ps[选项]

说明:

a:显示所有用户的进程。

u:以用户导向格式显示(包含用户、CPU、内存等信息)。

x:显示无控制终端的进程(如守护进程)。1.查看系统的进程

示例(1)显示当前控制终端的进程。[root@localhost~]

#ps(2)列出所有的进程。[root@localhost~]

#ps-a(3)详细显示所有包含其他使用者的进程。[root@localhost~]

#ps-au3.7.3查看进程状态前台进程在退出程序后会自动结束,在运行过程中可以按Ctrl+C组合键来终止;后台进程可以使用kill命令强行终止,其命令格式如下:kill[选项][<信号代码>][进程ID]选项说明:-l<信号代码>:若不加信号代码,则-l选项会列出全部的信号代码名称。-s<信号名称或代码>:指定要发出的信号。2.终止进程【示例】(1)查看所有的信号代码。[root@localhost~]#kill-lkill能够发送的信息较多,每个信号都有对应的数值,比如,SIGKL信号的值是9,SIGHUP信号的值是1。(2)终止进程操作执行vi命令创建一个后台进程:[root@localhost~]#vitest1&显示进程的PID:[root@localhost~]#ps使用kill命令终止PID为6657的进程:[root@localhost~]#kill-s96657执行完毕后查看进程是否终止[root@localhost~]#ps3.7.3查看进程状态3.实时监控进程。和ps命令不同,top可以实时监控进程的状况。top默认自动5秒刷新一次。【示例】top屏幕每30秒刷新一次

[root@localhost~]#top-d303.7.3查看进程状态4.将作业放到后台执行。

在手工启动前台进程时,如果进程没有执行完毕,则可以使用Ctrl+Z组合键暂停进程的执行,然后可以使用bg命令将进程放到后台执行,前台继续其他任务。【示例】

[root@localhost~]#yes用Ctrl+Z组合键暂停进程。

[root@localhost~]#bg%1

使用bg命令把进程放到后台执行,在bg命令中指定进程是通过作业ID作为参数来指定的,作业ID可以用jobs查看。

3.7.3查看进程状态5.查看后台作业。jobs命令用来查看后台作业。【示例】[root@localhost~]#more/etc/fig用Ctrl+Z组合键暂停进程。[root@localhost~]#jobs[1]+Runningyes[2]+Stoppedmore/etc/fig上述命令中,“1”就是命令“yes”对应的作业ID,正在后台运行;“2”就是命令“more/etc/fig”对应的作业,已经暂停。3.7.3查看进程状态6.将作业放到前台执行。【示例】fg命令用来把作业“more/etc/fig”重新放到前台执行。[root@localhost~]#fg%2任务3.8作业调度083.8作业调度

作业是在Shell中启动的一组相关进程,通常由一个或多个命令通过管道、后台运行等方式组合而成。它是Shell层面的概念,由Shell创建和管理,通常与用户的终端会话绑定,用于管理用户在终端中启动的任务。一般来说,进程和作业是可互换的。作业控制是shell提供的使用户能够在多个独立作业间进行切换的功能。3.8.1

指定时刻执行任务

在Linux中,at命令用于在指定时间执行一次性任务,适合安排临时的延迟执行操作。at支持多种时间表达方式:1.绝对时间

具体时间(24小时制):at14:30

具体日期和时间:at23:592025-06-15

相对时间:atnow+30minutes(30分钟后)2.相对时间now+2hours:2小时后tomorrow:明天此时noon:中午12点midnight:午夜0点teatime:下午4点示例

(1)3天后的下午5点钟执行/bin/ls。[root@localhost~]#at5pm+3days

使用at命令,首先进入at编辑界面,编辑完后按Ctrl+D组合键退出。

注意:在at编辑界面中输入的命令要使用绝对路径。例如,输入“/bin/ls”而不是“ls”。示例(2)删除指定的作业序列。[root@localhost~]#at-d1//1为对应的作业序号查询作业序列使用命令atq,删除作业使用命令atrm。3.8.2

设置周期性执行任务

使用at命令安排运行一次的作业较方便,但如果要重复运行程序,比如每周三凌晨1点进行数据备份,则使用crontab命令更为方便。【示例】

(1)编辑用户crontab作业。

每天12:30和23:30执行系统升级。[root@localhost~]#crontab-e3012,23***apt-getupdate

(2)查看用户crontab作业。[root@localhost~]#crontab-l

(3)删除用户crontab作业。[root@localhost~]#crontab-r项目四

用Vim编辑器编写shell脚本目录任务4.1初识shell01任务4.2编写shell程序02任务4.3利用输入/输出重定向获取/输出信息03任务4.4使用Vim编辑器04任务4.1初识shell014.1.1了解shellShell是用户与操作系统内核之间的交互接口,属于命令行解释器。它接收用户输入的命令,解析并执行这些命令,同时将结果反馈给用户。Shell不仅支持直接输入命令,还允许用户编写由命令组成的脚本,实现自动化任务。shell定义了各种选项和变量,支持各种高级语言所具有的程序结构,例如条件、循环、函数等。Linux中的shell命令可分为内部命令和外部命令。内置在Bash中的命令称为内部命令。以可执行文件的形式存储在Linux文件系统中的命令称为外部命令。4.1.2shell的核心功能shell的核心功能命令解释与执行将用户输入的命令转换为操作系统可识别的指令。例如,输入ls-l会列出当前目录下的文件详细信息。01脚本编程支持编写Shell脚本(如.sh文件),通过逻辑控制实现复杂任务的自动化。例如,定期备份文件或批量处理数据。024.1.2shell的核心功能环境与变量管理提供系统变量(如PATH)和用户自定义变量,方便配置环境。例如,$HOME表示用户主目录。04流程控制支持条件判断(if)、循环(for、while)等结构,实现复杂逻辑。例如,遍历目录中的文件并执行操作。05进程管理可启动、暂停或终止进程。例如,通过ps查看进程,kill终止进程。064.1.3常见Shell类型1.Bash(BourneAgainShell)Bash是Linux默认Shell,兼容sh并扩展了功能(如命令补全、历史记录)。语法简单,适合新手。2.Zsh

功能强大,支持插件和主题,语法更灵活(如自动补全、拼写纠正)。3.Ksh(KornShell)

结合csh和sh的优点,支持高级编程特性。4.Csh(CShell)

语法类似C语言,适合熟悉C的用户,但已逐渐被Bash/Zsh取代。4.1.4使用BashShellBashShell是Linux系统中最常用的Shell之一,它能运行于大多数类UNIX操作系统之上。Bash是一种命令行解释器,负责用户与操作系统内核之间的交互。用户输入命令后,Bash将其解释并传递给内核执行,再将结果返回给用户。Linux操作系统下的Bash提示符分为#与$两种,其中#代表超级账户root,$代表普通账户。Bash命令的格式如下:$command[[-]option(s)][optionargument(s)][commandargument(s)]选项说明:

$:计算机的提示符。

[]:可选的。

Command:命令,均为小写。

[[-]option(s)]:Bash的命令选项。

[optionargument(s)]:定制命令选项的一个或多个修饰符号。

[commandargument(s)]:命令对象。4.1.4使用BashShellBash有以下功能:(1)命令记忆功能,即它能记忆使用过的命令。Bash能自动跟踪用户每次输入的命令,并把输入的命令保存在历史列表缓冲区中。(2)命令与文件补全功能。在Bash命令提示符下输入命令或程序名时,若没有输全命令或程序名,按Tab键,Bash将自动补全命令或程序名。在Bash的提示符后面连续按两次Tab键可以显示所有的可执行命令。(3)命令别名设置功能。在Bash下,可用im这个自定义的命令来替换“Is-al”这样的命令串。4.1.4使用BashShell(4)作业控制。作业控制是指在一个作业执行过程中控制执行的状态。可以挂起一个正在执行的进程,并在以后恢复执行该进程。(5)程序脚本。在Linux系统中可以使用shellscript将平时管理系统常需要执行的连续命令写成一个文件。(6)拥有通配符。在Bash下可以使用通配符“*”和“?”。“*”可以替代多个字符,而“?”则替代一个字符。任务4.2编写shell程序024.2.1创建shell脚本Linux中的脚本(Shell程序)是一个文本文件,包含各类Linux的Shell命令。通过脚本文件,这些命令汇集在一起,可连续执行Shell命令。shell脚本的后缀为.sh。

语法格式如下:#!/bin/sh#comments

#!/bin/sh:表示其后路径所指定的程序即是解释此脚本文件的shell程序,不可缺少。

#comments:主程序。

注释行:以#开头直到此行的结束。如果一行未完成,可以在行尾加上“\”,这个符号表明下一行与此行会合并为同一行。示例编写shell程序,在终端输出“这是第一个shell程序”。#!/bin/sh#var="这是第一个shell程序"#echo$var4.2.2使用变量Shell变量是存储数据(如字符串、数字等)的容器,用于在Shell脚本或命令行中动态引用和操作数据。它们是Shell编程的核心概念,直接影响脚本的灵活性和可维护性。Shell变量分为环境变量、用户自定义变量、引用变量等。1.环境变量

在Linux系统中,每个用户登录系统后都会有一个专用的运行环境。用户可以通过一些变量来完成自己的个性化设置。Linux环境由许多变量和这些变量的值组成,通过设置这些环境变量来控制用户环境。Linux系统的环境变量通常以大写字符来表示。4.2.2使用变量(1)使用常见环境变量。shell中的常见环境变量如表所示:变量名描述HOME用户主目录的全路径名。主目录是开始工作的位置,默认情况下普通用户的主目录为/home/用户名,root用户的主目录为/rootLOGNAME用户名,由Linux自动设置,系统通过LOGNAME变量确认文件的所有者以及执行某个命令的权限等HISTSIZE保存历史的条数PATH目录。PATH变量中的字符串顺序决定了先从哪个目录查找HOSTNAME主机的名称LANG系统目前的工作语言PWD当前工作目录的路径,它指出目前所在的位置SHELL当前用户的shell类型MAIL当前用户的邮件存放目录4.2.2使用变量(2)使用特殊变量。在shell中有一些特殊变量,如表所示:变量名描述$#:表示命令行中参数的个数$$当前进程的进程号$@表示命令行中输入的所有参数串$0命令行中输入的shell程序名$?表示上一条命令执行后的返回值$*表示shell程序的所有参数串【示例】改变目录HOME/Desktop。[root@localhost~]

#cd$HOME/Desktop4.2.2使用变量(3)显示环境变量。可以用echo和env命令显示环境变量,echo命令用于显示单个变量,env命令用于显示所有环境变量。使用环境变量时,要在其名称前面加上“$”符号。【示例】显示环境变量$HOME。[root@localhost~]

#echo

$HOME

(4)清除环境变量。【示例】清除环境变量的命令为:Unset

$HOME4.2.2使用变量(5)设置环境变量的文件。使用Bashshell时,有以下几个文件和用户的作业环境有关:1)改变系统所有用户环境变量的文件:/etc/profile/etc/bashrc/etc/inputrc2)改变单一用户用户环境文件:$HOME/.bash_profile$HOME/.bashrc$HOME/.inputrc$HOME/.bash_login4.2.2使用变量2.用户定义变量用户可以按照一定的语法规则自定义变量。(1)给变量起名。shell的变量名与其他高级语言一样遵循表示符命名规则,即以字母或下划线开头,其余部分可由字母、数字和下划线组成,shell变量名的长度不受限制。shell的变量名对大小写敏感。比如,dir与Dir是不同的变量。(2)给变量赋值。用户可以给自定义的变

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论