Use aspas.
/dev/sda4 "/home/max/VirtualBox VMs" ext4 defaults 0 0
Eu criei uma partição e queria montar essa partição neste diretório /home/max/VirtualBox VMs
Eu escrevi esta linha no fstab:
/dev/sda4 /home/max/VirtualBox\ VMs ext4 defaults 0 0
mas está dando esse erro
[mntent]: line 16 in /etc/fstab is bad
Eu sei que estou recebendo este erro por causa do espaço entre 'virtualbox VMs'
É possível montar esse diretório?
[max@localhost VirtualBox VMs]$ pwd /home/max/VirtualBox VMs
fstab tem sua própria sintaxe. Para usar espaços como parte de um nome de diretório, você precisa especificar seu ponto de código como um octal de 3 dígitos com preenchimento zero número, precedido por uma barra invertida (caractere de escape).
Em ASCII , o ponto de código do caractere de espaço é 32 ou 40 em octal , então você pode usar:
/dev/sda4 /home/max/VirtualBox0VMs ext4 defaults 0 0
Observe que, embora os pontos de código também sejam suportados para outros caracteres, o suporte é um pouco esquisito. Na minha máquina, você pode escrever 7
em vez de W
, mas não 0
em vez de 8
...
Na pergunta que você diz, o nome é
/home/max/VirtualVM Box
, no seu exemplo você mostra
/home/max/VirtualBox\ VM
Deve ser
/home/max/VirtualVM\ Box
para ser o mesmo. Também deve ter citações em torno dele.
Estou convertendo todo o caminho para o ponto de código com uma função Bash:
fstab_path(){
local path=$1
local s=
local c=
for i in $(seq 1 ${#path})
do
c=${path:i-1:1}
s="$s"$(printf '\0%o' "'$c")
done
echo "$s" >/dev/stdout
}
path="path with spaces tabs etc.."
fpath=$(fstab_path "$path")