ถังขยะทำงานอย่างไรและฉันจะหาเอกสารอ้างอิงหรือข้อกำหนดอย่างเป็นทางการได้จากที่ไหน


14

เมื่อพยายามที่จะจัดการถังขยะจากติดวอลุ่มผมจบลงด้วยการอ่านการอ้างอิง FreeDesktop.org ของมัน

เมื่อพูดถึงและทำการทดสอบฉันรู้ว่า Ubuntu / Gnome ไม่ทำตามข้อกำหนด 100% นี่คือเหตุผล:

  • สำหรับพาร์ติชั่นที่ไม่ใช่ / พาร์ติชั่นมันมักจะใช้<driveroot>/.Trash-<uid>มันไม่เคยใช้<driveroot>/.Trash/<uid>แม้แต่ตอนที่ฉันสร้างไว้ล่วงหน้า ในขณะที่ใช้งานได้มันน่ารำคาญ: ถ้าฉันมีผู้ใช้ 15 คนฉันลงเอยด้วย 15 /.Trash-xxxโฟลเดอร์ในไดรฟ์ของฉันในขณะที่วิธีอื่นจะยังคงให้โฟลเดอร์เดียว (ที่มี 15 โฟลเดอร์ย่อย) "มลพิษ" ในไดรฟ์ของฉันไม่เป็นที่พอใจมาก และรายละเอียดบอกว่า " ถ้า$topdir/.Trashไม่มี$topdir/.Trash-$uidไดเรกทอรีจะต้องใช้ไดเรกทอรี " มันมีอยู่แล้วทำไมมันไม่เคยใช้มัน?

  • ถังขยะรากไม่ทำงานอย่างน้อยไม่ออกนอกกรอบ เปิดหอยโข่งเป็นรูทแล้วคลิกที่ถังขยะ มันทำให้เกิดข้อผิดพลาด พยายามที่จะลบไฟล์ใด ๆ มันบอกว่า "มันไม่สามารถย้ายไปที่ถังขยะ" /root/.local/shareตกลงฉันรู้ว่านี้สามารถแก้ไขได้โดยการสร้าง แต่สเป็คบอกว่า " ไดเรกทอรี" ถังขยะที่บ้าน "ควรสร้างขึ้นโดยอัตโนมัติสำหรับผู้ใช้ใหม่ใด ๆ หากไดเรกทอรีนี้เป็นสิ่งจำเป็นสำหรับการดำเนินการ trashing แต่ไม่มีอยู่การใช้งานควรสร้างขึ้นโดยอัตโนมัติโดยไม่มีคำเตือนหรือความล่าช้า " ทำไมจึงเกิดข้อผิดพลาด ข้อผิดพลาด?

  • เหตุใดฉันจึงต้องเปลี่ยน/etc/fstabรายการสำหรับโวลุ่มที่เมานต์เพิ่มตัวเลือกเช่น uid และ guid หากโวลุ่มนั้นถูกเมาท์เป็น RW สำหรับทุกคนแล้ว

นี่เป็นเพียงตัวอย่างของการเบี่ยงเบนจากมาตรฐาน ดังนั้นคำถามคือ:

"ถ้าอูบุนตูไม่ติด 100% สเปค, วิธีว่าไม่ทำงานถังขยะ? ฉันสามารถหาอ้างอิงทางเทคนิคสำหรับการดำเนินงานของ Ubuntu จากถังขยะหรือไม่"

โดยวิธีการ: ถ้าอูบุนตูเกิดขึ้นกับรายละเอียดโปรดบอกฉันว่าฉันทำอะไรผิดโดยเฉพาะอย่างยิ่งเกี่ยว/.Trash-<uid>กับ/.Trash/<uid>ปัญหาvs

ขอบคุณ!

แก้ไข:

ข้อมูลเพิ่มเติมบางส่วน:

  • หาก fs ที่กำหนดไม่มีการสนับสนุนบิตเหนียว (VFAT, NTFS) ก็อาจไม่มีสิทธิ์เช่นกัน (อย่างน้อย VFAT จะไม่แน่นอน) ดังนั้นสิ่งที่จะช่วยป้องกันผู้ใช้จากการกวาดล้าง/การฟื้นฟูผู้ใช้คนอื่น./Trash-xxx? ถ้าใครสามารถอ่าน / เขียนถังขยะของตัวเองคน ๆ หนึ่งก็สามารถทำเช่นเดียวกันกับไดรฟ์ทั้งหมด Gnome หรือมีการป้องกัน "พิเศษ" บางอย่างใน./Trash-xxxโฟลเดอร์ใน VFAT / NTFS fs หรือไม่?

  • หาก Linux สามารถ "เลียนแบบ" การอนุญาตไฟล์ในการติดตั้ง NTFS โดยแก้ไข/fstabตัวเลือก uid และ gid มันจะ "เลียนแบบ" บิตเหนียวได้หรือไม่ ฉันต้องการใช้/.Trash/xxxรูปแบบจริงๆ...

  • สำหรับปัญหาราก: สำหรับพาร์ติชัน / /root/.local/share/Trashฉันจะสามารถใช้ถังขยะเป็นรากและมันจะไป แต่ถ้าฉันคลิกที่ Nautilus "ถังขยะ" (เป็น root) ฉันได้รับข้อผิดพลาด ไม่ใช่เหรอ ดังนั้นไฟล์จึงถูกทิ้งอย่างถูกต้อง แต่ฉันไม่สามารถเข้าถึงได้ สิ่งที่ฉันทำได้คือ "ล้าง" พวกมันเอง (โดยการลบไฟล์บน/root/.local/share/Trash) แต่การกู้คืนจะยุ่งยากมาก (การเปิดไฟล์ข้อมูลและการย้ายด้วยตนเอง ฯลฯ )

  • สำหรับ non- / พาร์ติชั่น (หรืออย่างน้อยสำหรับ VFAT / NTFS) ฉันไม่สามารถใช้ถังขยะเป็น root ได้: มันไม่ได้สร้าง./Trash-0โฟลเดอร์เพียงแค่บอกว่า "ไม่สามารถทิ้งขยะต้องการลบอย่างถาวรหรือไม่" ทำไม?

  • เกี่ยวกับ fstab: ฉันใช้เพื่อเมาท์ถาวรสำหรับพาร์ติชัน NTFS ของฉัน ฉันมีหลายอย่างและถ้าไม่ใช่ "ติดตั้งล่วงหน้า" พวกเขาถ่วงเดสก์ท็อปและ / หรือ Nautilus จริงๆ ฉันอยากจะมีมันก่อนติดแบบบูรณาการในระบบแฟ้มของฉันในเมาท์เหมือน/data, /windows/xp, /windows/vistaและอื่น ๆ และการลา/mediaและ "mount / unmount" ความยืดหยุ่นเพียงสำหรับไดรฟ์ที่ถอดออกได้อย่างแท้จริง

ดังนั้นถ้า Ubuntu / Gnome ตามสเป็คจริง ๆ มีวิธีใดบ้างในการแก้ไขปัญหารูทและ "เลียนแบบ" บิตเหนียวสำหรับ (อย่างน้อย) พาร์ติชั่นถาวร NTFS fstab'ed ของฉันหรือไม่

คำตอบ:


3

GNOME ใช้. ถังขยะอย่างถูกต้องเท่าที่ฉันเข้าใจถ้าคุณดูในแหล่ง gio / glocalfile.c คุณจะเห็นว่ามันพยายามใช้ไดเรกทอรี. trash หากมีอยู่ โปรดทราบว่าไดเรกทอรีจะต้องมีสิทธิ์ที่ถูกต้องสำหรับผู้ใช้เพื่อให้สามารถเก็บไฟล์ขยะได้อย่างปลอดภัย (และในที่นี่อย่างปลอดภัยฉันหมายความว่าผู้ใช้รายอื่นจะไม่สามารถกู้คืนไฟล์ที่อยู่ในถังขยะของผู้ใช้ได้) สำหรับ GNOME นี้กำหนดว่าไดเรกทอรี. Trash จะต้องมีการกำหนดบิตเหนียวไว้ในนั้น - ดูที่ถังขยะไดเรกทอรีหมายเหตุ (1) ในข้อกำหนดถังขยะของ FreeDesktop.Org

ปัญหาหลักของวิธีการข้างต้นคือสื่อที่ถอดได้ r / w ส่วนใหญ่ที่คุณพบคือ FAT ซึ่งไม่รองรับบิตเหนียวดังนั้นวิธีเดียวที่จะจัดการเรื่องนี้อย่างปลอดภัยคือการใช้ไดเรกทอรีถังขยะต่อผู้ใช้

เกี่ยวกับ Root Trash - ฉันไม่สามารถทำซ้ำปัญหาที่คุณอธิบายได้มันทำงานได้ดีสำหรับฉัน

เกี่ยวกับ / etc / fstab - ฉันไม่แน่ใจว่ามีปัญหาอะไร: คุณควรจะยุ่งกับ fstab ยกเว้นว่าคุณต้องการควบคุมเต็มรูปแบบที่ติดตั้งระบบไฟล์ภายนอก โดยปกติสื่อบันทึกข้อมูลแบบถอดได้จะติดตั้งโดยอัตโนมัติเมื่อตรวจพบ / สื่อสำหรับผู้ใช้ที่กำลังใช้งานอยู่ แต่จะไม่สามารถเข้าถึงผู้ใช้รายอื่นได้ หากคุณต้องการตั้งค่าที่แตกต่างกันคุณควรยุ่งกับไฟล์การกำหนดค่า ฉันไม่เห็นว่าเกี่ยวข้องกับถังขยะอย่างไร


ขอบคุณ! คุณให้ข้อมูลที่น่าสนใจแก่ฉันมากมายและคำถามสองสามข้อก็เกิดขึ้น ... ฉันควรถาม / ตอบความคิดเห็นของคุณที่ไหน? ที่นี่ในความคิดเห็นนี้หรือแก้ไขคำถามเดิมของฉัน
MestreLion

Ive ทำเครื่องหมายว่าคุณเป็นคำตอบที่ยอมรับ ... แต่ถ้าเป็นไปได้โปรดตอบคำถามใหม่ ive ที่กล่าวถึงในคำถาม (แก้ไข) ของฉัน และขอบคุณมากสำหรับคำตอบของคุณ!
MestreLion

1

สายนี้หน่อย แต่ถ้าใครสนใจ: ฉันมีปัญหาเดียวกัน แต่ตามคำแนะนำฉันดาวน์โหลดโลมา จากนั้นฉันก็วิ่งโลมาไปที่sudo dolphinเทอร์มินัล

ตอนนี้คลิกขวาที่ถังขยะและเลือกถังขยะที่ว่างเปล่าล้างไฟล์แทนที่จะทำให้เกิดข้อผิดพลาด

สิ่งนี้ไม่ได้เกี่ยวข้องกับคำถามของคุณ แต่เป็นเพียงการแก้ไข

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