我遇到一个问题,我可以使用 mount 命令手动挂载磁盘。然后我将磁盘添加到 fstab。重新启动后: sda1 指向正确的安装点 (/mnt/da),但其余的则不然。 请帮忙,我没有主意了。
服务器设置:
- 软件 raid1 中的 2 个 NVME 驱动器
- 10x 16tb 驱动器,无 raid,独立磁盘(必须在初始设置后从这些磁盘中删除 raid)
- 操作系统:Debian 12
- xfs 文件系统
- 使用 UUID,我从 blkid 命令获取,将设备添加到 fstab
尝试过:
- 手动挂载磁盘
- 尝试一次安装一张磁盘
- 尝试一次将一个磁盘添加到 fstab 并重新加载
- 尝试将所有磁盘添加到 fstab 并重新加载
df-h
root@data7 ~ # df -h
Filesystem Size Used Avail Use% Mounted on
udev 63G 0 63G 0% /dev
tmpfs 13G 896K 13G 1% /run
/dev/md2 875G 1013M 829G 1% /
tmpfs 63G 0 63G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/md1 989M 66M 873M 7% /boot
/dev/sdb1 15T 104G 15T 1% /mnt/db
/dev/sdd1 15T 104G 15T 1% /mnt/dc
/dev/sda1 15T 104G 15T 1% /mnt/da
tmpfs 13G 0 13G 0% /run/user/0
LSBLK
root@data7 ~ # lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 14.6T 0 disk
└─sda1 8:1 0 14.6T 0 part /mnt/da
sdb 8:16 0 14.6T 0 disk
└─sdb1 8:17 0 14.6T 0 part /mnt/db
sdc 8:32 0 14.6T 0 disk
└─sdc1 8:33 0 14.6T 0 part
sdd 8:48 0 14.6T 0 disk
└─sdd1 8:49 0 14.6T 0 part /mnt/dc
sde 8:64 0 14.6T 0 disk
└─sde1 8:65 0 14.6T 0 part
sdf 8:80 0 14.6T 0 disk
└─sdf1 8:81 0 14.6T 0 part
sdg 8:96 0 14.6T 0 disk
└─sdg1 8:97 0 14.6T 0 part
sdh 8:112 0 14.6T 0 disk
└─sdh1 8:113 0 14.6T 0 part
sdi 8:128 0 14.6T 0 disk
└─sdi1 8:129 0 14.6T 0 part
sdj 8:144 0 14.6T 0 disk
└─sdj1 8:145 0 14.6T 0 part
sdk 8:160 0 57.7G 0 disk
nvme0n1 259:0 0 894.3G 0 disk
├─nvme0n1p1 259:1 0 4G 0 part
│ └─md0 9:0 0 4G 0 raid1 [SWAP]
├─nvme0n1p2 259:2 0 1G 0 part
│ └─md1 9:1 0 1022M 0 raid1 /boot
└─nvme0n1p3 259:3 0 889.3G 0 part
└─md2 9:2 0 889.1G 0 raid1 /
nvme1n1 259:4 0 894.3G 0 disk
├─nvme1n1p1 259:5 0 4G 0 part
│ └─md0 9:0 0 4G 0 raid1 [SWAP]
├─nvme1n1p2 259:6 0 1G 0 part
│ └─md1 9:1 0 1022M 0 raid1 /boot
└─nvme1n1p3 259:7 0 889.3G 0 part
└─md2 9:2 0 889.1G 0 raid1 /
黑子
GETTING UUID
root@data7 ~ # blkid | g sda
/dev/sda1: UUID="cea5e8d9-1ddf-4502-a609-3a17af37082c" BLOCK_SIZE="4096" TYPE="xfs" PARTUUID="d0a89050-f533-7245-877e-5006d974516c"
root@data7 ~ # blkid | g sdb
/dev/sdb1: UUID="e3ae1145-d37b-41d7-ac1f-5c6a646bd5ed" BLOCK_SIZE="4096" TYPE="xfs" PARTUUID="da1f85c1-9054-d147-a9b8-0965020b4d67"
root@data7 ~ # blkid | g sdc
/dev/sdc1: UUID="47bf4e70-ec50-4369-88c2-9dfd8dd5d422" BLOCK_SIZE="4096" TYPE="xfs" PARTUUID="f458a5c3-6b6c-054d-a069-27930dcb02f2"
系统表
/etc/fstab - WAS CORRECT BEFORE RESTART .. CHANGED IT 5+ TIMES AND BREAKS AFTER EVERY RESTART
proc /proc proc defaults 0 0
# /dev/md/0
UUID=e2f568f6-846b-4657-b88d-3c8108d5600c none swap sw 0 0
# /dev/md/1
UUID=a5868f6d-b7e5-43b1-ab81-4770a543d83a /boot ext3 defaults 0 0
# /dev/md/2
UUID=612c81e1-94e4-415e-863f-6dfcbe127dee / ext4 defaults 0 0
# /dev/sda1
UUID=cea5e8d9-1ddf-4502-a609-3a17af37082c /mnt/da xfs defaults 0 2
# /dev/sdb1
UUID=e3ae1145-d37b-41d7-ac1f-5c6a646bd5ed /mnt/db xfs defaults 0 2
# /dev/sdc1
UUID=2b28f001-d9a0-4759-8f29-4bf45a18aeb6 /mnt/dc xfs defaults 0 2
我的其他服务器(回应设备名称在重新启动后不会保留的评论)
root@data2:~$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 126G 0 126G 0% /dev
tmpfs 26G 1.3G 24G 6% /run
/dev/sda3 5.5T 4.9T 246G 96% /
tmpfs 126G 0 126G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 126G 0 126G 0% /sys/fs/cgroup
/dev/sda2 923M 79M 781M 10% /boot
/dev/sde1 5.5T 5.0T 236G 96% /mnt/de
/dev/sdf1 5.5T 4.1T 1.2T 79% /mnt/df
/dev/sdd1 5.5T 4.7T 468G 92% /mnt/dd
/dev/sdc1 5.5T 5.1T 49G 100% /mnt/dc
/dev/sdb1 5.5T 5.1T 74G 99% /mnt/db
tmpfs 26G 0 26G 0% /run/user/1000
tmpfs 26G 0 26G 0% /run/user/0
root@data3:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 126G 0 126G 0% /dev
tmpfs 26G 2.5G 23G 10% /run
/dev/sda3 5.5T 4.2T 1.1T 81% /
tmpfs 126G 0 126G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 126G 0 126G 0% /sys/fs/cgroup
/dev/sda2 923M 79M 781M 10% /boot
/dev/sdc1 11T 11T 660G 95% /mnt/df
/dev/sdf1 11T 9.2T 1.8T 84% /mnt/de
/dev/sdd1 11T 9.8T 1.2T 90% /mnt/dc
/dev/sde1 11T 11T 191G 99% /mnt/dd
/dev/sdb1 11T 11T 855G 93% /mnt/db
tmpfs 26G 0 26G 0% /run/user/1001
tmpfs 26G 0 26G 0% /run/user/0
root@data4:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 126G 0 126G 0% /dev
tmpfs 26G 2.5G 23G 10% /run
/dev/sda3 11T 11T 249G 98% /
tmpfs 126G 0 126G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 126G 0 126G 0% /sys/fs/cgroup
/dev/sda2 923M 80M 781M 10% /boot
/dev/sdc1 11T 9.3T 1.7T 85% /mnt/dc
/dev/sdd1 11T 9.0T 2.0T 82% /mnt/dd
/dev/sdb1 11T 9.8T 1.2T 90% /mnt/db
tmpfs 26G 0 26G 0% /run/user/1002
tmpfs 26G 0 26G 0% /run/user/1000
tmpfs 26G 0 26G 0% /run/user/1005
tmpfs 26G 0 26G 0% /run/user/0
答案1
不保证设备 ID 在重新启动后保持一致...
你使用了错误的词汇。
有6种安装方式磁盘在linux中,如下所示/dev/disk
;这是使用 RHEL-7.9...
by-id/ by-label/ by-partlabel/ by-partuuid/ by-path/ by-uuid/
按 ID是 scsi 标识符或 wwn(全球号码)标识符。
不可靠(或不一致)的方式是安装按设备名称例如,这就是您一直/dev/sdb1 /data
在/etc/fstab
做的事情,并且被错误地称为设备 ID 的。 ID 一致,但设备名称(sda、sdb、sdc 等)不一致。
您将看到这六个/dev/disk/
文件夹下的所有内容都是指向设备名称的向上和上方的链接{/dev/sda2
例如}
正如评论中提到的,设备名称启动后根据设备被识别的顺序进行映射。添加通过 SATA 电缆连接的新磁盘,不要将其放在磁盘的末尾sda、sdb、sdc...列表。它经常被放在前面sda然后一切都向下移动,这就是不一致的原因。只需交换两个磁盘以及它们在主板上连接的 SATA 端口 - 同样的问题。
- 通过-UUID非常一致 - 因此得名通用唯一ID
- 按 ID如scsi id或wwn id,应该也是很可靠的;您经常会
wwn
在磁盘标签上找到 - 按标签应该是可靠的,直到您执行类似使用相同标签名称标记多个磁盘(实际上是分区)之类的操作。
- 我认为旁路不一致,因为如果磁盘连接到不同的 SAT/SAS 端口,那么现在是不同的路径。
答案2
AFAIK过去,磁盘的顺序是通过检测顺序严格定义的:主IDE master = hda,slave = hdb;辅助 IDE 主 = hdc,从 = hdd。新硬件带来了 SATA 通道,导致设备标识符更改为 sda、sdb 等。除了硬件的更改之外,引导响应也发生了变化。开机软件也做了一些改变。 BIOS(或 uEFI)以及引导加载程序和系统引导都开始使用更多 CPU 内核。您可能会注意到 Debian(和其他)从 SysV 迁移init
到systemd
,因此您可以并行启动更多独立组件,而不是按照目录中“字母”顺序定义的严格顺序/etc/rc3.d
。在薛定谔的好奇心评论链接写的是:
...第一个硬盘检测到名为 /dev/sda ...
嗯,这意味着:使用 SysV 按标准顺序轮询磁盘init
;但systemd
磁盘检测是并行完成的,这意味着第一个检测到的磁盘不必是连接到第一个 SATA 通道的磁盘。第一次接触是由 BIOS (uEFI) 和附加 PCI(e) 卡的 BIOS ROM 完成的 - 例如 SCSI (SAS) 因此,您不能依赖磁盘检测顺序,因为旋转磁盘在加电后需要更多时间来启动,但是热启动后可以立即检测到。这就是为什么添加了UUID和LABEL来标识要挂载的磁盘分区。所以你可以在 fstab(基于 Debian 的 Linux)中看到如下内容:
# / was on /dev/sda1 during installation
UUID=98765432-9876-abcd-9090-1234567890ab / ext4 ...
你可以改变什么
LABEL=mysda1 / ext4 ...
如果将分区的 LABEL 设置为米斯达1。 IDE和SATA磁盘都没有像NIC的MAC地址那样的标准标识符。
答案3
装置名字 (由ID更改)不保证在重新启动后保持一致。在 fstab 中使用 UUID 仍然可以保证您的磁盘始终安装为指向同一路径。即使设备 ID 发生更改,您放置在 /mnt/da、/mnt/db ...等位置的数据将继续驻留在这些位置。
感谢@frostschutz 和其他人的评论。