系统预览
先了解一下自己的系统
1. 系统版本和内核信息
cat /etc/redhat-release # 查看RedHat版本
uname -a # 查看内核信息
cat /proc/version # 查看Linux版本信息
2. 硬件资源信息
free -h # 查看内存使用情况
df -h # 查看磁盘使用情况
lscpu # 查看CPU信息
dmidecode # 查看硬件信息(需要root权限)
3. 系统负载和进程
top # 实时查看系统负载和进程
uptime # 查看系统运行时间和负载
ps aux # 查看所有进程
4. 网络相关
ip addr # 查看网络接口信息
netstat -tunlp # 查看网络连接和监听端口
ifconfig # 查看网络接口配置
5. 系统服务状态
systemctl status # 查看所有服务状态
systemctl list-units --type=service # 列出所有服务
6. 系统日志查看
journalctl # 查看系统日志
tail -f /var/log/messages # 实时查看系统消息
7. 用户和权限
who # 查看当前登录用户
last # 查看系统登录历史
id # 查看当前用户的信息
8. SELinux 状态
getenforce # 查看SELinux状态
sestatus # 查看SELinux详细状态
使用建议
部分命令可能需要 root 权限,可以使用 sudo
来执行建议先了解系统基本信息,再深入查看具体服务 对于实时监控命令(如 top),可以使用 q
退出使用 man [命令]
可以查看命令的详细说明
修改密码、添加用户
1. 修改密码
# 修改当前用户密码
passwd
# 修改其他用户密码(需要root权限)
sudo passwd 用户名
# 修改root密码(需要root权限)
sudo passwd root
2. 用户管理
# 添加新用户
sudo useradd 用户名
sudo useradd -m 用户名 # -m 选项会同时创建用户主目录
# 删除用户
sudo userdel 用户名
sudo userdel -r 用户名 # -r 选项会同时删除用户主目录
# 修改用户信息
sudo usermod -选项 用户名
3. 常用的 usermod 选项
-g
:修改用户所属的主组-G
:修改用户所属的附加组-s
:修改用户的登录 shell-d
:修改用户的主目录-L
:锁定用户账号-U
:解锁用户账号
4. 查看用户信息
# 查看用户信息
id 用户名
# 查看当前登录用户
who
whoami
# 查看用户列表
cat /etc/passwd
# 查看用户组
groups 用户名
5. 权限管理
# 将用户添加到sudo组(赋予管理员权限)
sudo usermod -aG sudo 用户名
# 将用户添加到wheel组(在RHEL/CentOS中使用)
sudo usermod -aG wheel 用户名
6. 安全建议
定期更改密码,使用强密码(包含大小写字母、数字和特殊字符) 不要与其他人共享账户 及时删除不再使用的用户账号 定期检查系统中的用户列表 对于需要 sudo 权限的用户,建议通过 wheel 或 sudo 组进行管理 重要系统建议开启密码复杂度检查
配置 yum 源
yum源简介
yum源是Linux系统中的软件管理仓库,主要用于安装、卸载、自动升级rpm软件包等任务。yum(全称为Yellow Dog Updater, Modified)是一个在Fedora、RedHat、CentOS等Linux发行版中广泛使用的shell前端软件包管理器。它基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,自动处理包之间的依赖关系,一次安装所有依赖的软件包,无需管理员手动去安装每个rpm包。
注1:Redhat 8 以上dnf取代了yum,但是两者通用
dnf 是 yum 的下一代包管理工具,提供了更强大的功能和更好的性能。 dnf 在 RHEL 8 中成为默认的包管理工具,而 yum 仍然存在,但它是 dnf 的一个符号链接或兼容层。
注2: CentOS 和 Red Hat Enterprise Linux (RHEL) 的源在很大程度上是兼容的,因为 CentOS 是 RHEL 的一个免费开源克隆版本。然而,尽管它们共享相同的源代码和包管理系统,但在某些情况下,它们的源可能会有所不同。
CentOS 是 RHEL 的克隆 CentOS 是基于 RHEL 的源代码构建的,因此它们的包和软件库在很大程度上是相同的。CentOS 的目标是提供一个与 RHEL 完全兼容的免费替代品,因此大多数情况下,CentOS 的源与 RHEL 的源是通用的。 源的兼容性 包的兼容性: 大多数情况下,CentOS 的包与 RHEL 的包是兼容的。你可以在 CentOS 上使用 RHEL 的源,或者在 RHEL 上使用 CentOS 的源。更新频率: CentOS 的更新通常会稍微滞后于 RHEL,因为 CentOS 需要等待 RHEL 发布更新后才能进行相应的更新。 源的差异 官方支持: RHEL 的源由 Red Hat 官方支持,而 CentOS 的源由社区维护。因此,RHEL 的源可能会包含一些 CentOS 没有的专有软件或补丁。
安全更新: RHEL 的安全更新通常会比 CentOS 更快发布,因为 Red Hat 有专门的团队负责安全响应。第三方源: 如果你使用了第三方源(如 EPEL、Remi 等),这些源在 CentOS 和 RHEL 上可能会有所不同,尤其是在 RHEL 上,某些第三方源可能需要额外的配置或订阅。
内部源
公司内部一般都会自建yum源,作用如下。
可以向IT部门所要地址,配制方法与其他源方法一样。
加快软件包下载速度
节省外网带宽
确保软件包的安全性和一致性
适用于无法访问外网的环境
便于统一管理和控制软件包版本
阿里云源的作用
国内很多互联网公司也有提供yum源,阿里云比较主流。
提供比 RHEL 官方源更快的下载速度
无需订阅即可使用
提供更多的软件包选择
作为内部源的补充,提供内部源中没有的软件包
RHEL 8 仓库类型说明
BaseOS 仓库
包含核心操作系统组件
提供基本的系统功能
包括:
内核
系统工具
文件系统
基本网络组件
基础安全工具
AppStream 仓库
包含应用程序、运行时语言和数据库
支持模块化内容
包括:
编程语言(Python, PHP, Node.js 等)
数据库(MySQL, PostgreSQL 等)
Web 服务器(Apache, Nginx)
其他应用软件
其他常用仓库
PowerTools/CRB (CodeReady Builder)
提供开发工具和库
用于软件开发和编译
包含额外的开发依赖
EPEL (Extra Packages for Enterprise Linux)
社区维护的额外软件包
提供官方源中没有的软件
与基础系统兼容
RHSCL (Red Hat Software Collections)
提供最新版本的开发工具
包含多个版本的编程语言
需要 RHEL 订阅
配置yum源
1. 查看现有的内部源配置
cd /etc/yum.repos.d/
cat redhat8.repo
现有的内部源配置示例,也可能是空的:
[ali8]
name=ali8
baseurl=http://内部源ip/rhel-8-for-x86_64-baseos-rpms
enable=1
gpgcheck=0
2. 备份现有配置
mkdir -p /etc/yum.repos.d/bak
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/
3. 创建新的内部源配置
cat > /etc/yum.repos.d/local.repo << EOF
[ali8]
name=ali8
baseurl=http://内部源ip/rhel-8-for-x86_64-baseos-rpms
enabled=1
gpgcheck=0
EOF
4. 配置 CentOS 8 Stream 源
cat > /etc/yum.repos.d/centos.repo << EOF
[baseos]
name=CentOS Stream 8 - BaseOS
baseurl=https://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/
enabled=1
gpgcheck=0
[appstream]
name=CentOS Stream 8 - AppStream
baseurl=https://mirrors.aliyun.com/centos/8-stream/AppStream/x86_64/os/
enabled=1
gpgcheck=0
EOF