Skip to content

LabServer管理

硬盘相关指令

按容量排序文件夹

du --max-depth=1 -h  | sort -g

# 排除目录 并只包含G以上的目录
du -sh /* --exclude="home"  --exclude="mnt"  | grep G | sort -g

挂载硬盘、查看UUID

# 查看UUID
lsblk -o name,mountpoint,size,FSTYPE,uuid

# 挂载硬盘
# 修改/etc/fstab
UUID="a7ea4386-3f15-41d0-b3f4-d03e8d6ad91c"     /mnt/data       ext4    defaults 0 0

# 挂载nfs
# 修改/etc/fstab
192.168.21.189:/mnt/WDB /mnt/WDB nfs rw

# mergerfs
# 修改/etc/fstab
/mnt/disk1:/mnt/disk2  /mnt/data fuse.mergerfs defaults,allow_other,use_ino,minfreespace=10G,fsname=mergerfs,ignorepponrename=true 0 0

安装gdu

# 磁盘分析
curl -L https://github.com/dundee/gdu/releases/latest/download/gdu_linux_amd64.tgz | tar xz
chmod +x gdu_linux_amd64
mv gdu_linux_amd64 /usr/bin/gdu

# 使用
gdu --ignore-dirs /mnt,/home,/dev,/sys,/proc /

关闭自动更新

  1. 配置文件

    sudo vi /etc/apt/apt.conf.d/10periodic
    
    # 修改以下内容
    APT::Periodic::Update-Package-Lists "0";
    APT::Periodic::Download-Upgradeable-Packages "0";
    APT::Periodic::AutocleanInterval "0";
    APT::Periodic::Unattended-Upgrade "0";
    
    sudo vi /etc/apt/apt.conf.d/20auto-upgrades
    
    # 修改以下内容
    APT::Periodic::Update-Package-Lists "0";
    APT::Periodic::Download-Upgradeable-Packages "0";
    APT::Periodic::AutocleanInterval "0";
    APT::Periodic::Unattended-Upgrade "0";
    

  2. 禁止内核更新

    # 禁用内核更新  
    sudo apt-mark hold linux-generic linux-image-generic linux-headers-generic  
    # 恢复内核更新  
    sudo apt-mark unhold linux-generic linux-image-generic linux-headers-generic
    


迁移系统盘

Ref

https://www.zhihu.com/question/42115108/answer/2295952514

总结一下大致的步骤:

  1. 制作启动盘,在电脑上插入新硬盘和启动盘,从启动盘上启动;
  2. 在新硬盘上新建对应分区;
  3. 使用dd命令迁移分区;
  4. 安装grub并更新配置;
  5. 拔掉旧硬盘尝试从新硬盘启动;
  6. 删除旧硬盘内容。

正文

本文的关键在于利用dd会复制UUID到新分区的特性,省略了UUID更改环节。

  1. 首先同样是需要用U盘做一个Ubuntu的启动盘,这个可以直接下载镜像写入到U盘当中即可,将新硬盘和启动盘插入电脑,从启动盘上启动;
  2. 分区的建立需要参考旧硬盘分区,例如我的旧硬盘只有两个关键分区,一个是启动分区/boot/efi,一个是根目录分区/,所以在新硬盘上新建分区时,就直接创建这两个分区,一般要保证根目录分区/在新硬盘上的大小要比旧硬盘根目录分区/大一些,否则可能会发生复制错误,特别是你的旧硬盘塞得特别满的情况下;
  3. 创建好分区后,使用dd命令迁移分区
    sudo su
    
    # 旧硬盘/boot/efi在/dev/sdb2上,新硬盘放到/dev/sda1
    dd if=/dev/sdb2 of=/dev/sda1
    
    # 旧硬盘/在/dev/sdb3上,新硬盘放到/dev/sda2
    dd if=/dev/sdb3 of=/dev/sda2
    
  4. 分区迁移完成之后,在新分区上安装grub并更新配置
    sudo su
    
    # 挂载新分区
    mount /dev/sda2 /mnt
    mount /dev/sda1 /mnt/boot/efi
    
    # 挂载虚拟文件系统
    mount -o bind /dev /mnt/dev
    mount -o bind /proc /mnt/proc
    mount -o bind /sys /mnt/sys
    
    # 切换根目录为新分区的/
    chroot /mnt
    
    # 由于dd命令已经复制了UUID到新分区,所以实际上不需要更改配置文件的UUID
    
    # 安装grub到新分区
    grub-install /dev/sda1
    
    # 更新grub
    update-grub
    
    # 同步
    sync
    
    # 退出挂载
    exit
    umount /mnt/dev
    umount /mnt/sys
    umount /mnt/proc
    umount /mnt/boot/efi
    
    # 关机
    shutdown
    
  5. 将旧硬盘拔除,尝试从新硬盘启动,验证是否成功;
  6. 使用启动盘删除旧硬盘内容。