esxi虚拟化安装的虚拟机,添加了500G数据盘,安装完系统后要创建分区,并格式化挂载数据盘发现盘符为sda。
系统盘盘符为sdb,当时并未在意这个问题。
安装完docker版的gitlab后,关闭selinux,关闭firewalld、update系统等操作后,重启系统,发现gitlab里创建的仓库不见了。
以为是docker的问题,没有做持久化,就又创建了个仓库,重启测试看看会不会丢失,发现之前的仓库又回来了。
无意间执行 df -h 看到数据盘(fstab里配置的为sda1)没有挂载。
fdisk -l 时发现数据盘已经变为sdb1,以为当时分区时记错了,实际并不是,是由于盘符混乱导致的。
原因是内核扫描硬盘分配盘符,顺序出了问题。
解决这个问题就是使用uuid的方式挂载,不再用传统的盘符方式(这么多年第一次遇到)。
# 查看硬盘uuid [root@localhost ~]# ll /dev/disk/by-uuid/ total 0 lrwxrwxrwx 1 root root 10 Nov 1 11:38 0b63526f-9f3d-4695-ae2c-a6e86e2195e9 -> ../../sdb1 lrwxrwxrwx 1 root root 10 Nov 1 11:38 79271dc0-5c38-47b1-8c24-b546c04f917e -> ../../sda1 lrwxrwxrwx 1 root root 10 Nov 1 11:38 f14bc246-d1a7-4acb-af7c-c49df2074672 -> ../../sda2 # 或者执行 blkid 命令 [root@localhost ~]# blkid /dev/sdb1: UUID="0b63526f-9f3d-4695-ae2c-a6e86e2195e9" TYPE="ext4" PARTUUID="a6b8773b-01" /dev/sda2: UUID="f14bc246-d1a7-4acb-af7c-c49df2074672" TYPE="ext4" PARTUUID="b118ae54-02" /dev/sda1: UUID="79271dc0-5c38-47b1-8c24-b546c04f917e" TYPE="ext4" PARTUUID="b118ae54-01" # 挂载 [root@localhost ~]# cat /etc/fstab UUID=0b63526f-9f3d-4695-ae2c-a6e86e2195e9 /home ext4 defaults 0 0 # 验证重启会不会导致盘符发生变化。 [root@localhost ~]# ll /dev/disk/by-uuid/ total 0 lrwxrwxrwx 1 root root 10 Nov 1 12:39 0b63526f-9f3d-4695-ae2c-a6e86e2195e9 -> ../../sda1 lrwxrwxrwx 1 root root 10 Nov 1 12:39 79271dc0-5c38-47b1-8c24-b546c04f917e -> ../../sdb1 lrwxrwxrwx 1 root root 10 Nov 1 12:39 f14bc246-d1a7-4acb-af7c-c49df2074672 -> ../../sdb2 # 重启 reboot [root@localhost ~]# ll /dev/disk/by-uuid/ total 0 lrwxrwxrwx 1 root root 10 Nov 1 13:01 0b63526f-9f3d-4695-ae2c-a6e86e2195e9 -> ../../sdb1 lrwxrwxrwx 1 root root 10 Nov 1 13:01 79271dc0-5c38-47b1-8c24-b546c04f917e -> ../../sda1 lrwxrwxrwx 1 root root 10 Nov 1 13:01 f14bc246-d1a7-4acb-af7c-c49df2074672 -> ../../sda2
原创文章,转载请注明。本文链接地址: https://www.rootop.org/pages/5346.html