ในบทความต่อไปเราจะมาดูเรื่อง Maybe ด้วยเครื่องมือนี้เราจะสามารถทราบได้อย่างง่ายดาย คำสั่งหรือโปรแกรมจะทำอะไรก่อนที่จะดำเนินการ โดยตรงจากเทอร์มินัล เราจะบรรลุสิ่งนี้ด้วยบางที ยูทิลิตี้ รันกระบวนการภายใต้การควบคุมของ ptrace (ด้วยความช่วยเหลือของห้องสมุด หลาม-ptrace). เครื่องมือจะเริ่มทำงานเมื่อขัดขวางการเรียกระบบที่กำลังจะทำการเปลี่ยนแปลงระบบไฟล์ มันจะบันทึกการโทรนั้นจากนั้นแก้ไขการลงทะเบียน CPU เพื่อเปลี่ยนเส้นทางการโทรไปยังไฟล์ รหัส syscall ไม่ถูกต้อง (เปลี่ยนเป็น«ได้อย่างมีประสิทธิภาพไม่มีการดำเนินการ«) และตั้งค่าของการโทรที่ไม่ทำงานนั้นเป็นค่าที่บ่งบอกถึงความสำเร็จของการโทรเดิม
นี่เป็นเครื่องมือง่ายๆที่จะช่วยให้เราดำเนินการคำสั่งและ ดูว่ามันทำอะไรกับไฟล์ของเราโดยไม่ต้องทำจริง. หลังจากตรวจสอบผลลัพธ์ที่จะแสดงรายการเราแล้วเราสามารถตัดสินใจได้ว่าเราต้องการดำเนินการจริงหรือไม่
ติดตั้งบางทีบน Ubuntu
ในการใช้เครื่องมือนี้เราต้องมั่นใจว่า ได้ติดตั้ง จุดเล็ก ๆ ในระบบของเรา Gnu / ลินุกซ์ หากเรายังไม่ได้ติดตั้งสามารถทำได้ด้วยวิธีง่ายๆดังภาพด้านล่าง เราสามารถใช้เทอร์มินัล (Ctrl + Alt + T) ใน Debian, Ubuntu และ Linux Mint เขียนคำสั่งต่อไปนี้:
sudo apt-get install python-pip
เมื่อเราติดตั้ง pip ในระบบของเราแล้วเราสามารถดำเนินการคำสั่งต่อไปนี้เพื่อ ติดตั้งบางทีจากเทอร์มินัล:
sudo pip install maybe
เราสามารถเรียนรู้เพิ่มเติมเกี่ยวกับเครื่องมือนี้ได้ที่หน้า GitHub ของโครงการ
จะรู้ได้อย่างไรว่าคำสั่งหรือโปรแกรมจะทำอะไรก่อนที่จะดำเนินการ
การใช้เครื่องมือนี้ทำได้ง่ายมาก เราจะต้องทำ เพิ่มอาจจะอยู่หน้าคำสั่ง ที่เราต้องการดำเนินการในเทอร์มินัลของเรา ดังตัวอย่างคุณสามารถดูคำสั่งต่อไปนี้ที่ฉันเขียนในเทอร์มินัลของฉัน:
maybe rm -r Ubunlog/
คุณจะเห็นว่าฉันจะลบโดยใช้คำสั่ง "rm"โฟลเดอร์ชื่อ"Ubunlog»จากระบบของฉัน ในการจับภาพต่อไปนี้คุณจะเห็นผลลัพธ์ที่คำสั่งแสดงให้ฉันเห็นในเทอร์มินัล:
เครื่องมืออาจจะดำเนินการ 6 ระบบไฟล์และ I แสดงให้เห็นว่าคำสั่งนี้จะทำอะไร (RM-อาร์ Ubunlog/). ตอนนี้ฉันตัดสินใจได้แล้วว่าควรดำเนินการนี้หรือไม่ นี่เป็นตัวอย่างที่ค่อนข้างง่าย แต่ฉันคิดว่าคุณจะเห็นได้ว่าแนวคิดของเครื่องมือคืออะไร
ในกรณีที่ยูทิลิตี้ยังไม่ชัดเจนทั้งหมดนี่เป็นอีกตัวอย่างหนึ่ง ฉันกำลังจะติดตั้งไคลเอนต์เดสก์ท็อป กล่องจดหมาย สำหรับ Gmail สำหรับสิ่งนี้ฉันจะไปที่โฟลเดอร์ที่ฉันดาวน์โหลดไฟล์ AppImage และเปิดใช้งานด้วย Maybe นี่คือสิ่งที่ระบบแสดงให้ฉันเห็นในเทอร์มินัล (Ctrl + Alt + T):
maybe ./inboxer-0.4.0-x86_64.AppImage
ในกรณีที่ตรวจไม่พบเครื่องมือ ไม่มีการดำเนินการกับระบบไฟล์เทอร์มินัลจะแสดงข้อความให้เราทราบว่าไม่พบการทำงานใด ๆ ในระบบไฟล์ดังนั้นจึงไม่แสดงคำเตือน
จากนี้ไปเราจะสามารถรู้ได้อย่างง่ายดายว่าคำสั่งหรือโปรแกรมจะทำอะไรก่อนที่จะเรียกใช้งาน เป็นผลให้ระบบเชื่อว่าทุกสิ่งที่คุณพยายามทำนั้นเกิดขึ้นจริงเมื่อในความเป็นจริงมันไม่ได้
ถอนการติดตั้งอาจ
ในการลบเครื่องมือนี้ออกจากระบบปฏิบัติการของเราเราจะต้องใช้ตัวเลือกถอนการติดตั้งของ pip เท่านั้น ในการดำเนินการนี้เราเปิดเทอร์มินัล (Ctrl + Alt + T) และเขียนลงในนั้น:
sudo pip uninstall maybe
การเตือน
เราต้องระมัดระวังอย่างมากเมื่อใช้ยูทิลิตี้นี้ในระบบการผลิต หรือในระบบใด ๆ ที่มีข้อมูลที่ละเอียดอ่อน นี่ไม่ใช่เครื่องมือในการเรียกใช้โค้ดที่ไม่น่าเชื่อถือในระบบของเรา กระบวนการที่ทำงานภายใต้อาจจะยังคงทำให้เกิดความเสียหายร้ายแรงต่อระบบของเรา เนื่องจากมีการบล็อกการโทรระบบเพียงไม่กี่ครั้ง นอกจากนี้เรายังสามารถตรวจสอบได้ว่ามีการดำเนินการเช่นการลบไฟล์หรือไม่ ซิสคอล อ่านอย่างเดียวและปรับเปลี่ยนพฤติกรรมตามนั้น
สมมติว่ามีความคิดที่ไม่ดีในการเรียกใช้ rm -r / * ในฐานะผู้ดูแลระบบ