Appearance
第14章:Linux系统优化
14.1 清理系统缓存、无用软件(释放磁盘空间)
清理系统缓存
清理页面缓存、目录项和inode缓存:
bash$ sudo sync $ sudo echo 3 > /proc/sys/vm/drop_caches清理用户缓存:
bash$ rm -rf ~/.cache/*清理浏览器缓存:
- Chrome:
~/.cache/google-chrome/ - Firefox:
~/.cache/mozilla/firefox/
- Chrome:
清理无用软件
Ubuntu/Debian系统:
bash# 清理不再需要的依赖包 $ sudo apt autoremove # 清理已下载的包文件 $ sudo apt clean # 清理部分已下载的包文件 $ sudo apt autocleanCentOS/RHEL系统:
bash# 清理缓存 $ sudo yum clean all # 清理无用的包 $ sudo package-cleanup --oldkernels
清理日志文件
清理旧日志文件:
bash$ sudo find /var/log -name "*.log.*" -delete压缩大日志文件:
bash$ sudo gzip /var/log/*.log限制日志文件大小:
- 编辑
/etc/logrotate.conf文件配置日志轮转
- 编辑
清理临时文件
清理/tmp目录:
bash$ sudo rm -rf /tmp/* $ sudo rm -rf /var/tmp/*设置tmp目录自动清理:
- Ubuntu/Debian:系统会自动清理
- CentOS/RHEL:配置
/etc/cron.daily/tmpwatch
14.2 关闭无用开机自启服务(提升系统速度)
查看已启用的服务
查看所有已启用的服务:
bash$ sudo systemctl list-enabled查看启动耗时:
bash$ systemd-analyze blame
禁用无用服务
- 禁用不需要的服务:bash
# 禁用蓝牙服务 $ sudo systemctl disable bluetooth # 禁用打印服务 $ sudo systemctl disable cups # 禁用音频服务(服务器) $ sudo systemctl disable pulseaudio # 禁用防火墙(仅测试环境) $ sudo systemctl disable firewalld
常见可禁用的服务
| 服务名称 | 功能 | 适用场景 |
|---|---|---|
| bluetooth | 蓝牙服务 | 无蓝牙设备的服务器 |
| cups | 打印服务 | 无打印机的服务器 |
| pulseaudio | 音频服务 | 无音频设备的服务器 |
| avahi-daemon | 网络服务发现 | 不需要网络发现的环境 |
| NetworkManager | 网络管理 | 静态网络配置的服务器 |
| wpa_supplicant | WiFi管理 | 无WiFi的服务器 |
14.3 防火墙基础配置(firewalld、ufw)
firewalld(CentOS/RHEL)
查看防火墙状态
bash
$ sudo systemctl status firewalld
$ sudo firewall-cmd --state启动/停止/重启防火墙
bash
$ sudo systemctl start firewalld
$ sudo systemctl stop firewalld
$ sudo systemctl restart firewalld开放端口
bash
# 开放80端口(HTTP)
$ sudo firewall-cmd --add-port=80/tcp --permanent
# 开放443端口(HTTPS)
$ sudo firewall-cmd --add-port=443/tcp --permanent
# 开放22端口(SSH)
$ sudo firewall-cmd --add-port=22/tcp --permanent
# 重新加载配置
$ sudo firewall-cmd --reload查看已开放的端口
bash
$ sudo firewall-cmd --list-portsufw(Ubuntu/Debian)
查看防火墙状态
bash
$ sudo ufw status启用/禁用防火墙
bash
$ sudo ufw enable
$ sudo ufw disable开放端口
bash
# 开放80端口(HTTP)
$ sudo ufw allow 80/tcp
# 开放443端口(HTTPS)
$ sudo ufw allow 443/tcp
# 开放22端口(SSH)
$ sudo ufw allow 22/tcp查看已开放的规则
bash
$ sudo ufw status verbose防火墙配置最佳实践
- 只开放必要的端口:根据服务需求开放相应端口
- 使用服务名称而非端口号:如
sudo ufw allow ssh - 配置默认策略:默认拒绝入站连接,允许出站连接
- 定期检查防火墙规则:确保规则符合安全要求
实战练习:系统优化
清理系统缓存:
bash$ sudo sync $ sudo echo 3 > /proc/sys/vm/drop_caches清理无用软件:
- Ubuntu/Debian:bash
$ sudo apt autoremove $ sudo apt clean - CentOS/RHEL:bash
$ sudo yum clean all
- Ubuntu/Debian:
清理临时文件:
bash$ sudo rm -rf /tmp/* $ sudo rm -rf /var/tmp/*查看已启用的服务:
bash$ sudo systemctl list-enabled禁用无用服务:
bash$ sudo systemctl disable bluetooth $ sudo systemctl disable cups配置防火墙:
- Ubuntu/Debian:bash
$ sudo ufw enable $ sudo ufw allow ssh $ sudo ufw allow http $ sudo ufw allow https - CentOS/RHEL:bash
$ sudo systemctl start firewalld $ sudo firewall-cmd --add-port=22/tcp --permanent $ sudo firewall-cmd --add-port=80/tcp --permanent $ sudo firewall-cmd --add-port=443/tcp --permanent $ sudo firewall-cmd --reload
- Ubuntu/Debian:
查看系统启动耗时:
bash$ systemd-analyze blame
通过学习系统优化,你将能够清理系统垃圾,释放磁盘空间,关闭无用服务提升系统速度,配置防火墙提高系统安全性,使Linux系统更加高效、稳定地运行。
