Ubuntu-18.10降级至18.04

Ubuntu-18.10降级至18.04

orzlee
2020-03-22 / 0 评论 / 2,558 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年03月17日,已超过1097天没有更新,若内容或图片失效,请留言反馈。

Ubuntu.jpg

前言

不知什么时候买的一台服务器,很久没有管它了,今天无聊上去看看,本想装个oh my zsh(有兴趣的同学可以看看我写的文章oh-my-zsh强大的zsh配置管理),在更新源(apt update)出现错误Failed to fetch http://xxx 404 Not Found,一部分官方源404了,这种错误是由于Ubuntu18.10已经停止维护了,18.10并不是LTS版本,已经停止维护了。

网上找了一通,基本上替换源为old-releases.ubuntu.com即可:

### 一定要备份啊
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo sed -i -r 's/([a-z]{2}\.)?archive.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list  
sudo sed -i -r 's/security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list 
sudo apt update

一般这样操作后可以继续使用当前Ubuntu版本了。

但是当前版本的Ubuntu已经停止更新维护了,索性还是降级算了。

降级Ubuntu至18.04LTS

1. 替换源代号

update-source-list.png
这些cosmicUbuntu18.10版本的代号,需要修改成bionic,用命令修改,不然头疼:

### 切记备份
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo sed -i 's/cosmic/bionic/g' /etc/apt/sources.list
2. apt软件包降级
sudo nano /etc/apt/preferences
### 粘贴以下信息
Package: *
Pin: release a=bionic
Pin-Priority: 1001
3. 更新

接下来更新软件源,升级

sudo apt update
sudo apt upgrade
sudo apt dist-upgrade

ubuntu-upgrade.png
出现警告很正常,不用管它,不是致命错误。
安装期间有些软件需要替换会堵塞询问,例如nginx,由于我有写小玩意在服务器,就不替换了,使用当前版本,具体看你的需求。默认选项是N,你也可以一路回车下去。
update-nginx.png

等待更新完成:
upgrade-done.png

最后查看当前版本信息:

cat /etc/os-release| grep -i version

show-version.png

到这里就成功啦!!!

还有些小问题

系统算是降级成功了,在执行apt update又出错了。
ubuntu-apt-error.png

一堆错误直接退出了。
snap包管理器,从ubuntu 16.04LTS就默认安装。在执行apt update也会执行snap包管理器的更新,反正我没用过,如果有需要那就删了再装吧。

### 删除snap
sudo rm -rf /etc/apt/apt.conf.d/20snapd.conf

结语

又折腾到十一点,降级之前装oh my zsh敲太快,执行了chsh -s /bin/zsh,然后发现服务器内存吃紧,索性升级了一下。这倒好,进不去系统了,登录后弹出,又要登录,死循环。

我以为密码错了,打开服务商控制台后ctrl+alt+del 然后 esc,选择第一个引导项输入e,在linux /boot/...这一行后面加上init=/bin/bash,ctrl +x,系统会启动命令行,修改密码passwd然后exit,重启进入系统,发现还是登录不上去。研究了半天,各种资料一顿查。

这种情况网上都说/.Xauthority文件权限问题,我是用root用户登录能有什么问题呢?
挂载Finnix系统,挂载服务器磁盘mount /dev/vda1 /mnt,上去看auth.log日志,sshd[1192]: User root not allowed because shell /bin/zsh does not exist 发现这行错误,这个zsh真是特别打眼的,就是它的锅,因为18.10版本已经过期,apt update都失败,我都没看就直接装apt install zsh,当然也失败了。而且还直接使用chsh -s /bin/zsh,把密码验证shell给改成zsh了。
改回来试试吧(此时我的环境是在挂载的Finnix系统中):

nano /mnt/etc/passwd

ubuntu-passwd-file.png

果不其然,改成root:x:0:0:root:/root:/usr/bin/bash,退出Finnix,移除Finnix,开机登录上去了。
累死了,不过又GET到新技能。

0
取消
扫码打赏
支付金额随意哦!

评论 (0)

取消