2024 年 12 月 3 日,服务器由于误操作被删了一些数据,重新整理服务器的时候遇到了一些问题,记录下来。
工作内容
卸载系统
需求
在双 Linux 系统下卸载其中一个。将其分配的磁盘删除并格式化。
解决方法
安装 gparted
进行可视化操作。选取设备,右键删除其分区即可。
注意,使用 gparted 的用户桌面系统必须是下载它的用户,否则无法可视化。会报错 can not open display
.
Linux 系统开机进入 Grub 界面怎么办
需求
安装或卸载双系统后,开机时会进入 Grub 命令行界面。
解决方法
- 输入
ls
查看都有哪些分区,例如出现(hd0) (hd0,gpt1) (hd0,gpt2)
等。 - 对每个分区依次输入
ls (hd0,gpt1)/boot/grub
查找哪个是启动分区。 - 例如找到启动分区是
(hd0,gpt2)
。 - 输入
set root=(hd0,gpt2)
。 - 输入
set prefix=(hd0,gpt2)/boot/grub
。 - 输入
insmod normal
,然后输入normal
即可正常启动。
启动后需要更新引导,步骤如下:
- 输入
sudo update-grub
。 - 输入
df -h
查询当前系统的引导分区,找到挂载点是boot/efi
的分区,例如为/dev/nvme0n1p1
。 - 输入
sudo grub-install /dev/nvme0n1p1
。
为用户创建桌面
需求
师兄要用桌面,但只有 cmcs232 用户有桌面。如果继续用该用户,则其他人用 sudo 还是可以影响到他
方案
需要给师兄创建一个新的用户,并且给这个用户添加一个桌面。
步骤
首先打开 /etc/gdm3/custom.conf
。
# 注释掉下面这部分
[daemon]
AutomaticLoginEnable = true
AutomaticLogin = cmcs232
# 添加下面这部分
[Seat:*]
autologin-user=xxx # xxx为用户名
为用户添加sudo权限
需求
创建的用户默认没有 sudo 权限,即不在 sudo 组里,不能使用 sudo 命令。
方案
要给他加上 sudo 权限就需要将其添加到 sudo 组里。
步骤
在 root 下使用 usermod -G sudo xxx
即可,xxx 是用户名。
sudo 权限其实就是给用户一次用 root 权限执行指令的机会,只有在 sudo 组里的用户可以有该权限。
在用 sudo 时需要输入自己用户的密码,注意并非 root 的密码,这就使得用户可以在不知道 root 密码的情况下使用其权限,这就是 sudo 存在的必要性。
后续工作
版本升级
我们服务器的版本是 Ubuntu 23.04,这不是一个长期支持版本,软件源可能会出现问题导致无法使用 apt install,这是因为不支持的版本会被归档,网址也会发生变化,可以参考这个网站更新 apt 源。
但最好的办法还是使用 LTS 版本的 Ubuntu,从 23.04 到 22.04 的跨版本升级有点困难,只是简单的使用 do-release-upgrade
会报错。可以参考这个问题中的回答进行升级。
扩容
需求
装机时没有采用 LVM 卷组,因此无法将新硬盘快速合并为一个大的存储空间。希望将新加入的磁盘与之前的磁盘一起创建一个 lvm 卷组,并挂载。
教训
以后为 Linux 系统分区的时候,还是有必要将根目录和 /home 分到不同的分区的。因为如果只分一个根目录的话,要无法对其挂载点的磁盘进行卸载、操作。
应该为根目录分一个合适的大小,然后将其他大部分空间分给 /home,这样的话有利于以后对 /home 进行扩容。
另外,如果对服务器空间不确定以后是否要进行扩容,最好一开始没有数据的时候就将其按照 lvm 方法进行分区。
可以参考这篇博客进行扩容。