LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2418|回复: 11

从Slackware 10.0升级到10.2

[复制链接]
发表于 2006-1-9 11:13:33 | 显示全部楼层 |阅读模式
在slackware linux中有没有什么简单的方法,让你Slackware 10.0升级到10.2?
就好比debian里面的dist upgrade.
发表于 2006-1-9 11:33:38 | 显示全部楼层
install slapt-get tools
edit /etc/slapt-get/slapt-getrc!change 10 to 10.2
slapt-get --update
slapt-get --dist-upgrade
################
刚刚写成--upgrade了,release升级改成--dist-upgrade
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-9 11:49:59 | 显示全部楼层
谢谢xiaoxindown,问题还没有完全展开

假设用户没有高速网络连接,只有slackware 10.2的光盘(或者更惨一点,只有ISO),如何做到升级
而不重装系统?
回复 支持 反对

使用道具 举报

发表于 2006-1-9 12:20:31 | 显示全部楼层
edit /etc/slapt-get/slapt-getrc!change 10 to 10.2
是可以指定用网络还是本地文件的
嫌麻烦,装个gslapt(slapt-get的图形界面)
在属性项里有安装源设置
mount slk10.2.iso /mnt/cdrom -o loop
#gslapt-->edit-->preferences-->add
file:///mnt/cdrom
#########################
slapt-get 和debian的apt-get操作几乎一样
Good Luck
BTW:请查看置顶,slk版的置顶绝对是全面完整的
回复 支持 反对

使用道具 举报

发表于 2006-1-9 12:38:17 | 显示全部楼层
iso 里面有一个文件就是专门介绍如何升级到10.2的,可参看。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-9 12:45:54 | 显示全部楼层
谢谢 shadkong, xiaoxindown

我升级完了后给大家一个报告
回复 支持 反对

使用道具 举报

发表于 2006-1-9 18:30:57 | 显示全部楼层
Post by yangray
谢谢 shadkong, xiaoxindown

我升级完了后给大家一个报告



期待报告中,希望写的详细点儿,因为我实在比较菜,辛苦了,谢谢
回复 支持 反对

使用道具 举报

发表于 2006-1-9 23:15:40 | 显示全部楼层
就用slapt-get 就行,基本没问题。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-12 09:04:39 | 显示全部楼层
升级成功了。下面我谈谈我的做法。
我基本按照Patrick Volkerding的《Slackware 10.1 to 10.2 Upgrade HOWTO》来升级的。这个文档就在Slackware Linux 10.2的光盘里,文件名叫UPGRADE.TXT。我因为没有高速网络连接,所以只能用10.2的ISO来进行升级。如果弟兄们装了宽带的话,还是用slapt-get装方便

我的思路是基本翻译一下那个文档,然后写一些我的做法想法。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-12 10:31:05 | 显示全部楼层

Slackware 10.1 to 10.2 Upgrade HOWTO

标题:Slackware 10.1 to 10.2 Upgrade HOWTO
著者:Patrick Volkerding
翻译:yangray
版本:1.0

[color="Red"](本人水平有限,难免有错,请大牛直接参考英文原版)

本文解释如何从Slackware 10.1版本升级至10.2版本。
[color="Red"](我的情况是10.0,看来也适用)

-----------------------------------------------------------------------------

在开始升级前,我强烈建议对原来的系统作一个备份,或者,如果不是整个系统,至少要备份/etc
目录(目录中保存系统级配置文件)。你会发现为了完成升级,自己会时不时来参考过去的一些配置文件。备份一下吧,要不就测试一下自己的人品:p

好了,现在所有的东西都安全备份了,让我们开始吧。:-)

要升级,首先你需要Slackware 10.2的软件包(package)。如果你有10.2安装光盘,那么就建一个目录,把安装光盘挂载上去,这样升级过程中就直接拿来用。

  1. mkdir /packages
  2. mount /dev/cdrom /packages
复制代码


如果你没有安装光盘[color="Red"](原文:软件包也可以不在光盘上),你也可以复制slackware目录(这个目录包含各个类别的软件包目录,通常在安装光盘上)到你文件系统的某个地方,比如/root/slackware/。其实最重要的是你自己要知道slackware的软件包放在那里。下面我们假设软件包都在 /root/slackware。[color="Red"](下面是详细步骤)

0.  把系统切换到单用户模式:

  1. telinit 1
复制代码


1.  升级你系统中glibc共享库[color="Red"](动态连接库)。这一步很重要,否则下面几步程序会出错[color="Red"](我觉得是因为10.2的程序是依赖于新的glibc动态连接库的,所以要先升级库,因为下面要用到新版本的pkgtool):

  1. upgradepkg /root/slackware/a/glibc-solibs-*.tgz
复制代码


2.  升级你系统的包管理工具(package tools):

  1. upgradepkg /root/slackware/a/pkgtools-*.tgz
复制代码


3.  安装sed。你的Slackware系统里应该已经安装sed了,但因为包管理工具要使用到她,最好(再)安装装一下保险一点:

  1. upgradepkg --install-new /root/slackware/a/sed-*.tgz
复制代码


4.  升级所有的其他东东(并且安装新的包)[color="Red"](高手也许觉得不必添加不必要的包,那么可以把下面的--install-new开关去掉):

  1. upgradepkg --install-new /root/slackware/*/*.tgz
复制代码


5.  确保你的系统能正常启动。如果你用LILO作为启动引导器,确保配置/etc/lilo.conf中的路径正确指向有效的内核文件,然后输入"lilo"重新安装LILO。[color="Red"](切忌一定要运行'LILO'来更新一下。我升级完了以后,内核从2.4.26升到了2.4.31,但是因为upgradepkg为内核文件vmlinuz-2.4.31作了一个vmlinz的连接,这样lilo.conf就可以不用改,因为lilo.conf中引导的内核名是vmlinuz。所以我一大意,就忘了运行LILO。结果重启后,内核还是2.4.26。但我看/boot里只有2.4.31的内核在那里。然后我运行了一下LILO就好了。我估计LILO载入内核,是直接使用硬盘的CHS参数来定位的。所以大家切记切记如果变更LILO相关的配置或者内核文件一定要运行LILO来更新引导记录)。如果你用的是启动软盘,你需要使用makebootdisk命令来建立一个新的启动软盘来引导新的内核。

6.  修正你的配置文件[color="Red"](用移植也许更确切)。这时/etc中的一些配置需要你格外关注。 你会发现系统中新升级的软件的配置文件带着一个.new的后缀名。你也许要根据你原来的配置文件信息把更改过的设置加入到新的配置文件之中,然后把新的配置文件替换回来[color="Red"](就是去掉.new的后缀,替换到旧的配置)。

你人品足够好??!!那么你可以试试下面这个小脚本来把所有的.new配置文件安装到/etc目录中。但如果你对默认的配置做过变动,把你的变动手工加入到新的配置文件还是无法避免。这个脚本运行完之后,旧的配置文件将被加上.bak后缀另行保存。不管怎样,这个脚本给了你一个很好的起点来移植旧的配置。
下面就是脚本:

  1. #!/bin/sh
  2. cd /etc
  3. find . -name "*.new" | while read configfile ; do
  4.   if [ ! "$configfile" = "./rc.d/rc.inet1.conf.new" \
  5.     -a ! "$configfile" = "./group.new" \
  6.     -a ! "$configfile" = "./passwd.new" \
  7.     -a ! "$configfile" = "./shadow.new" ]; then
  8.     cp -a $(echo $configfile | rev | cut -f 2- -d . | rev) \
  9.      $(echo $configfile | rev | cut -f 2- -d . | rev).bak 2> /dev/null
  10.     mv $configfile $(echo $configfile | rev | cut -f 2- -d . | rev)
  11.   fi
  12. done
复制代码


你也许要编辑你的/etc/X11/xorg.conf,把里面键盘驱动的名字从"Keyboard"改为"kbd"。我不知道为什么要这么改,但是确实要这样。[color="Red"](看来还有Patrick不清楚地东西:cool: )

7.  切换回多用户模式:

  1. telinit 3
复制代码


8.  卸载掉过时的软件包。
如果你到/var/log/packages看一下软件包列表

  1. ls -lt | less
复制代码


你会看到一些,旧的,过时的,不再被支持的软件包。你可以用'removepkg'来卸载掉她们。

9.  删除掉KDE的语言包。在上述升级过程中我们使用了--install-new开关,这会安装上所有的KDE语言包,大概会用掉500MB的空间。如果你只用美国英语,你可以像这样删除掉KDE的语言包:

  1. cd /var/log/packages
  2. removepkg kde-i18n* koffice-i18n*
复制代码


即使你需要某种语言包[color="Red"](比如大家通常要简体中文的),最好先把所有的语言包都删除掉,在回过头来用installpkg安装你需要的那个语言包。

到了这一步,你应该已经在使用Slackware Linux 10.2了。:-)

我希望所有人都能幸运完成升级[color="Red"](我也祝大家人品一天比一天好

---
Patrick Volkerding
volkerdi@slackware.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表