系统管理篇(4)-软件包安装管理
系统管理篇(4)
一、软件安装
1. rpm包
包管理器是⽅便软件安装、卸载,解决软件依赖关系的重要⼯具
- CentOS、RedHat 使⽤ yum 包管理器,软件安装包格式为 rpm
- rpm 包格式
- vim-common-7.4.10-5.el7.x86_64.rpm
- 软件名称 软件版本 系统版本 平台
- rpm命令
rpm -qa # 查询软件包
rpm -i # 安装软件包
rpm -e # 卸载软件包
- rpm 包的问题
- 需要⾃⼰解决依赖关系
- 软件包来源不可靠
2. yum安装
常用yum源
- CentOS yum 源 http://mirror.centos.org/centos/7/
- 国内镜像 https://developer.aliyun.com/mirror/
yum 配置⽂件
/etc/yum.repos.d/xxx.repo
下载repo文件
mv /etc/yum.repos.d/* /mnt curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
repo文件基本格式
[centos]
name=centos
baseurl=http://172.20.21.32/centos7_9/ # 可以采用http或者ftp
enabled=1
gpgcheck=0 # 若为1,还需要指定gpgkey
- 常用选项
- install 安装软件包
- remove 卸载软件包
- list| grouplist 查看软件包
- update 升级软件包
3. 编译安装
Nginx是一款高性能的web服务器和反向代理软件,以此为例学习编译安装软件的基本步骤。
- 安装 Nginx 依赖包
yum -y install gcc make # 编译器和构建工具
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel
- 编译安装 Nginx
# 解压源代码文件
tar zxvf nginx-1.24.0.tar.gz
# 进入解压目录
cd nginx-1.24.0
# 配置环境
./configure --prefix=/usr/local/nginx
# 编译安装
make && make install
- 启动 Nginx
/usr/local/nginx/sbin/nginx
- 设置Nginx自动启动
vi /lib/systemd/system/nginx.service # 可以复制sshd.service修改
# 编辑如下内容
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
systemctl enable nginx.service
二、内核升级
1. 内核版本查看
uname –r
2. yum升级内核
# 升级内核版本
yum install kernel-3.10.0
# 也可以使用epel源
yum install -y epel-release
yum install kernel # 会自动安装epel源中的最新版本
# 升级已安装的其他软件包和补丁
yum update
3. 源代码编译安装内核
tar xvf linux-6.1.28.tar.xz -C /usr/src/kernels/
# 生成配置文件
# 先复制现有的配置
cd /boot/
cp config-内核版本-平台 /usr/src/kernels/linux-6.1.28/.config
cd /usr/src/kernels/linux-6.1.28/
make menuconfig # 如果提示缺少软件,按提示进行安装即可
# 以安装ntfs支持为例
上下键选择"File systems" ->(按回车) "DOS/FAT/EXFAT/NT Filesystems" ->(按回车) "NTFS file system support"
按空格键选中后再选择"NTFS write support"按空格选中
左右键选择"< 保存 >",按默认配置保存
最后退出menuconfig
# 清除认证文件
vi .config
# 找到CONFIG_SYSTEM_TRUSTED_KEYS
CONFIG_SYSTEM_TRUSTED_KEYS = ""
# 确定用于编译的cpu数,可提升编译速度
lscpu
make -j2 all # 2为cpu个数,不能超过服务器cpu个数,磁盘空间至少要有10g空闲
# 如果缺少perl,还需安装perl
yum install -y perl
export LC_ALL=C
# 安装
make modules_install
make install
三、grub配置
1. 基本概念
grub(GrandUnified Boot Loader)是有名的内核引导程序。
2. 配置文件
- /etc/default/grub
- /etc/grub.d/
- /boot/grub2/grub.cfg
- grub2-mkconfig -o /boot/grub2/grub.cfg
3. grub配置应用
- 使⽤单⽤户进⼊系统(忘记 root 密码)
系统启动时按"e",编辑grub
找到"linux 内核信息 root=根挂载分区 ro ...", 修改并添加参数"rd.break"
Ctrl + x 重新启动
# 现在进入内存虚拟系统
# 以可读可写方式重新挂载根目录
mount -o remount,rw /sysroot
chroot /sysroot
echo 123456 | passwd --stdin root
# 注意需要关闭selinux,否则可能修改后无法登录系统
# 退回内存虚拟系统后重启
exit
reboot
四、常见的安全软件
1. SELinux
# 参看状态
getenforce
# 临时关闭
setenforce 0
# 永久关闭
vi /etc/selinux/config
# 修改 SELINUX=enforcing
SELINUX=disabled
重启系统后生效。
2. 防火墙
# 参看状态
systemctl status firewalld
# 临时关闭
systemctl stop firewalld
# 永久关闭
systemctl disable firewalld
yum clean all
yum makecache