มีสิทธิ์ของกลุ่ม แต่ไม่สามารถสร้างไฟล์ได้


10

ฉันพบสิ่งที่แปลกในขณะที่เล่นกับ pi3B ฉันต้องการที่จะสร้างไฟล์ใน/sys/class/gpio( เพียง poking รอบไม่มีเหตุผลที่เฉพาะเจาะจง ) แต่ผมได้รับอนุญาตปฏิเสธ ด้านล่างเป็นข้อมูลบางส่วน

pi@raspberrypi:/sys/class/gpio $ groups
pi adm dialout cdrom sudo audio video plugdev games users input netdev gpio i2c spi
pi@raspberrypi:/sys/class/gpio $ ls -ld .
drwxrwx--- 2 root gpio 0 May  6 00:28 .
pi@raspberrypi:/sys/class/gpio $ touch somefile
touch: cannot touch 'somefile': Permission denied

ที่คุณสามารถดูผมในกลุ่มGPIO/sys/class/gpioและกลุ่มที่มีสิทธิ์ในการเขียนของไดเรกทอรี

ดังนั้นคำถามคือทำไมฉันไม่สามารถสร้างไฟล์ใหม่/sys/class/gpioได้แม้ว่ากลุ่มที่ฉันเป็นส่วนหนึ่งจะได้รับอนุญาต

ฉันลอง relogin และรีบูตหลังจากเพิ่มผู้ใช้piไปยังกลุ่มgpioและนั่นเป็นเวลาหลายวันที่ผ่านมา

ระบบปฏิบัติการ: raspbian stretch

พยายาม newgrp newgrp


คุณลองด้วยnewgrp gpioคำสั่ง (แล้วtouch ...)?
Romeo Ninov

@RomeoNinov เพิ่งลองดูแก้ไข
ชาร์ลส์

1
เรามาดูกันว่า แต่คุณได้โพสต์ภาพ โปรดหลีกเลี่ยงสิ่งนั้นและโพสต์ข้อความเวอร์ชันทุกครั้งที่มี
LinuxSecurityFreak

@Vastastil ตกลงฉันจะใส่ใจกับครั้งต่อไป (ข้อความต้นฉบับหายไปแล้ว) ขอบคุณ.
ชาร์ลส์

คำตอบ:


19

/sysไดเรกทอรีเป็นพิเศษ คุณไม่สามารถแหย่และสร้างไฟล์ได้

ข้อความที่ตัดตอนมาจาก Wikipedia :

ลีนุกซ์รุ่นใหม่ ๆ มี/sysไดเรกทอรีเป็นระบบไฟล์เสมือน ( sysfsเปรียบได้กับ/proc, ซึ่งคือ a procfs), ซึ่งเก็บและอนุญาตการแก้ไขอุปกรณ์ที่เชื่อมต่อกับระบบ, ในขณะที่ระบบปฏิบัติการยูนิกซ์และยูนิกซ์แบบดั้งเดิมจำนวนมากใช้/sysเป็นลิงค์สัญลักษณ์ไปยัง ต้นไม้แหล่งเคอร์เนล

รายการ/sysจะถูกสร้างขึ้นโดยเคอร์เนลและโดยไดรเวอร์; คุณไม่สามารถสร้างพวกมันได้จากบรรทัดคำสั่ง คุณอาจแก้ไขบางอย่างในฐานะรูท แต่โดยทั่วไปคุณไม่สามารถสร้างใหม่จาก userspace ได้ยกเว้นโดยการโหลดโมดูลเคอร์เนลหรือติดตั้งไดรเวอร์หรือแก้ไขเคอร์เนล


เพิ่งสังเกตเห็นว่าฉันไม่สามารถสร้างไฟล์ได้แม้ในขณะที่ฉันรูท นั่นอธิบายได้มาก ขอบคุณ
ชาร์ลส์
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.