云原生俱乐部-RH124知识点总结(3)

发布于:2025-08-17 ⋅ 阅读:(17) ⋅ 点赞:(0)

写到这RH124的内容已经过半了,虽然内容不多,但是还是不太好写。因为简单的命令不想写,至于理解上也没什么难度,不过还是要保证整体内容的都要讲到。

这篇文章就把RH124剩下的内容都完结吧,主要还剩下配置和保护SSH、管理网络、安装和更新软件包以及访问Linux系统文件。

管理网络要使用nmcli工具,至于安装和更新软件包则使用的dnf包管理器,访问linux文件系统则是要学习mount挂载。内容也很重要,因为rhcsa认证考试会考。


配置和保护SSH

这里先讲一讲ssh和ssl的区别。ssh是secure shell的缩写,而ssl则是secure sockets layer的缩写,一个工作在应用层,一个工作在传输加密层。ssh通过比对服务器公钥的md5值来验证,而ssl则是通过ca证书来验证对方。

[1]ssh配置文件

家目录下会有一个.ssh目录,下面放着known_hosts和config文件,前者用于存放已经远程登录的主机信息(下次不用比对md5值),后者用于远程登录的预设参数。

当然了还有公私钥文件id_rsa和id_rsa.pub文件,以及作为服务端允许远程登录的authorized_keys,这个文件存放允许登录的主机信息。

其实在/etc/ssh目录下也存放着ssh_known_hosts和sshd_config文件,以及ssh_config文件,sshd_config表示服务端配置文件,ssh_config则表示客户端配置文件(系统全局配置,会被覆盖)。

[2]允许root远程登录

接下来主要是设置root是否允许远程登录,还有root是否允许密码登录,通过/etc/ssh/sshd_config文件来配置。分别修改的是/etc/sshd_config文件(服务端)中的PermitRootLogin还有PasswordAuthentication字段。

分别将这两个字段设置为yes即可,不过还有补充的是,可以通过ssh-keygen生成本地的公私钥,用于客户端ssh连接。注意客户端和服务端的公私钥不是一起的,而是分开的。服务端的公私钥和配置文件(除了authorized_keys文件)都放在/etc/ssh目录下。

然后就是ssh-copy-id将本地公钥上传到远程服务器(authorized_keys)中,第一次需要输入密码,并验证md5值。

管理网络

管理网络的工具有很多,比如ifconfig(属于net-tools工具),以及ip(iproute2工具集,替代ifconfig),当然还有nmcli工具(nmtui图形化工具)。

前两者都是临时修改,对底层网络进行配置,而nmcli则是通过修改配置文件永久修改。

网卡的命名规则:之前都使用ethn来命令网卡,但是后面使用以太网(有线)接口en来替代,无线局域网WLAN接口则用wl替代。

但有时候通过nmcli查看网卡状态总是unmanaged,这时候就只能使用ip或者ifconfig来修改了(内核),具体情况我也不了解,也没办法。

[1]修改主机名

通过host命令可以查看当前主机的主机名,其实是保存在/etc/hostname文件里面的,可以使用hostname name来动态修改。

或者通过hostnamectl hostname name永久修改,最直接的方式就是编辑/etc/hostname文件来修改。不过不建议手动修改,因为/etc/hosts文件中可能有127.0.0.1 hostname这样的条目,也就是本地dns解析。

如果手动修改/etc/hostname文件,会导致他们在之间的关联出现问题,除非全部手动修改。补充一点就是/etc/hosts是本地域名解析文件,在/etc/resolv.conf文件中则保存着DNS服务器的IP地址,同时有domain、search字段。

[2]查看主机网络

可以通过ifconfig命令来查看网络,不过推荐使用ip。ip link show查看网卡的状态,还有MTU值等,ip route show查看路由,ip addr show查看ipv4地址和子网掩码。

如果网卡处于down的状态可以使用ip link set ens-33 up 来启用,当然ip link还能创建虚拟网卡。可以通过ip addr add  192.168.241.141/24 dev ens-33来动态设置IP,注意一个网卡能够有多个IP。

对应的使用该ip addr del来删除指定的IP,还有就是通过ip route add default via 192.168.241.2 dev ens-33来指定下一跳网关IP,通过ip route del删除。

除了设置IP外,可能需要查看端口的占用情况,可以使用netstate -tuln来查看网络情况(only servers),netstate -ta查看所有的。不过在这个我觉得名称并不合适,其实应该叫套接字情况统计,也就是socket statistics。

有个ss工具替代了netstate,使用ss -ta一样能够观察到端口的占用情况。

[3]NetworkManager服务

前面输了半天,总算讲到重点内容了。也就是NetworkManager服务,服务配置文件(也就是网络配置)保存在/etc/NetworkManager/system-connections目录下,并使用nmcli工具来管理。

通过nmcli dev status来查看网卡的状态,通过nmclli con show 则可以查看配置文件的状态(是否启用,--active看启用的)。可以通过`nmcli con mod "配置文件名" 字段 值`来修改配置文件,然后通过nmcli con down 再up "配置文件名"来启用。

或者通过`nmcli con add con-name "配置文件名" ifname ens-33 字段 值`来添加,然后再用nmcli con up "配置文件名"启用。当然,这讲的都是对配置文件的操作,也可以对网卡进行操作。

如使用nmcli dev disconnect ens-33 断开连接,nmcli dev connect ens-33来启用连接。

接下来讲一讲所谓的字段有哪些,主要是ipv4.addresses,ipv4.dns,ipv4.gateway等,注意的是如果是手动配置,需要使用字段ipv4.method manual,否则会有问题。还可以设置connection.autoconnect yes让配置文件自动启用。

安装和更新软件包

这部分又是一堆内容,主要是讲讲包管理器的,从rpm包管理器,到yum包管理器,再到dnf包管理器,一代一代升级。在讲包管理器之前,先理清楚两个词的概念,一个是下载,一个是安装。

下载是将软件包从远程服务器或本地存储(如U盘)​​复制到当前主机,需要通过网络或存储介质进行数据传输。

而安装则是系统集成,下载的软件包里面有可执行文件,库文件以及配置文件等等。安装软件包就是将已下载的软件包​解压、配置并集成到操作系统​中,使其可运行。主要包括文件部署以及环境配置,因为有些软件包可能需要设置环境变量之类的。

[1]包管理器

rpm是本地包管理工具,不处理软件包的依赖,只是将下载好的软件包安装到系统上。

rpm包管理工具并不管理仓库,但是yum和dnf开始管理仓库。yum和dnf能够自动处软件理依赖关系,对于本地没有的软件包则会从仓库中寻找并下载安装。

不过就拿dnf(yum升级版,主要是性能上提升,而不是功能上的扩展)来说,实际上是调用rpm包管理器来实现安装的,但扩展了依赖管理功能以及仓库管理功能。

[2]配置软件仓库

可以直接编写/etc/yum.repos.d目录下后缀名为.repo的仓库文件,文件名倒是不重要,而是文件里面的仓库id重要,使用[reponame]标明。

一个仓库需要有name、baseurl、gpgcheck(gpgkey)、enabled等字段,name一般和仓库id保持一致,如果gpgcheck=1,那么就需要指定gpgkey的路径,一般将enabled设置为1。

使用dnf repolist all查看所有的仓库,使用dnf makecache去验证。还有dnf search、dnf list等等命令。dnf upgrade则是更新系统中所有的软件,从软件仓库中寻找对应的软件,并比较软件版本。

访问Linux系统文件

首先讲讲挂载,和挂载要素。使用mount挂载文件系统,挂载点需要是空目录;使用unmount取消挂载,但是需要确保该挂载点没有进程使用,可以使用lsof来查看该挂载点目录否是有进程占用。

挂载要素指的是设备文件、挂载点、文件系统、挂载选项。设备文件如磁盘分区、U盘等,需要先建立文件系统,再使用mount挂载。使用mount是临时挂载,如果要永久挂载,则需要编辑/etc/fstab文件。

比如/dev/vdb1 /mnt/data ext4 defaults 0 0,defaults是挂载选项,包含rw,suid,dev,exec,auto,nouser,async等默认选项。至于第一个0表示永不备份(禁用dump工具对该分区备份),第二个0表示系统启动时不检查该文件系统。

可以使用df -h查看文件系统的挂载情况,对于未挂载的设备文件,则可以通过lsblk查看(显示挂载和未挂载的设备)。使用lsblk -fp则可以看到设备文件的UUID,现在一般用UUID来挂载而不是设备的路径。

使用free -h则是查看内存的占用情况,包括交换分区的使用情况。要注意swap并不属于文件系统,它既没有目录/文件结构,也不能通过路径访问。文件系统有ext4类型(通用文件系统,稳定),xfs文件系统(高性能),NTFS文件系统(兼容windows,双系统共享分区)等。


网站公告

今日签到

点亮在社区的每一天
去签到