当前位置: 代码迷 >> 综合 >> Debian Stable (Jessie 8.8) 升级到最新的stable (stretch 9.0)
  详细解决方案

Debian Stable (Jessie 8.8) 升级到最新的stable (stretch 9.0)

热度:41   发布时间:2023-12-08 02:58:46.0

最新的Debian stable 9.0 (stretch)已经在前天晚上(6月17日)发布了.

所以我们来升级一下. 从老的稳定版jessie 8.8升级到最新的稳定版stretch 9.0

  • 升级前阅读官方升级文档
    https://www.debian.org/releases/stretch/armel/release-notes/

  • 按照说明备份

    1. 主要还是各种环境, 数据库, 开发语言, 个人的.bashrc, .profile, .conf, .cnf这些
    2. 还有一些alias, 以及重要的数据备份
    3. 把 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
升级完成

  • 注意
    1. 有些关键的配置需要提前备份或者做好对比.
    2. sshd的配置需要备份好. 建议保留之前的配置. 以免升级完覆盖后, 如果你之前修改了sshd的配置导致登录失败.
    3. vim的路径成了vim80. 其它apache, php类似
    4. virtualbox 之类的软件需要去debian网站找下stretch的sources.list, 添加进去重新更新才行.
    5. mysql数据库会和mariaDB同时共存产生冲突.
    6. 升级后有些小软件会有丢失情况. 字体可能需要重新配置.
    7. 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
  相关解决方案