Featured image of post 记一次服务器重装系统

记一次服务器重装系统

背锅.jpg

流水碎碎念

TL; DR: 接锅了

情况就是服务器的系统烂了, 进不去了, 但里面的数据需要捞。

以下以一个 newbie 视角大致说一下干了什么。

备份数据

插入一个制作好的启动盘, F11, ctrl+alt+F2~6 尝试进入一个 tty, 先判断一下各种已知设备名分别是啥,挂一下原来盘, 然后捞原 root 的 home 目录下的数据即可:

1
2
3
4
5
6
7
lsblk
mkdir /mnt/oldroot /mnt/backup
mount /dev/sda1 /mnt/oldroot
# mkfs.ext4 /dev/sde1 看需不需要格了备份数据盘
mount /dev/sde1 /mnt/backup
mkdir /mnt/backup/home
rsync -aHAXv --progress /mnt/oldroot/home /mnt/backup/home

rsync

rsync 是一个 nb 的 cp, 支持 remote 和 local, 同时已经一致的不会再传, 还带保存 file 的各种 attribute, 包括用户和权限之类的。

Rsync is widely used for backups and mirroring and as an improved copy command for everyday use。

还有似乎需要注意最好保证文件系统类型(我这里刚好都是 ext4)一致,且有些文件可能需要权限才能传递,rsync 命令需要在 sudo 下执行。

要捞的可能还有一些原来的配置,比如你可以看看原来的

  • 显卡驱动版本 /mnt/oldroot//proc/driver/nvidia/version
  • 数据盘挂载位置 /mnt/oldroot/etc/fstab
  • 网络配置 /mnt/oldroot/etc/NetworkManager/system-connections 里的东西
  • 用户组 /mnt/oldroot/etc/group, /mnt/oldroot/etc/passwd

同样也可以备份记录一下, 方便你完全恢复原状。

重装系统

下 iso 文件花了比较久,rufus 刻起来倒是很快,分区类型新机器可能选 GPT 多一些,别的都是默认。

重启服务器,启动的时候按 F11, 直接开 install 就完了, 由于听老师说之前就是桌面版, 因而继续用桌面版, 一路上几乎不需要配置, 但由于装的是服务器,还是问了好几个傻逼问题,其实可能和普通机器并无任何区别,这时候原来的烂的系统盘就会被取代。

naive

我才知道服务器上不一定装的是 server 版的 ubuntu ?

服务器系统版本用的是 Ubuntu 18.04.6 LTS desktop 的。

恢复配置

用户

可以考虑按照这个模式写一个脚本, 做好原来 id 和 name 的对应即可。

1
2
3
groupadd -g gid <groupname>
useradd -s /bin/bash -u <uid> -g <gid> <username>
echo "username:password" | chpasswd

推荐一条一条加回去, /etc/gshadow 和 /etc/shadow 可能都是加盐加密过的, 直接复制应该会出问题。

网络

网络, ip 在之前备份的时候查看一下, 由于是桌面版大概只需要在 settings 里填一下 ip, 子网掩码和网关, 还有 nameserver, 然后 reboot 即可。

这样就能 ping 出去了。

恢复 home 和数据盘

这里要注意一下别像我一样最终嵌套太多 home,可能不太能对应上原来 /home/username 的形式,/mnt/home 可能需要改成 /mnt/home/home/,自己注意一下。

1
2
mount /dev/sde1 /mnt
rsync -aHAXv --progress /mnt/home /home

建立原来数据盘的挂载点

1
2
3
4
mkdir /data /data1
vim /etc/fstab
# 编辑 挂载信息, UUID 可以通过 blkid 查看
mount -a

显卡驱动

显卡驱动, 首要任务是能让大(zi)家(ji)跑实验。

首先是版本, 希望和之前尽可能一样(能用你就别动他)。 但我之前没经验没查看这个,也不记得之前的 driver version 了。

很小心的看了不少博客发现有不少坑, 感觉很麻烦。 各种各样的方式和 bug 太多了没个准信, 最后还是看了个日语的 blog,大概直接走 apt install 了。

1
2
3
ubuntu-drivers devices
sudo ubuntu-drivers install # 会按上面一个命令显示的recommend的版本给你装一个
sudo reboot

然后 nvidia-smi 就有了。

目前还没碰到别的问题, 碰到再修。

以上就是我干过的事情。。。。。。好像总共也没几条命令。。。。。。

挺简单的是吧.jpg

Licensed under CC BY-NC-SA 4.0
最后更新于 Apr 21, 2024 14:32 UTC
Built with Hugo
主题 StackJimmy 设计