rm /*
ควรลบน้อยมาก ไม่มี-r
แฟล็กที่จะลบสิ่งใด ๆ ซ้ำ ๆ และหากไม่มีไดเรกทอรีจะไม่ถูกลบ (และแม้ว่าไดเรกทอรีจะถูกลบจะสามารถลบได้เฉพาะอันที่ว่างเปล่าเท่านั้น) rm -rf /*
คำตอบนี้จะบอกกล่าวกับสมมติฐานที่ว่าคุณไม่ได้เรียกใช้
ไฟล์เดียวในระบบไฟล์รูทของผลลัพธ์อาจเป็น/lib64
symlink ไปยังเคอร์เนลและ initrd (แม้ว่าในระบบ Ubuntu หนึ่งที่ฉันกำลังดูอยู่พวกเขาไม่มีอยู่) หรือsymlink บนระบบ 64 บิต
ปัญหาอาจเกิดจากการที่/lib64 -> /lib
symlink ถูกลบไปแล้ว มันค่อนข้างน่ารังเกียจเหมือนกันทุกโปรแกรมจะพึ่งพา symlink นั้น:
$ ldd /bin/bash
...
/lib64/ld-linux-x86-64.so.2 (0x00007f8946ab7000)
นั่นld-linux
คือพลโหลดเดอร์แบบไดนามิกและถ้าไม่พร้อมใช้งานคุณจะไม่สามารถเรียกใช้งานโปรแกรมเรียกทำงานแบบไดนามิกใด ๆ สิ่งนี้จะทำให้เป็นการยากมากในการเข้าสู่ระบบและคุณอาจไม่สามารถเลย
busybox
หนึ่งอาจจะช่วยให้รอด เรียกใช้สิ่งนี้เพื่อตรวจสอบ:
$ ldd /bin/busybox
not a dynamic executable
ในกรณีนี้ busybox ควรจะทำงานได้ แต่คำถามคือคุณจะใช้งานได้อย่างไร?
หากคุณมีสิทธิ์เข้าถึงพรอมต์บูตโหลดเดอร์คุณอาจจะสามารถบู๊ตได้โดยinit=/bin/static-sh
ที่ static-sh เป็น symlink ไปที่busybox
(ตรวจสอบว่า/bin/static-sh
มีอยู่ - มันทำบนระบบของฉัน แต่ไม่ใช่ Ubuntu มาตรฐาน ข้อผิดพลาดนี้แสดงว่าพร้อมใช้งาน .)
เมื่อคุณมีรูทเชลล์คุณสามารถสร้าง/lib64
symlink ใหม่ได้ คุณอาจต้องติดตั้งระบบไฟล์รูทใหม่ก่อนเพื่ออ่าน / เขียน busybox ควรมีเครื่องมือเหล่านี้อยู่ภายในซึ่งคุณสามารถเรียกใช้ดังนี้:
# busybox mount -o remount,rw /
# busybox ln -s /lib /lib64
# /bin/bash
bash#
หากทุบตีทำงานปัญหาควรได้รับการแก้ไข
-r
อาร์กิวเมนต์rm
หรือเพียงแค่ทำตามคำสั่งที่คุณแสดง ผู้ให้บริการโฮสต์ของคุณมีวิธีใด ๆ ในการเข้าถึงอิมเมจดิสก์นอกเครื่องนั้นหรือไม่?