É possível criar um diretório e arquivo dentro de / proc / sys?


10

Estou executando o CentOS 6.2 e preciso criar um subdiretório chamado "crypto" dentro /proc/sys. Dentro /proc/sys/crypto, eu preciso criar um arquivo nomeado testque contém o valor "1".


De acordo com as outras duas respostas, /proc/é um sistema de arquivos virtual. /proc/sys/cryptodeve aparecer magicamente no instante em que o kernel carrega um driver que o utiliza. Eu suspeito que você realmente esteja perdendo alguma outra coisa - você pode elaborar o que está fazendo e pedir para criar esse arquivo?
Shadur

Respostas:


7

/procé um sistema de arquivos virtual. Você precisará escrever um módulo do kernel que crie as estruturas apropriadas dentro dele.


Você poderia me dar mais detalhes sobre isso, eu não sou uma pessoa linux que você tem solução passo a passo? Aposto que apenas monta algum outro diretório então?

2
O IBM Developerworks ainda tem um tutorial sobre como fazer isso: ibm.com/developerworks/linux/library/l-proc/index.html Eu sei que isso funcionou, uma vez, não consegue se lembrar se era o kernel 2.4 ou 2.6 ...
Bruce Ediger

7

A resposta de Ignacio Vazquez-Abrams está correta : arquivos abaixo /proce /syssão fornecidos pelo kernel. Se você deseja adicionar um arquivo lá, escreva um módulo do kernel. Você pode encontrar uma apresentação ligeiramente datada da /procinterface de programação em Linux Device Drivers 3rd ed. CH. 4 .

Tecnicamente, é possível pular os bastidores para fazer um arquivo aparecer /proc/sys/crypto(ou em qualquer outro lugar, na verdade). Faça uma montagem de ligação de /proc/sys/cryptopara um diretório intermediário e faça uma montagem de união do diretório intermediário e um diretório de sobreposição novamente /proc/sys/crypto. Aqui está um exemplo usando o unionfs-fuse .

# mkdir /tmp/original /tmp/overlay
# mount --bind /proc/sys/crypto /tmp/original
# unionfs-fuse -o nonempty /tmp/overlay=RW:/tmp/original=RO /proc/sys/crypto
# echo hello >/proc/sys/crypto/test
# cat /proc/sys/crypto/test
hello
# umount /proc/sys/crypto
# umount /proc/sys/crypto
# cat /tmp/overlay/test
hello

Nota: Eu me isento de qualquer responsabilidade por danos no sistema ou no cérebro causados ​​por experiências com esse material. Os comandos acima são perfeitamente seguros, mas mexer com outras áreas /syse /procpode causar um comportamento estranho.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.