Ubuntu20.04 更换3T机械硬盘操作流程


  电脑之前2T的机械硬盘磁道损坏(sudo apt update & upgrade之后出现了问题,重新开机后软件的logo特别大,肯定是显卡驱动出现了问题,但是电脑卡死,想重装显卡驱动都做不到,于是重装系统,但是由于磁道损坏,系统都重装不上Wu~~~~),磁盘扫描工具扫描之后发现机械硬盘中存在损坏的磁道,于是取下机械硬盘部分,仅用SSD固态重装了系统,重装系统成功。之后购入3T新机械硬盘,记录在Ubuntu20.04系统下的安装过程 (作为笔记,本文中不会展示结果图片,若需要图片,可直接点击最后的参考文献)。

一 遇到的问题

  下面问题的具体解决流程,详见下面的操作流程

  1. fdisk命令分区,获得的最大分区只有2T,空出800多G造成空间浪费。
      fdisk命令进行分区时,能够进行的最大分区只能是2T,具体原因没有深究,总之和磁盘分区格式MBR和GPT有关,当电脑磁盘容量超过2TB的时候,就需要采用GPT类型的磁盘分区(插句题外话:两种不同的磁盘分区类型也对应两种不同的引导方式:Legacy和UEFI(就是旧新两种不同的BIOS),两者的搭配分别是:MBR+Legacy, GPT+UEFI,现在电脑大部分都是后者)所以不采用fdisk命令改用parted命令。

  1. 分区后出现“分区1不从物理扇区边界开始 Partition 1 does not start on physical sec“问题
      用parted命令分区后,fdisk -l红字警告: 显示分区1不从物理扇区边界开始。网上有些教程说可以忽略该信息,不影响后续使用,但红色警告总是不好的,于是在分区时,改用mkpart primary 0% 100%命令进行分区。

  1. 将磁盘挂载到/home/username/work目录后,每次创建文件都需要sudo权限(vscode和pycharm中创建新文件失败)
      日常使用的数据和代码都存放在新安装的机械硬盘中,但是将分区挂载的到/home/username/work目录后,每次vim创建文件或者mkdir创建文件夹都需要sudo权限,在终端中倒是没什么,输入一次sudo密码也就解决了,但是在vscode和pycharm中创建新文件时,一直失败,需要解决。
      解决方法:ll命令输出发现/home/username/work目录的所有者和所在的group是root用户,而不是本用户,因此将目录的owner和group修改为本用户即可。

    修改目录的owner: sudo chown -R username /home/username/work
    修改目录的 group: sudo chgrp -R username /home/username/work
    其中-r表示对该目录下的文件递归执行该命令

二 操作流程

  1. 查看电脑所有磁盘和状态。

    sudo fdisk -l

    根据容量大小确定目标磁盘,本机找到的磁盘名称为:/dev/sdb

  2. 为新硬盘分区同时格式化硬盘 (图文详见参考文献2)。
    不要采用fdisk进行分区,fdisk分区最大只能分2TB,改用parted命令分区,命令流程如下:

    1. parted /dev/sdb  # 对dev/sdb磁盘进行分区
    2. p  # 查看该磁盘信息
    3. mklabel gpt  # disk label选择gpt格式
    4. y  # exit disk label will be destoryed, 问是否继续进行, 选择yes
    5. mkpart primary 0% 100%  # 磁盘分区
    6. quit  # 分区完成,退出
    

    一开始上面第4到6步中的第5步不是mkpart primary 0% 100%,而是以下命令:

    1. mkpart
    2. sdb1
    3. ext4
    4. 0%
    5. 100%
    6. Ingore
    7. quit 
    

    采用这样分区的结果就是上面问题2对应的 “分区1不从物理扇区边界开始” 问题,不要使用。
    分区完成后采用mkfs命令格式化分区: sudo mkfs -t ext4 /dev/sdb1

  3. 将分区挂载到对应目录并设置开机自动挂载。
      采用mount命令将分区挂载到对应目录上sudo mount /dev/sdb1 ~/data,mount命令格式为:sudo mount 需要挂载的分区 挂载目录。之后需要设置开机自动挂载,否则下次开机重启后又要挂载。
      首先查看分区的uuid:ls -l /dev/disk/by-uuid,我们的目标分区是以sdb开头的,所以可以配合grep命令:ls -l /dev/disk/by-uuid | grep sdb。之后备份原有的 /etc/fstab 文件:sudo cp /etc/fstab /etc/fstab.bak,将以下信息添加到/etc/fstab文件的最后:UUID=ea195de6-725c-4701-98c3-1fa6a44bc102 /home/username/work ext4 defaults 0 2 其中UUID为之前查询的uuid编号,后面为对应的挂载目录,最后的2表示不定期备份(1表示每天备份)代码综合如下:

    sudo mount /dev/sdb1 ~/data  # 分区挂载
    ls -l /dev/disk/by-uuid | grep sdb  # 查看分区的uuid
    sudo cp /etc/fstab /etc/fstab.bak  # 备份/etc/fstab文件
    
    # 将下面的信息添加到/etc/fstab文件的最后,使用时注意替换为自己的uuid和目录
    UUID=ea195de6-725c-4701-98c3-1fa6a44bc102 /home/username/work       ext4    defaults        0       1
    

  上面的添加的UUID信息中,第一个数字:0表示开机不检查磁盘,1表示开机检查磁盘;第二个数字:0表示交换分区,1代表启动分区(Linux),2表示普通分区。
  以后的某一天,如果这块磁盘又坏了,会存在开机异常的情况,此时需要进入BIOS,进入字符终端,sudo cp /etc/fstab.bak /etc/fstab 复原/etc/fstab文件即可,具体操作可上网查询。
4. 修改挂载目录所在的owner和group,若不是当前用户,修改为当前用户。
>修改目录的owner: sudo chown -R username /home/username/work
修改目录的 group: sudo chgrp -R username /home/username/work
其中-r表示对该目录下的文件递归执行该命令

三 参考文献

  1. Ubuntu 挂载新硬盘
  2. 磁盘挂载问题:Fdisk最大只能创建2T分区的盘,超过2T使用parted
  3. 分区1不从物理扇区边界开始 Partition 1 does not start on physical sec
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值