Shell脚本(5)
Shell脚本应用-初始化系统
WANG-A公司近期有新业务要上线,购买了一批服务器并批量安装了Linux系统。为节省工作量,运维人员需要通过正则表达式编写一个名为initalize.sh的系统初始化脚本,对多台服务器进行系统初始化。
可以运用技术:grep,sed,awk
配置本地yum源,方便后期安装。
锁定关键的系统文件,如/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow等文件。
清空/etc/issue,去除系统及内核版本登录前的屏幕显示。
定时清理/var/spool/clientmqueue/目录下的垃圾文件,防止Inodes节点被占满。
关闭selinux并设置系统语言编码为utf-8。
编写initalize.sh脚本文件
vi initalize.sh
#!/bin/bash
cdrom=/dev/cdrom
dir=/mnt
yum=/etc/yum.repos.d
issue=/etc/issue
lang=/etc/locale.conf
if [ ! -d $dir ]
then
mkdir -p $dir
fi
mount $cdrom $dir &>/dev/null
cd $yum
if [ ! -d $yum/repo/ ]
then
mkdir $yum/repo/
fi
mv *.repo repo
mv CentOS-Base.repo $yum
echo "[base] name=CentOS-Base baseurl=file:///mnt gpgcheck=0\enabled=1" > CentOS-Base.repo
yum clean all &>/dev/null
yum makecache &>/dev/null
chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow &>/dev/null
echo "" > $issue
rm-rf /var/spool/clientmqueue/
sed -i 's/enforcing/disabled/g' /etc/selinux/config
sed -i 's/LANG="zh_CN\.UTF-8"/LANG="zh_CN\.UTF-8"/' $lang
执行initalize.sh对系统进行初始化。
chmod +x initalize.sh
./initalize.sh
脚本是没问题的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构