Linux运维老手也常踩的5个Unix环境搭建陷阱

误以为“安装完就安全”,忽视SELinux或AppArmor的默认策略。很多老手在CentOS/RHEL上禁用SELinux图省事,却不知这等于拆掉一层关键防护屏障。实际应通过audit2why分析拒绝日志,用semanage调整上下文,而非直接关闭——既保留安全机制,又适配业务需求。

忽略时区与UTC时间的系统级差异。服务器常设为UTC,但应用层(如Java、数据库)若读取本地时区又未显式配置,会导致日志时间错乱、定时任务偏移数小时。正确做法是统一使用timedatectl set-local-rtc false,并在服务配置中明确指定TZ=UTC或对应时区,避免跨服务时间漂移。

盲目信任包管理器自动升级内核却不验证启动项。yum update或apt upgrade可能安装新内核并设为默认,但若旧驱动模块未兼容新版本,重启后系统可能卡在grub或黑屏。必须在升级后手动执行grubby –set-default-index或更新grub.cfg,并用lsinitrd确认所需ko模块已打入initramfs。

AI生成内容图,仅供参考

将环境变量写入~/.bashrc用于全局服务。systemd服务、crontab或守护进程不加载用户shell配置,导致PATH缺失、JAVA_HOME未生效等问题。应将必要变量导出至/etc/environment(systemd场景)或服务Unit文件的Environment字段,确保上下文隔离下的环境一致性。

用root直接操作生产环境,忽略sudo权限细分与审计盲区。即使有auditd,若所有命令都走root账户,就无法精准溯源具体操作人。应基于RBAC创建运维角色组,用visudo分配最小权限命令(如/usr/bin/systemctl status ),并强制启用sudo -l与日志记录到/var/log/sudo-io,让每一次提权都可追溯、可回放。

由 dawei

发表回复