Uma tarefa em minha tarefa de lição de casa pede que eu crie um sistema de arquivos virtual, monte-o e execute algumas operações nele.
Eu devo criar um arquivo de 10 MB cujos bits estejam todos definidos 0
, formatá-lo como ext3 e montá-lo. Foi assim que eu fiz isso:
dd if=/dev/zero of=~/filesyst bs=10485760 count=1
sudo mkfs.ext3 ~/filesyst
sudo mount –o loop ~/filesyst /media/fuse
Mesmo que eu tenha usado /dev/zero
, o arquivo ainda está cheio de caracteres sem sentido (principalmente arroba). As permissões em /media/fuse
são drw-rw-rw-
(que estão bem), mas as permissões nos arquivos contidos nele são algo como isto:
d????????? ? ? ? ? ? lost+found
-????????? ? ? ? ? ? secret_bin
Onde eu errei?
Acho que o problema está relacionado ao seu comando mkfs.ext3. IIRC, Existem diferentes argumentos que você precisa usar ao fazer isso em um arquivo em vez de em um dispositivo.
—
user606723
Talvez eu esteja errado, por adamsinfo.com/… , você está fazendo isso corretamente. Você pode tentar seguir os comandos exatos neste URL e ver se você ainda tem problemas?
—
user606723
Além disso, tente
—
user606723
mkfs.ext3 -F ~/filesyst
@ user606723 Obrigado, eu resolvi. O problema foram os argumentos
—
Paul
bs
e count
. Se eu escrever bs=1MiB count=10
, como no link que você postou, funciona.
A propósito, você não precisa realmente preencher o arquivo com zeros. Você pode apenas criar um arquivo vazio de tamanho arbitrário com
—
Psd #
truncate -s 400m filesyst
. A diferença é que, até que você grave os dados no arquivo, ele não ocupa espaço no disco, para que você possa criar um sistema de arquivos virtual maior que toda a unidade de disco, desde que não tente preenchê-los . Você pode ver com quanto espaço o arquivo está realmente usando du -h filesyst
.