Câu trả lời:
/proc
là một hệ thống tập tin ảo. Bạn sẽ cần phải viết một mô-đun hạt nhân tạo ra các cấu trúc phù hợp bên trong nó.
Câu trả lời của Ignacio Vazquez-Abrams là chính xác : các tệp dưới /proc
và /sys
được cung cấp bởi kernel. Nếu bạn muốn thêm một tập tin ở đó, hãy viết một mô-đun hạt nhân. Bạn có thể tìm thấy một bản trình bày hơi cũ về /proc
giao diện lập trình trong Trình điều khiển thiết bị Linux phiên bản thứ 3. ch. 4 .
Về mặt kỹ thuật, có thể nhảy qua các vòng để làm cho một tệp xuất hiện trong /proc/sys/crypto
(hoặc bất cứ nơi nào khác, thực sự). Tạo một liên kết gắn kết từ /proc/sys/crypto
đến một thư mục dàn và tạo một liên kết gắn kết của thư mục dàn và một thư mục lớp phủ trở lại /proc/sys/crypto
. Đây là một ví dụ sử dụng 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
Lưu ý: Tôi từ chối mọi trách nhiệm đối với tổn thương hệ thống hoặc não do thử nghiệm công cụ này. Các lệnh trên là hoàn toàn an toàn, nhưng gây rối với các khu vực khác /sys
và /proc
có thể gây ra hành vi kỳ lạ.
/proc/
là một hệ thống tập tin ảo./proc/sys/crypto
sẽ xuất hiện một cách kỳ diệu ngay khi kernel tải trình điều khiển sử dụng nó. Tôi nghi ngờ rằng bạn thực sự đang thiếu một cái gì đó khác - bạn có thể giải thích những gì bạn đang làm để bảo bạn tạo tệp đó không?