在国产化替代的大潮中,中标麒麟(NeoKylin)作为党政、金融、能源等关键行业的主力操作系统,装机量逐年攀升。然而,习惯了 Windows 或 Ubuntu 的运维人员第一次接触麒麟时,常被“软件怎么卸”“补丁为何装不上”“U 盘乱码”这类基础问题卡住。笔者把近期在麒麟产线踩过的坑,浓缩成一篇“小抄”,全文围绕“卸载软件”这一核心需求展开,顺带把 5 个最高频的关联故障一并打包,力求“一篇顶五篇”,复制粘贴即可用。
一、卸载软件:三条路线,按场景选用
麒麟的“软件”概念分三类:RPM 包、DEB 包、源码自编译。不同来源,卸载姿势完全不同。
RPM 路线(中标麒麟默认)
1. 先查准包名
rpm -qa | grep -i 软件名关键词
2. 卸载(保留配置文件)
sudo rpm -e 包名
3. 连配置文件一起删
sudo rpm -e --nodeps 包名 # 慎用,会破坏依赖
4. 如提示“被 xxx 依赖”,先卸依赖或统一批量卸
sudo rpm -e --test 包名 # 干跑,看依赖关系
sudo yum remove 包名 # 自动解依赖,推荐
DEB 路线(银河麒麟桌面版)
sudo dpkg -l | grep 关键词
sudo apt remove 包名 # 保留配置
sudo apt purge 包名 # 连配置一起删
源码路线(/usr/local 下的“野包”)
源码安装时一般没有 rpm 数据库记录,官方没提供 uninstall 脚本就只能“人肉删”。
找到安装清单
cat /usr/local/软件名/install_manifest.txt 2>/dev/null
按清单删除
sudo xargs rm -vf < install_manifest.txt
再顺手删残留库
sudo ldconfig
二、5 个“卸载周边”高频故障与速解
问题 1:想回滚到“刚装机”状态,却不知道系统到底哪天装的?
速解:把根文件系统创建时间近似当成装机时间。
sudo tune2ls -l /dev/sda1 | grep "Filesystem created"
输出示例:Filesystem created: Mon Nov 20 09:17:36 2023
问题 2:kylin-update-manager 在线打补丁,进度条卡 99%?
速解:三步定位
看网络
ping update.cs2c.com.cn
cat /etc/resolv.conf # DNS 是否 114.114.114.114 或内网 DNS
手动拉一次
sudo kylin-update-manager -auto > /tmp/update.log 2>&1
根据日志关键词“Failed to download”“GPG signature”再定向排障,常见是仓库证书过期或代理没配用户名密码。
问题 3:U 盘手动 mount 后,中文目录全是“???”?
速解:指定字符集
sudo mount -o iocharset=utf8,umask=000 /dev/sdb1 /mnt
若源盘是 NTFS,建议用
sudo mount -t ntfs-3g -o locale=zh_CN.UTF-8,umask=0222 /dev/sdb1 /mnt
问题 4:能否把 /dev/sdb1、/dev/sdc1 同时挂到 /opt?
速解:技术上可行,但逻辑上“后来者居上”,只能看到最后挂载的分区;卸载一个就露出前一个。想合并空间请用 LVM 或 mergerfs,别直接叠挂载。
问题 5:df -h 一看 / 分区 100%,系统提示“磁盘空间不足”,连 root 都登录不了?
速解:
重启到单用户模式(grub 界面按 e,在 linux16 行末加 single)
清三大“垃圾站”
sudo rm -rf /tmp/*
sudo journalctl --vacuum-time=3d
sudo find /var/log -type f -name ".log." -mtime +7 -delete
若仍不够,临时把大目录迁徙到新分区:
rsync -a /opt/ /mnt/newdisk/
mount --bind /mnt/newdisk /opt
然后写 /etc/fstab,重启生效。
如果 / 是 LVM,直接在线扩容:
pvcreate /dev/sdd1
vgextend kylin-vg /dev/sdd1
lvextend -L +50G /dev/kylin-vg/root
resize2fs /dev/kylin-vg/root
三、一条命令总结
卸载软件最干净、最省心的办法:
sudo yum remove 包名 && sudo yum autoremove
或桌面版
sudo apt purge 包名 && sudo apt autoremove
四、写在最后
中标麒麟的“坑”并不深,只是资料太散。把 RPM/DEB 两条包管理机制厘清,再记住 tune2fs、kylin-update-manager、mount iocharset、LVM 扩容这四板斧,90% 的运维场景都能 5 分钟闭环。下次再有同事问“麒麟怎么卸载软件”,直接把这篇文章甩给他,足矣。