Apakah mungkin membuat direktori dan file di dalam / proc / sys?


10

Saya menjalankan CentOS 6.2 dan saya perlu membuat subdirektori bernama "crypto" di dalamnya /proc/sys. Di dalam /proc/sys/crypto, saya perlu membuat file bernama testyang berisi nilai "1".


Seperti dua jawaban lainnya, /proc/adalah sistem file virtual. /proc/sys/cryptoakan muncul secara ajaib saat kernel memuat driver yang menggunakannya. Saya menduga Anda benar-benar kehilangan sesuatu yang lain - dapatkah Anda menguraikan apa yang Anda lakukan yang memberi tahu Anda untuk membuat file itu?
Shadur

Jawaban:


7

/procadalah sistem file virtual. Anda perlu menulis modul kernel yang menciptakan struktur yang sesuai di dalamnya.


Bisakah Anda memberi saya rincian lebih lanjut tentang itu, saya bukan orang linux Anda mendapat solusi langkah demi langkah? Saya yakin itu hanya me-mount beberapa direktori lain?

2
IBM Developerworks bahkan memiliki tutorial tentang cara melakukan ini: ibm.com/developerworks/linux/library/l-proc/index.html Saya tahu ini berfungsi, sekali waktu, tidak dapat mengingat apakah itu kernel 2.4 atau 2.6 kernel ...
Bruce Ediger

7

Jawaban Ignacio Vazquez-Abrams benar : file-file di bawah /procdan /sysdisediakan oleh kernel. Jika Anda ingin menambahkan file di sana, tulis modul kernel. Anda dapat menemukan presentasi yang sedikit tanggal dari /procantarmuka pemrograman di Linux Device Drivers 3rd ed. ch. 4 .

Secara teknis, dimungkinkan untuk melompat melalui lingkaran untuk membuat file muncul /proc/sys/crypto(atau di tempat lain, sungguh). Buat bind mount dari /proc/sys/cryptoke direktori staging, dan buat union mount dari direktori staging dan direktori overlay kembali /proc/sys/crypto. Berikut ini contoh menggunakan 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

Catatan: Saya melepaskan tanggung jawab atas kerusakan sistem atau otak yang disebabkan oleh percobaan dengan hal ini. Perintah di atas sangat aman, tetapi mengacaukan area lain /sysdan /procdapat menyebabkan perilaku aneh.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.