ฉันจะลบไดเรกทอรีนี้ได้อย่างไร ฉันทำfsck
แล้วมันพบว่ามีขยะฉันมองผ่านไฟล์เหล่านี้และไม่มีอะไรสำคัญ ดังนั้นฉันจึงพยายามลบเนื้อหาของ/lost+found
และทุกอย่างได้หายไปยกเว้นไดเรกทอรีแปลก ๆ นี้ ผมคิดว่าวาง/tmp
(ผมสามารถย้าย dir ที่ข้ามปริมาณ) จะลบมันในการรีบูตต่อไป fsck
แต่ก็ยังคงมีการรีบูตหลังจากที่ทั้งสองและอื่น ๆ
ดูเหมือนว่าปัญหาจะอยู่ในระดับต่ำและการเล่นกับความเป็นเจ้าของและการอนุญาตไม่เพียงพอฉันทำให้คุณสามารถสร้างปัญหาขึ้นใหม่ได้ด้วยตัวเอง สนุก!
- นี้มีความปลอดภัยคุณจะสามารถที่จะภาพ umount เพื่อกำจัดไดเรกทอรีเหล่านี้บนเครื่องของคุณ ;
- นี่ไม่ใช่ภาพ iso นี่คือผลลัพธ์ของ
dd if=/dev/sda1 of=/files/broken.iso
;
ฉันสร้างไฟล์เก็บถาวร 15MB ด้วยภาพซึ่งเป็น ~ 1.2GB คุณสามารถดาวน์โหลดและใช้ร่วมกับคำสั่งต่อไปนี้:
cd /tmp
wget https://dl.dropboxusercontent.com/u/22701362/broken.tar.xz
tar xvf broken.tar.xz
mkdir test
sudo mount broken.iso test
cd test
จะมีสองไดเรกทอรี (ในระหว่างการสร้างภาพนั้นปรากฏว่ามีสองไดเรกทอรีดังกล่าวในดิสก์ของฉัน):
/tmp/test> tree
.
├── 1
│ └── plexus-component-annotations-1.5.5.jar.sha1 [error opening dir]
└── 2
└── #1589030 [error opening dir]
4 directories, 0 files
ขอให้โชคดีเมื่อลบไดเรกทอรีทั้งสองนี้:
/tmp/test> sudo rm -rf *
rm: cannot remove '1/plexus-component-annotations-1.5.5.jar.sha1': Operation not permitted
rm: cannot remove '2/#1589030': Operation not permitted
/tmp/test> sudo chown -R root:root *
chown: changing ownership of '1/plexus-component-annotations-1.5.5.jar.sha1': Operation not permitted
chown: cannot read directory '2/#1589030': Permission denied
/tmp/test> sudo chmod -R 777 *
chmod: changing permissions of '1/plexus-component-annotations-1.5.5.jar.sha1': Operation not permitted
chmod: changing permissions of '2/#1589030': Operation not permitted
chmod: cannot read directory '2/#1589030': Permission denied
df
เอาท์พุทแสดงให้เราเห็นว่าคุณ / tmp` เป็นจริงไดเรกทอรีปกติ/
และไม่ tmpfs ที่มีการตั้งค่าเริ่มต้น เป็นเรื่องที่น่าแปลกใจ แต่ก็อธิบายได้ว่าทำไมคุณถึงสามารถคัดลอกไดรฟ์ไป/tmp
ได้ perl
การส่งออกไม่ได้โดดเพิ่มมากไม่ได้ แต่มันก็คุ้มค่าการยิง ฉันกำลังจับฟางที่นี่
/tmp
เป็นไดเรกทอรีปกติโดยค่าเริ่มต้น ทำเช่นนี้เพื่อป้องกันการกรอกข้อมูลสูงสุด 100% และเพื่อประหยัด RAM มีการล้างข้อมูลระหว่างการเริ่มต้น พฤติกรรมนี้มีอยู่เป็นเวลานาน
/tmp
ในปริมาณเท่าไหร่? คุณสามารถโพสต์การส่งออกของdf
? นอกจากนี้โปรดโพสต์ผลลัพธ์sudo perl -MFile::Path -e 'rmtree("/tmp/foo") || die "$!"'
ในกรณีที่เราได้รับข้อความแสดงข้อผิดพลาดเพิ่มเติม