Jogando com o e2fsprogs debugfs
, por alteração / acidente, um arquivo chamado filen/ame
foi criado. Obviamente, o caractere de barra /
serve como caractere separador especial nos nomes de caminho.
Ainda usando debugfs
, queria remover o arquivo nomeado filen/ame
, mas tive pouco sucesso, pois o /
caractere não é interpretado como parte do nome do arquivo?
O debugfs fornece uma maneira de remover este arquivo que contém a barra? Se sim, como?
Eu usei:
cd /tmp
echo "content" > contentfile
dd if=/dev/zero of=/tmp/ext4fs bs=1M count=50
mkfs.ext4 /tmp/ext4fs
debugfs -w -R "write /tmp/contentfile filen/ame" /tmp/ext4fs
debugfs -w -R "ls" /tmp/ext4fs
quais saídas:
debugfs 1.43.4 (31-Jan-2017)
2 (12) . 2 (12) .. 11 (20) lost+found 12 (980) filen/ame
Eu tentei o seguinte para remover o filen/ame
arquivo:
debugfs -w -R "rm filen/ame" /tmp/ext4fs
mas isso não funcionou e apenas produziu:
debugfs 1.43.4 (31-Jan-2017)
rm: File not found by ext2_lookup while trying to resolve filename
Além de alterar o conteúdo do nó do diretório manualmente, existe uma maneira de remover o arquivo usando debugfs
?
filen\/ame
) não funciona?