¿Es posible crear un directorio y un archivo dentro de / proc / sys?


10

Estoy ejecutando CentOS 6.2 y necesito crear un subdirectorio llamado "crypto" dentro /proc/sys. Dentro /proc/sys/crypto, necesito crear un archivo llamado testque contenga el valor "1".


Según las otras dos respuestas, /proc/es un sistema de archivos virtual. /proc/sys/cryptodebería aparecer mágicamente en el instante en que el núcleo carga un controlador que lo usa. Sospecho que en realidad te estás perdiendo algo más. ¿Puedes explicar qué estás haciendo que te dice que crees ese archivo?
Shadur

Respuestas:


7

/proces un sistema de archivos virtual. Necesitará escribir un módulo de kernel que cree las estructuras apropiadas dentro de él.


¿Podría darme más detalles al respecto, no soy una persona de Linux que obtuvo la solución paso a paso? ¿Apuesto a que solo monta algún otro directorio entonces?

2
IBM Developerworks incluso tiene un tutorial sobre cómo hacer esto: ibm.com/developerworks/linux/library/l-proc/index.html Sé que esto funcionó, alguna vez, no puedo recordar si era un kernel 2.4 o 2.6 ...
Bruce Ediger

7

La respuesta de Ignacio Vázquez-Abrams es correcta : los archivos están debajo /procy /sysson proporcionados por el núcleo. Si desea agregar un archivo allí, escriba un módulo del núcleo. Puede encontrar una presentación ligeramente anticuada de la /procinterfaz de programación en Linux Device Drivers 3rd ed. ch. 4 .

Técnicamente, es posible saltar a través de aros para hacer que aparezca un archivo /proc/sys/crypto(o en cualquier otro lugar, realmente). Realice un montaje de enlace desde /proc/sys/cryptoun directorio de ensayo y realice un montaje de unión del directorio de ensayo y un directorio de superposición nuevamente /proc/sys/crypto. Aquí hay un ejemplo usando 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: Renuncio a cualquier responsabilidad por daños al sistema o al cerebro causados ​​por experimentar con estas cosas. Los comandos anteriores son perfectamente seguros, pero jugar con otras áreas /sysy /procpuede causar un comportamiento extraño.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.