ป้องกัน Nautilus / Nemo จากการสร้างโฟลเดอร์. Trash-1000 ในอุปกรณ์ที่เมาท์


15

ทั้ง Nautilus และ Nemo สร้างโฟลเดอร์ที่ซ่อนอยู่ที่เรียกว่า .Trash-1000ในอุปกรณ์ที่ติดตั้งใด ๆ ดูเหมือนว่าจะจัดการโฟลเดอร์ถังขยะของพวกเขา นี่อาจทำให้เกิดความสับสนในไดรฟ์เครือข่ายที่ผู้ใช้รายอื่นติดตั้งซึ่งอาจใช้ระบบปฏิบัติการอื่นหรือโปรแกรมที่ไม่รู้จักโฟลเดอร์นี้เป็นถังขยะ

นอกจากนี้โฟลเดอร์นี้จะขยายออกตามจำนวนไฟล์ที่ถูกลบและไม่สามารถลบได้จาก Ubuntu:

$ sudo rm -rf ./.Trash-1000
rm: cannot remove './.Trash-1000/files': Directory not empty

ในการเพิ่มพื้นที่ว่างในวอลลุ่มที่ถูกเมานท์.Trash-1000โฟลเดอร์จะต้องถูกลบออกจากระบบอื่น

มีวิธีใดที่จะป้องกัน Nemo หรือ Nautilus จากการสร้างโฟลเดอร์นี้ในไดรฟ์เครือข่ายหรือไม่? ฉันไม่สามารถใช้มันได้อย่างเป็นธรรมชาติ แต่มันมีประโยชน์ในหลาย ๆ สถานการณ์


1
@ LuísdeSousaทีนี้ฉันได้ให้คำตอบเกี่ยวกับสถานการณ์ปัจจุบันซึ่งขณะนี้ยังไม่สามารถมีคุณลักษณะดังกล่าวได้ อย่างไรก็ตามฉันจะขอให้คุณอดทนรอในสัปดาห์หน้าหรืออย่างนั้นและฉันอาจกลับมาพร้อมทางออกที่ดีกว่า ตกลง ?
Sergiy Kolodyazhnyy

คุณสามารถสร้าง.Trash-1000โฟลเดอร์ว่างได้ด้วยตัวเองและใช้chmod 000 .Trash-1000และ / หรือsudo chattr +i .Trash-1000เพื่อป้องกันไม่ให้ Nautilus ทำการใส่ข้อมูล (ผมไม่ได้พยายามจริงนี้ แต่ฉันจะถ้าฉันมีปัญหานี้.)
pts

ส่วนนี้คล้ายกับวิธีแก้ปัญหาแบบดั้งเดิมใน thumb drive - สร้างไฟล์ว่าง (ไม่ใช่โฟลเดอร์) ที่เรียกว่า. trash-1000 ซึ่งจะทำให้เกิดความสับสนและน่ารำคาญพอที่จะหยุดมันได้
ดอนสดใส

@pts วิธีนี้จะทำให้ผู้ใช้รายอื่นสับสน ยิ่งไปกว่านั้นในแซมบ้าไดรฟ์สิทธิ์ Linux ไม่มีความหมาย
Luís de Sousa

@ LuísdeSousa: สำหรับการแบ่งปันของ Samba ให้ทำ chmod หรือ chattr บนเซิร์ฟเวอร์ Samba ( samba.org ) ฉันยอมรับว่าแต่ละวิธีแก้ปัญหาและวิธีแก้ปัญหามีการแลกเปลี่ยนกัน อย่างไรก็ตามมันจะดีกว่าที่จะรู้เกี่ยวกับการแก้ปัญหาและการแลกเปลี่ยนของมันกว่าที่จะไม่รู้ ดังนั้นฉันโพสต์มันเป็นความคิดเห็น
pts

คำตอบ:


15

หลังจากดูซอร์สโค้ดของ Nautilusและคำตอบของ Michael Stumpfl มันก็ชัดเจนว่าการสร้างโฟลเดอร์ถังขยะนั้นเป็นสิ่งที่เขียนโค้ดไว้ในซอร์สโค้ดของ Nautilus และเป็นส่วนหนึ่งของวิธีการlibgioทำงาน - ไลบรารีที่อยู่เบื้องหลังการจัดการไฟล์ในแอปพลิเคชัน ดังนั้นการปิดใช้งานพฤติกรรมดังกล่าวในปัจจุบันจึงเป็นไปไม่ได้หากไม่มีการคอมไพล์ตัวจัดการไฟล์ใหม่หรือแก้ไขซอร์สโค้ดของไลบรารี (ซึ่งฉันไม่แนะนำให้ทำเนื่องจากแอพพลิเคชั่นอื่นขึ้นอยู่กับแอพพลิเคชั่นอื่น ๆ

อาจเป็นทางออกที่ดีที่สุดคือเสนอคำขอคุณลักษณะให้กับผู้พัฒนา Nautilus และรอจนกว่าจะได้รับการแก้ไข หนึ่งยังสามารถรีสอร์ทเพื่อลบถาวรของไฟล์ผ่านShift+ Deleteตัดสั้นหรือใช้สาธารณูปโภคบรรทัดคำสั่งเช่นmv(ย้ายไปยังโฟลเดอร์ถังขยะของผู้ใช้ใน/ระบบแฟ้ม) rmหรือ มิฉะนั้น - เปลี่ยนเป็นใช้ตัวจัดการไฟล์อื่นในขณะนั้น


1
ถ้านี่เป็นรหัสยากที่libgioจะสร้างความแตกต่างในการใช้ตัวจัดการไฟล์ทางเลือกหรือไม่?
Luís de Sousa

4
@ libgioLuísdeSousaไม่จัดการไฟล์ทุกอาศัย ตัวอย่างเช่นโลมาไม่ได้ ตัวจัดการไฟล์บรรทัดคำสั่งเช่นmidnight-commanderไม่ โดยทั่วไปการใช้งานผู้ที่ไม่ได้พึ่งพา Gtk libgioเครื่องมือไม่ได้มาในการติดต่อกับ แน่นอนอาจมีข้อยกเว้น
Sergiy Kolodyazhnyy

0

สิ่งนี้ไม่ได้ป้องกันการสร้างโฟลเดอร์. ถังขยะ แต่เป็นวิธีง่ายๆในการจัดการกับปัญหาที่คุณระบุ

สิ่งนี้อาจดูเรียบง่ายเกินไป แต่ใช้แค่การโค้ง ในขณะที่:rm -rf .Trash-1000/*

รูปแบบ (*) ถูกขยายโดยเชลล์และ rm จะลงไปและลบไฟล์และไดเรกทอรีใด ๆ ที่มีชื่อตรงกับรูปแบบนั้น จะไม่พยายามลบโฟลเดอร์. Trash-1000 แต่จะลบ './.Trash-1000/files' แน่นอนใช้สิทธิ์ปกติ

`

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