怎样将 Debian 3.1 Sarge 升级到 4.0 Etch
Submitted by larry on Mon, 2007-04-09 15:34. Debian, etch, Sarge, 升级Debian 4.0 已经发布了,推荐你将系统升级到最新的版本。升级远程的 Debian 服务器只是小菜一碟。
我们现在的服务器很多都是在 Debian 3.1 Sarge 下建立。例如,典型的 Web 服务器包括下面的软件包:Apache、PHP、Postfix 和其他的邮件服务器软件、Iptables 防火墙和备份脚本以及 MySQL 5.x 等等。
过程
升级系统需要注意的几个要点步骤:
- 检查当前系统;
- 更新软件包列表;
- 更新发布;
- 更新 /etc/apt/sources.list 文件;
- 重启系统;
- 测试所有的程序是否工作。
备份系统
在升级你的 Debian 系统之前请确定做好了备份(我觉得应该是每天备份重要的数据):
- 用户数据,文件,邮件(/home, /var/www 等等)
- 重要的系统文件和保存在 /etc 下的配置文件
- MySQL 和其他的数据库备份
- 备份安装的软件包列表(为了重装/恢复所有的软件)
第一步:检查当前系统
/etc/debian_version 文件保存有当前 Debian 的版本号:
$ cat /etc/debian_version
输出为:
3.1
查找内核版本
$ uname -mrs
输出为
Linux 2.6.8-3-386 i686
第二步:更新软件包列表
使用 apt-get 命令:
# apt-get update
第三步:更新发布
使用 apt-get 命令的 dist-upgrade 选项。这将升级 Sarge 到 Etch。dist-upgrade 是 upgrade 的加强功能版本,会智能的处理一些新版本软件包的依赖关系。apt-get 有一个“聪明的”冲突解决系统,在发生冲突时它会尝试升级大多数重要的软件包而忽略一些不太重要的。
# apt-get dist-upgrade
升级过程会相当费时间。视升级安装的软件数和你的网络速度会花费十分钟到一个小时以上不等。
第四步:更新 /etc/apt/sources.list 文件
你需要手工来更新修改 Debian 安全更新源的配置行。这里估计是升级过程中的一个小 Bug,会下面的出错信息:
W: Conflicting distribution: http://security.debian.org stable/updates Release (expected stable but got sarge)
W: You may want to run apt-get update to correct these problems
编辑 /etc/apt/sources.list 文件:
# vi /etc/apt/sources.list
找到下面的行:
deb http://security.debian.org/ stable/updates main contrib
替换为:
deb http://security.debian.org/ etch/updates main contrib non-free
保存并关闭文件。再输入下面的命令:
# apt-get update
第五步:重启系统
这一步很简单,只是重新启动系统:
# reboot
第六步:确定所有的程序是否工作……
查看 Debian 现在的发布版本:
$ cat /etc/debian_version
输出:
4.0
确定所有服务是否正在运行,可以通过查看日志文件。
# netstat -tulpn
# tail -f /var/log/log-file-name
# less /var/log/dmesg
# top
....
...
....
使用 apt-key 命令管理 apt 软件包认证的密钥列表。软件包是使用这些密钥来进行真假认证的。请核对一下下面的 Etch 密钥:
# apt-key list
/etc/apt/trusted.gpg
--------------------
pub 1024D/2D230C5F 2006-01-03 [expired: 2007-02-07]
uid Debian Archive Automatic Signing Key (2006) <ftpmaster@debian.org>
pub 1024D/6070D3A1 2006-11-20 [expires: 2009-07-01]
uid Debian Archive Automatic Signing Key (4.0/etch) <ftpmaster@debian.org>
pub 1024D/ADB11277 2006-09-17
uid Etch Stable Release Key <debian-release@lists.debian.org>
如果发生了本地密钥的认证错误,请删除密钥文件。
# apt-key update
# apt-key list
最后检查下是否还有新的更新或安全更新需要操作:
# apt-get update
# apt-get upgrade
进一步的阅读
- 以上更新服务器的命令已经在三台不同的 Web 服务器测试过。Debian GNU/Linux 4.0(Etch)的发布说明中,关于英特尔 x86 平台有相应的 Debian 桌面系统附加的升级信息以及其他的故障处理说明。