Как упоминал @user1934428 , вы можете явно воссоздать хеш-таблицу, запустив rehash
. Чтобы не делать это вручную, поместите это в свойzshrc
:
zstyle ":completion:*:commands" rehash 1
Вы можете узнать больше о zstyle
на справочной странице zshmodule
, а сами стили описаны в zshcompsys
.
Похоже, что у него нет uuid, что является обломом, НО вот еще одна команда, которую можно добавить, просто чтобы посмотреть
udisksctl info -b /path/to/device/partition
Ниже приведен пример вывода. Я думаю, вам следует запустить это, даже если я сомневаюсь, что вы получите UUID, потому что часть вывода представляет собой список всех мест, где устройство связано с символами. Так что вы можете покопаться там и найти более постоянный идентификатор, чем просто /dev/whatever.
/org/freedesktop/UDisks2/block_devices/mmcblk0p1:
org.freedesktop.UDisks2.Block:
Configuration: []
CryptoBackingDevice: '/'
Device: /dev/mmcblk0p1
DeviceNumber: 45825
Drive: '/org/freedesktop/UDisks2/drives/00000_0x61cc04da'
HintAuto: true
HintIconName:
HintIgnore: false
HintName:
HintPartitionable: true
HintSymbolicIconName:
HintSystem: false
Id: by-uuid-B726-57E2
IdLabel: system-boot
IdType: vfat
IdUUID: B726-57E2
IdUsage: filesystem
IdVersion: FAT32
MDRaid: '/'
MDRaidMember: '/'
PreferredDevice: /dev/mmcblk0p1
ReadOnly: false
Size: 268435456
Symlinks: /dev/disk/by-id/mmc-00000_0x61cc04da-part1
/dev/disk/by-label/system-boot
/dev/disk/by-partuuid/ab86aefd-01
/dev/disk/by-path/pci-0000:03:00.0-platform-rtsx_pci_sdmmc.0-part1
/dev/disk/by-uuid/B726-57E2
UserspaceMountOptions:
org.freedesktop.UDisks2.Filesystem:
MountPoints:
Size: 0
org.freedesktop.UDisks2.Partition:
Flags: 128
IsContained: false
IsContainer: false
Name:
Number: 1
Offset: 1048576
Size: 268435456
Table: '/org/freedesktop/UDisks2/block_devices/mmcblk0'
Type: 0x0c
UUID: ab86aefd-01
`
Файловая система FAT/vFAT/FAT32/exFAT на самом деле не имеет UUID. У него есть «серийный номер тома», обычно представленный шестнадцатеричными цифрами как xxxx-xxxx
. Его можно использовать вместо UUID реальной файловой системы -, но, по-видимому, команда ядра/монтирования/другие части вашей системы, отвечающие за поддержку файловой системы exFAT в вашей системе, еще не поддерживают его.
(Спецификация exFAT была обнародована Microsoft 28 августа 2019 г., поэтому на данный момент поддержка exFAT на уровне ядра -в Linux и связанные с ней инструменты исполнятся менее года. Драйвер на основе FUSE -с обратным -проектированием устарел и может быть более зрелым, но ожидается, что реализация на основе ядра -наверстает упущенное.)
Но любой раздел на диске с разделами GPT -должен иметь PARTUUID, который является уникальным идентификатором стиля UUID -, хранящимся не в самой файловой системе, а в таблице разделов. Его также можно использовать для указания файловой системы для монтирования.
Запустите lsblk -o +PARTUUID
, чтобы увидеть UUID разделов. Вы должны иметь возможность использовать его в /etc/fstab
, просто укажите его как PARTUUID=...
вместоUUID=...