web-dev-qa-db-ja.com

/ etc / fstabにスペースを含むラベル/パスを指定するにはどうすればよいですか?

設定した外部ドライブのいくつかの許可を取得しようとすると問題が発生します。

この問題は、コマンドが端末で解釈できるように、テキスト内のスペースをどのように処理しているかに起因すると考えています。 this を見つけました。これは、次を表示するために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または''s、しかし、私はこれを適切に行う方法がわからない。私の2つのドライブはExpansion DriveおよびExpansion Drive_。誰でもこの問題を解決する方法を知っていますか?

EDIT:メディアフォルダーに表示される内容は次のとおりです。

chasebrown@ubuntu:/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

chasebrown@ubuntu:/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

chasebrown@ubuntu:/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

[〜#〜] solution [〜#〜]LABELUUIDに変更してしまいました何らかの理由で働いた。

結果の/ 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
43
chase

エスケープシーケンス\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の出力から気づいたもう1つのことは、同じLABEL sdc1を持つ2つのパーティション(2つの別個のドライブsdd1および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
95
Tuxdude