PXE安装麒麟Kylin后,我用这个脚本搞定了软件源、远程桌面和sudo免密
PXE安装麒麟Kylin后的高效配置脚本实战指南
当你通过PXE完成麒麟Kylin系统的无人值守安装后,系统往往处于"毛坯房"状态——基础框架有了,但离真正的生产环境还有距离。本文将分享一个名为.kylin-post-actions的神奇脚本,它能帮你一键完成从"毛坯"到"精装"的系统优化。
1. 为什么需要安装后配置脚本
PXE安装虽然自动化程度高,但默认配置往往无法满足实际生产需求。常见痛点包括:
- 软件源问题:默认源可能速度慢或不稳定
- 远程管理缺失:缺乏便捷的远程桌面支持
- 权限管理繁琐:频繁输入sudo密码影响效率
- 网络配置异常:PXE安装后可能出现网络接口问题
.kylin-post-actions脚本正是为解决这些问题而生。它会在系统安装完成后自动执行,像一位细心的管家,帮你完成各种繁琐的配置工作。
2. 脚本核心功能解析
2.1 软件源优化配置
国内用户最迫切的需求往往是替换软件源。脚本中相关部分如下:
#!/bin/bash rm -rf /etc/apt/sources.list.d/* cat > /etc/apt/sources.list <<EOF deb http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1 main restricted universe multiverse deb http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-2303-updates main restricted universe multiverse deb http://archive2.kylinos.cn/deb/kylin/production/PART-V10-SP1/custom/partner/V10-SP1 default all EOF这段代码做了三件事:
- 清理原有源配置
- 设置官方稳定源
- 添加合作伙伴源
提示:根据实际地理位置,可替换为最近的镜像源以提升下载速度
2.2 XRDP远程桌面配置
实现Windows远程连接的关键配置:
# 解决xrdp权限问题 chmod -R a+x /etc/ssl/private chmod -R a+r /etc/ssl/private chmod a+r /etc/ssl/private/ssl-cert-snakeoil.key # 安装必要组件(需提前放入安装介质) dpkg -i /opt/third/xrdp*.deb dpkg -i /opt/third/xorgxrdp*.deb配置完成后,Windows用户可直接使用远程桌面连接(mstsc)访问麒麟系统。
2.3 sudo免密码设置
为特定用户(如kylin)设置sudo免密码:
echo "kylin ALL=(ALL:ALL) NOPASSWD:ALL" >> /etc/sudoers注意:此设置会降低安全性,仅建议在受控环境中使用
3. 常见问题解决方案
3.1 网络接口配置异常
PXE安装后可能出现网络接口丢失问题,脚本通过以下方式修复:
mv /opt/interfaces /etc/network/ systemctl restart networking3.2 SSH服务异常
缺少密钥文件会导致SSH服务无法启动,修复命令:
dpkg-reconfigure openssh-server3.3 自动登录配置
为开发环境配置自动登录:
cat > /usr/share/lightdm/lightdm.conf.d/60-kylin.conf <<EOF [SeatDefaults] autologin-user=kylin user-session=mate greeter-show-manual-login=true EOF4. 脚本高级定制技巧
4.1 模块化脚本结构
建议将脚本分为几个功能模块:
.kylin-post-actions ├── 01-base.sh # 基础配置 ├── 02-network.sh # 网络优化 ├── 03-remote.sh # 远程访问 └── 04-security.sh # 安全设置通过这种结构,可以更灵活地启用或禁用特定功能。
4.2 条件执行判断
添加环境判断,使脚本更智能:
# 仅当是ARM架构时执行 if [ "$(uname -m)" = "aarch64" ]; then echo "Running on ARM platform" # ARM特定配置 fi4.3 日志记录功能
添加执行日志记录:
exec > >(tee /var/log/kylin-post-actions.log) exec 2>&1 echo "$(date) - 开始执行配置脚本"5. 安全注意事项
虽然自动化配置提高了效率,但需注意以下安全风险:
- sudo免密码:仅限可信环境使用
- 自动登录:不适用于多用户环境
- 脚本权限:确保脚本不会被未授权修改
建议生产环境中:
- 为脚本添加校验和检查
- 定期审计配置变更
- 对敏感操作添加确认提示
read -p "确认要设置sudo免密码吗?(y/n)" -n 1 -r echo if [[ $REPLY =~ ^[Yy]$ ]]; then echo "kylin ALL=(ALL:ALL) NOPASSWD:ALL" >> /etc/sudoers fi通过合理使用.kylin-post-actions脚本,你可以将PXE安装后的配置时间从几小时缩短到几分钟。这个脚本就像一把瑞士军刀,集成了系统优化所需的各类工具,让麒麟系统真正开箱即用。
