最新的Debian stable 9.0 (stretch)已经在前天晚上(6月17日)发布了.
所以我们来升级一下. 从老的稳定版jessie 8.8升级到最新的稳定版stretch 9.0
升级前阅读官方升级文档
https://www.debian.org/releases/stretch/armel/release-notes/按照说明备份
- 主要还是各种环境, 数据库, 开发语言, 个人的.bashrc, .profile, .conf, .cnf这些
- 还有一些alias, 以及重要的数据备份
- 把 jessie 8.8更新到最新后重启
apt-get update && apt-get upgrade -y
- 修改源地址, 我用的163的源, 你们看速度, 可以用ustc, 和官方美国源
vim /etc/apt/sources.list
:%s/jessie/stretch/gdeb http://mirrors.163.com/debian/ stretch main non-free contrib
deb http://mirrors.163.com/debian/ stretch-updates main non-free contrib
deb http://mirrors.163.com/debian/ stretch-backports main non-free contrib
deb-src http://mirrors.163.com/debian/ stretch main non-free contrib
deb-src http://mirrors.163.com/debian/ stretch-updates main non-free contrib
deb-src http://mirrors.163.com/debian/ stretch-backports main non-free contrib
deb http://mirrors.163.com/debian-security/ stretch/updates main non-free contrib
deb-src http://mirrors.163.com/debian-security/ stretch/updates main non-free contrib
- 开始升级
apt-get update && apt-get dist-upgrade -y
漫长的等待, 中间会提示问你是否需要重新配置一些配置文件, 比如/etc/sysctl.conf, 开发语言的, 数据库的, vim的, ssh的等. 注意有些配置如果选择覆盖后, 会导致你之前的设置就作废了.
选Y
- 注意
- 有些关键的配置需要提前备份或者做好对比.
- sshd的配置需要备份好. 建议保留之前的配置. 以免升级完覆盖后, 如果你之前修改了sshd的配置导致登录失败.
- vim的路径成了vim80. 其它apache, php类似
- virtualbox 之类的软件需要去debian网站找下stretch的sources.list, 添加进去重新更新才行.
- mysql数据库会和mariaDB同时共存产生冲突.
- 升级后有些小软件会有丢失情况. 字体可能需要重新配置.
- git 的gnutls_handshake() failed:的问题, 可以参考官方的mailing list
apt-get install build-essential fakeroot dpkg-dev
mkdir /tmp/git-openssl
cd /tmp/git-openssl
apt-get source git
apt-get build-dep git
apt-get install libcurl4-openssl-dev
dpkg-source -x git_2.11.0-3.dsc
cd git_2.11.0-3
编辑 debian/control, 替换 libcurl4-gnutls-dev 为 libcurl4-openssl-dev
dpkg-buildpackage -rfakeroot -b
dpkg -i ../git_2.11.0-3_amd64.deb