Подтвердить что ты не робот

Как указать метку/путь с пробелами в/etc/fstab?

У меня возникли проблемы с попыткой получить права доступа для некоторых моих внешних накопителей.

Я считаю, что проблема связана с тем, как я имею дело с пробелами в тексте, так что команды могут интерпретироваться терминалом. Я нашел этот, который, похоже, указывает, что мне нужно настроить файл etc/fstab, чтобы показать следующее:

# UNCONFIGURED FSTAB FOR BASE SYSTEM
/host/ubuntu/disks/swap.disk    none    swap    sw  0   0
LABEL='Expansion Drive'  /media/'Expansion Drive'  ntfs-3g  defaults,umask=0022,fmask=0133  0  0
LABEL='Expansion Drive_'  /media/'Expansion Drive_'  ntfs-3g  defaults,umask=0022,fmask=0133  0  0

Однако, это показывает ошибку, что диск Drive_' не готов. Я понимаю, что это связано с использованием "" или '' s, но я не уверен, как это сделать должным образом. Мои 2 диска называются Expansion Drive и Expansion Drive_. Кто-нибудь знает, как решить эту проблему?

EDIT: Вот что я вижу в папке со СМИ:

[email protected]:/media$ ls -al
total 32
drwxr-xr-x  6 root       root        1024 Mar  9 16:32 .
drwxr-xr-x 24 root       root        1024 Feb 23 23:14 ..
drwx------  1 chasebrown chasebrown  4096 Mar  8 04:21 Expansion Drive
drwx------  1 chasebrown chasebrown  4096 Mar  8 04:21 Expansion Drive_
dr-x------  1 chasebrown chasebrown  2048 May 20  2009 GDRV-25922+VR2
drwx------  1 chasebrown chasebrown 20480 Mar  8 04:21 WD EXTERNAL

Также sudo lsblk -f:

[email protected]:/dev/disk/by-uuid$ sudo lsblk -f
[sudo] password for chasebrown: 
NAME   FSTYPE  LABEL           MOUNTPOINT
sda                            
├─sda1 ntfs    System Reserved 
└─sda2 ntfs                    
sdb                            
└─sdb1 ntfs                    /host
sdc                            
└─sdc1 ntfs    Expansion Drive /media/Expansion Drive_
sdd                            
└─sdd1 ntfs    Expansion Drive /media/Expansion Drive
sde                            
└─sde1 ntfs    WD EXTERNAL     /media/WD EXTERNAL
sr0    iso9660 GDRV-25922+VR2  /media/GDRV-25922+VR2
loop0  ext3                    /

И sudo blkid:

[email protected]:/dev/disk/by-uuid$ sudo blkid
/dev/loop0: UUID="87a15942-982f-4edd-bf44-439dc286fd7c" SEC_TYPE="ext2" TYPE="ext3" 
/dev/sr0: LABEL="GDRV-25922+VR2" TYPE="iso9660" 
/dev/sda1: LABEL="System Reserved" UUID="64CEEA61CEEA2B4E" TYPE="ntfs" 
/dev/sda2: UUID="4CA4EBC0A4EBAAA2" TYPE="ntfs" 
/dev/sdb1: UUID="00064EEE064EE46E" TYPE="ntfs" 
/dev/sdc1: LABEL="Expansion Drive" UUID="C682A8EE82A8E3E1" TYPE="ntfs" 
/dev/sdd1: LABEL="Expansion Drive" UUID="D006D78406D769CC" TYPE="ntfs" 
/dev/sde1: LABEL="WD EXTERNAL" UUID="D65AFC375AFC15C9" TYPE="ntfs" 

Поэтому мой новый файл fstab:

# UNCONFIGURED FSTAB FOR BASE SYSTEM
/host/ubuntu/disks/swap.disk    none    swap    sw  0   0
LABEL=Expansion\040Drive  /media/Expansion\040Drive  ntfs-3g  defaults,umask=0022,fmask=0133  0  0
LABEL=Expansion\040Drive_  /media/Expansion\040Drive_  ntfs-3g  defaults,umask=0022,fmask=0133  0  0

Решение: Я закончил тем, что изменил LABEL на UUID, и он по какой-то причине сработал.

Вот результирующий файл /etc/fstab:

# UNCONFIGURED FSTAB FOR BASE SYSTEM
/host/ubuntu/disks/swap.disk    none    swap    sw  0   0
UUID=C682A8EE82A8E3E1  /media/Expansion\040Drive  ntfs-3g  defaults,umask=0022,fmask=0133  0  0
UUID=D006D78406D769CC  /media/Expansion\040Drive_  ntfs-3g  defaults,umask=0022,fmask=0133  0  0
4b9b3361

Ответ 1

Вы можете использовать escape-последовательность \040 для удаления пробелов:

# UNCONFIGURED FSTAB FOR BASE SYSTEM
/host/ubuntu/disks/swap.disk    none    swap    sw  0   0
LABEL=Expansion\040Drive  /media/Expansion\040Drive  ntfs-3g  defaults,umask=0022,fmask=0133  0  0
LABEL=Expansion\040Drive_  /media/Expansion\040Drive_  ntfs-3g  defaults,umask=0022,fmask=0133  0  0

Кстати, вы не можете цитировать часть строки, как вы упомянули в вопросе. Если вы цитируете, вам нужно указать всю строку.

Еще одна вещь, которую я могу заметить из вывода blkid, состоит в том, что есть 2 раздела (на 2 отдельных дисках sdc1 и sdd1), имеющих одну и ту же LABEL Expansion Drive. Чтобы обойти это, вы можете использовать UUID вместо этого.

UUID=C682A8EE82A8E3E1  /media/Expansion\040Drive  ntfs-3g  defaults,umask=0022,fmask=0133  0  0
UUID=D006D78406D769CC  /media/Expansion\040Drive_  ntfs-3g  defaults,umask=0022,fmask=0133  0  0