我正在嘗試刪除 Nautilus 中的文件,每次我嘗試刪除一個文件時,它總是向我顯示以下訊息:
無法將檔案移至回收站,是否要立即刪除?
然後它給了我幾個問題。我想要的只是當我按下Delete鍵盤時,它會自動將其發送到垃圾桶。不用每次都問我。
此問題涉及 NTFS 分割區、外部驅動器,還包括 Linux 檔案系統。
鸚鵡螺無法移至垃圾箱的原因是什麼?
答案1
(關於可移動媒體,不是用戶的情況,因為這是透過更新解決的錯誤)
發生此行為的原因是安裝驅動器時,您不被視為所有者,因此無法建立垃圾箱。不uid或者吉德已分配,且由於無法在磁碟機中建立垃圾箱資料夾,因此您只能選擇自動刪除檔案。
在這種情況下,你有 2 個選擇:將檔案切入你的 Linux 檔案系統並在那裡刪除它們(這違背了按刪除鍵,檔案被刪除)或確保在安裝磁碟機時為您指派了正確的權限。
使用這些行為自動安裝的磁碟機建立新規則,使用您最喜歡的文字編輯器
gksudo gedit /etc/udev/rules.d/10-my-media-automount.rules
# vim:enc=utf-8:nu:ai:si:et:ts=4:sw=4:ft=udevrules:
#
# /etc/udev/rules.d/10-my-media-automount.rules
# start at sdb to ignore the system hard drive
KERNEL!="sd[b-z]*", GOTO="my_media_automount_end"
ACTION=="add", PROGRAM!="/sbin/blkid %N", GOTO="my_media_automount_end"
# import some useful filesystem info as variables
IMPORT{program}="/sbin/blkid -o udev -p %N"
# get the label if present, otherwise assign one based on device/partition
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k"
# create the dir in /media and symlink it to /mnt
ACTION=="add", RUN+="/bin/mkdir -p '/media/%E{dir_name}'"
# global mount options
ACTION=="add", ENV{mount_options}="relatime"
# filesystem-specific mount options (777/666 dir/file perms for ntfs/vfat)
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},gid=46,dmask=000,fmask=111,utf8"
# automount ntfs filesystems using ntfs-3g driver
ACTION=="add", ENV{ID_FS_TYPE}=="ntfs", RUN+="/bin/mount -t ntfs-3g -o %E{mount_options} /dev/%k '/media/%E{dir_name}'"
# automount all other filesystems
ACTION=="add", ENV{ID_FS_TYPE}!="ntfs", RUN+="/bin/mount -t auto -o %E{mount_options} /dev/%k '/media/%E{dir_name}'"
# clean up after device removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l '/media/%E{dir_name}'", RUN+="/bin/rmdir '/media/%E{dir_name}'"
# exit
LABEL="my_media_automount_end"
重新啟動您的計算機,您的 ntfs 驅動器將使用此自訂規則進行掛載,要更改已掛載驅動器的權限,請查看該行$env{mount_options},gid=46,dmask=000,fmask=111,utf8"
,該選項gid=46
應使用群組權限掛載 ntfs 驅動器(46(plugdev)
是允許用戶掛載的群組) Ubuntu 中的磁碟機),fmask
以及dmask
在磁碟機上寫入、建立、刪除檔案/資料夾的設定。
根據需要改變它。您需要根據每種類型自行整理其他檔案系統,但這應該可以幫助您開始。
(udev
規則來源)
答案2
對於使用者無法刪除儲存在不可移動分割區中的檔案的情況(Ubuntu 14.04)
正如 Bruno Pereira 所說,發生這種行為是因為使用者在分區的掛載點(在 OP 情況下為 /var)沒有寫權限,因此無法建立垃圾箱的目錄。
在這種情況下,OP 無法移動到 /var 分區中儲存的垃圾檔案。要解決這個問題:
$ cd /var
$ sudo mkdir .Trash-1000
$ chown user:group .Trash-1000
您將必須更換:
1000
透過您的使用者識別碼(請參閱檔案 /etc/passwd 中您的登入名稱後面的數字)user:group
分別透過您的登入名稱和群組
答案3
16.04,我遇到了同樣的問題。解決方案是開啟“磁碟”,點擊NTFS 分割區-> 下面的小齒輪圖示(其他分割區選項)->“編輯掛載選項”,然後在行中新增“uid=1000”(無引號,用逗號分隔)位於安裝點上方(見圖)。
如果您不是原始用戶,則應將 uid 設定為 1000 中的替代數字,如終端機中的「id」命令返回的那樣這裡。
答案4
如果分割區是 NTFS,則將uid
和新增gid
至<options>
分割區條目的部分,/etc/fstab
以便 Ubuntu 使您成為該分割區的擁有者。
id
首先,只需在終端機中輸入內容即可檢查您的 ID 。
$ id
然後添加您的uid
和gid
,如下所示,假設此處為 1000 -
/dev/disk/by-uuid/xxxx /mnt/Data ntfs-3g defaults,windows_names,uid=1000,gid=1000 0 0
現在,透過使用Disks
GUI 應用程式卸載和安裝分割區。 如果無法
卸載,則關閉所有可能正在使用該分割區的應用程序,例如檔案總管、終端機等。
cd
透過進入分區並輸入命令來交叉檢查ls -al
。