|
Slackware 升级 12.2 => 13.0
1. 备份
最好全盘备份,最差也要备份/etc目录
2. 取得升级文件
mkdir /packages
mount /dev/cdrom /packages
slackware是最基本目录
3. 进入单用户
telinit 1
4. 升级实用包
upgradepkg /root/slackware/a/pkgtools-*.tgz
upgradepkg /root/slackware/a/tar-*.tgz
installpkg /root/slackware/a/xz-*.tgz
upgradepkg /root/slackware/a/findutils-*.txz
5. 升级 glibc共享库
upgradepkg /root/slackware/a/glibc-solibs-*.t?z
6. 升级其他的包
upgradepkg --install-new /root/slackware/*/*.t?z
或者
#!/bin/sh
for dir in a ap d e f k kde l n t tcl x xap y ; do
( cd $dir ; upgradepkg --install-new *.t?z )
done
7. 删除不要的包
ls -lt | less
removepkg
8. 修复配置文件
/etc目录下,具有.new的文件是新安装的配置文件,你需要将老的配置信息写入到新的配置文件
使用这个
#!/bin/sh
cd /etc
find . -name "*.new" | while read configfile ; do
if [ ! "$configfile" = "./rc.d/rc.inet1.conf.new" \
-a ! "$configfile" = "./rc.d/rc.local.new" \
-a ! "$configfile" = "./group.new" \
-a ! "$configfile" = "./passwd.new" \
-a ! "$configfile" = "./shadow.new" ]; then
cp -a $(echo $configfile | rev | cut -f 2- -d . | rev) \
$(echo $configfile | rev | cut -f 2- -d . | rev).bak 2> /dev/null
mv $configfile $(echo $configfile | rev | cut -f 2- -d . | rev)
fi
done
还有这2个文件可能也要处理
/usr/man/man.conf.new
/usr/share/vim/vimrc.new
9. 假如使用非英语的KDE
upgradepkg --install-new k*<your KDE locale>*t?z
10. 在重启前,确保kernel已被更新
检查 /etc/lilo.conf 确保指向真确的kernel
lilo 重建引导
11. 返回多用户
telinit3
12 .重启
reboot |
|