材料:ubuntu18.04 新购买4T机械硬盘
查找到网上有很多挂载教材,不要着急采用。先判断自己的硬盘是否大于2T。不超过2T,可以选择fdisk进行分区;超过2T,可以用parted命令或gparted软件进行分区。
整个步骤为:分区 --> 格式化 --> 挂载
1硬盘分区
参考https://blog.csdn.net/wenfanwu/article/details/102477706
(1)先查看系统中存在的硬盘和分区情况,下述命令会显示出当前系统下的所有硬盘,无论是否挂载。
ls /dev/sd*
(2) 查看已挂载的分区,避免后续出错,需确认要挂载的分区尚未挂载。下述命令会显示已挂载的分区。
df -hl
(3) 使用parted工具处理硬盘 sdc(替换为对应的硬盘)
sudo parted /dev/sdc
进入parted工具后输入print会提示无法识别该硬盘(unrecogonised disk label),需要输入以下命令先建立gpt表
mklabel gpt
此时再输入print就会看到sdc硬盘内存为4001GB;然后输入下述命令来请求一个指定容量为4001GB的分区
mkpart primary 0KB 4001GB
接下来会提示Yes/No?回答y;提示Ignore/Cancel?回答i
结束后可以再次输入print查看sdd硬盘的分区情况,最后输入quit退出parted工具即可完成硬盘分区。
2 格式化
将新建分区格式化为ext4格式,上一个步骤仅划分一个分区sdc1
sudo mkfs -t ext4 /dev/sdc1
可能会出现以下情况:
/dev/sdc1 未对齐,偏移了xxxx个字节。
这可能导致性能下降,建议重新进行分区
尝试用gparted进行重新分区,好像也没有解决掉。然后某大神告诉我对机械硬盘没啥影响,这个问题就搁置了。
3 挂载
(1)创建一个目录,将磁盘挂载到这里,如/home/admin123/GZA
(2)然后将这个分区挂载到制定位置
sudo mount -t ext4 /dev/sdc1 /home/admin123/GZA
我在使用这个命令时,始终不成功。则采用以下方式解决:
先查看分区的UUID号
sudo blkid /dev/sdc1
输出结果中有UUID=“96ad469a-283d-xxxxxxxxx(较长的一串序号)”
然后使用以下命令挂载
sudo mount -t ext4 -U “96ad469a-283d-xxxxxxxxx(较长的一串序号)” /home/admin123/GZA
成功挂载。
但到此仅为一次性挂载,下次开机后不会自动挂载。
(3)设置开机自动挂载
使用root权限在/etc/fstab文件的最后按照格式添加一行如下内容:
UUID=96ad469a-283d-xxxxxxxxx(较长的一串序号) /home/admin123/GZA ext4 defaults 0 2
其中第一列为UUID, 第二列为挂载目录(该目录必须为空目录),第三列为文件系统类型,第四列为参数,第五列0表示不备份,最后一列必须为2或0(除非引导分区为1)
最后,使用命令 mount -a
sudo mount -a
到此结束。重新开机检查挂载情况。
4 问题处理
若挂载后,磁盘无写如权限。是因为此方式是以root方式挂载的,要将硬盘所在的用户改为当前用户:
sudo chown -R lyt /home/admin123/GZA
附
对fstab进行说明:
< file system > < mount point> < type> < options> < dump> <pass>
1 2 3 4 5 6
- 指代文件系统的设备名,最初,该字段只包含待挂载分区的设备名(如/dev/sda1)。现在,除设备名外,还可以包含LABEL或UUID。
- 文件系统挂载点,文件系统包含挂载点下整个目录树结构里的所有数据,除非其中某个目录又挂载了另一个文件系统。
- 文件系统类型,下面是多数常见文件系统类型(ext3,tmpfs,devpts,sysfs,proc,swap,vfat)。
- mount命令选项,mount选项包括noauto(启动时不挂载该文件系统)和ro(只读方式挂载文件系统)等。在该字段里添加用户或属主选项,即可允许该用户挂载文件系统。多个选项之间必须用逗号隔开。其他选项的相关信息可参看mount命令手册页(-o选项处)。
- 转储文件系统,该字段只在用dump备份时才有意义。数字1表示该文件系统需要转储,0表示不需要转储。
- 文件系统检查,该字段里的数字表示文件系统是否需要用fsck检查。0表示不必检查该文件系统,数字1示意该文件系统需要先行检查(用于根文件系统)。数字2则表示完成根文件系统检查后,再检查该文件系统。