Behavior of trash bin

Hello. I am having a weird issue with trash bin:

I have a gib file (for testing) called Age.sh in a disk (/dev/sda) mounted in /run/media/Grandón/Descargas.

If I do gio trash Age.sh it works inmediately and it appears in the disk .Trash-1000/files folder. Besides, if I go to dolphin and press “del” (which is set to “move to trash bin”) it takes several minutes and it moves to main disk trash bin (~/.local/share/Trash/files) folder.

In dolphin, preferences, trash bin, the folder exists (/run/media/Grandón); besides, move to trash bin always send it to my other disk.

It only happens with this disk folder; my other disks doesn’t have these problems.

My info:

╰─λ garuda-inxi
System:
Kernel: 6.13.5-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
clocksource: tsc avail: hpet,acpi_pm
parameters: BOOT_IMAGE=/vmlinuz-linux-zen
root=UUID=fa13788d-7bd4-4c6f-a84c-5a183071b3fb rw rootflags=subvol=@
quiet loglevel=3 splash video=DP-1:2560x1440@165 ibt=off
Desktop: KDE Plasma v: 6.3.2 tk: Qt v: N/A info: frameworks v: 6.11.0
wm: kwin_wayland vt: 1 dm: SDDM Distro: Garuda base: Arch Linux
Machine:
Type: Desktop System: Micro-Star product: MS-7C37 v: 2.0
serial: <superuser required>
Mobo: Micro-Star model: MPG X570 GAMING PLUS (MS-7C37) v: 2.0
serial: <superuser required> uuid: <superuser required> UEFI: American
Megatrends LLC. v: A.P1 date: 08/30/2024
Battery:
Device-1: hidpp_battery_0 model: Logitech Wireless Mouse MX Master 3
serial: <filter> charge: 100% (should be ignored) rechargeable: yes
status: discharging
Device-2: hidpp_battery_1 model: Logitech MX Keys Wireless Keyboard
serial: <filter> charge: 50% (should be ignored) rechargeable: yes
status: discharging
CPU:
Info: model: AMD Ryzen 5 5600X bits: 64 type: MT MCP arch: Zen 3+ gen: 3
level: v3 note: check built: 2022 process: TSMC n6 (7nm) family: 0x19 (25)
model-id: 0x21 (33) stepping: 2 microcode: 0xA201210
Topology: cpus: 1x dies: 1 clusters: 1 cores: 6 threads: 12 tpc: 2
smt: enabled cache: L1: 384 KiB desc: d-6x32 KiB; i-6x32 KiB L2: 3 MiB
desc: 6x512 KiB L3: 32 MiB desc: 1x32 MiB
Speed (MHz): avg: 3719 min/max: 550/4651 boost: enabled scaling:
driver: amd-pstate-epp governor: performance cores: 1: 3719 2: 3719 3: 3719
4: 3719 5: 3719 6: 3719 7: 3719 8: 3719 9: 3719 10: 3719 11: 3719 12: 3719
bogomips: 88798
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities: <filter>
Graphics:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 22 [Radeon RX 6700/6700
XT/6750 XT / 6800M/6850M XT] vendor: Tul / PowerColor driver: amdgpu
v: kernel arch: RDNA-2 code: Navi-2x process: TSMC n7 (7nm) built: 2020-22
pcie: gen: 4 speed: 16 GT/s lanes: 16 ports: active: DP-1,DP-2
empty: DP-3,HDMI-A-1,Writeback-1 bus-ID: 2f:00.0 chip-ID: 1002:73df
class-ID: 0300
Display: wayland server: X.org v: 1.21.1.16 with: Xwayland v: 24.1.6
compositor: kwin_wayland driver: X: loaded: amdgpu
unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
gpu: amdgpu d-rect: 5120x1440 display-ID: 0
Monitor-1: DP-1 pos: right model: VG27AQA1A serial: <filter> built: 2023
res: mode: 2560x1440 hz: 165 scale: 100% (1) dpi: 109 gamma: 1.2
size: 597x336mm (23.5x13.23") diag: 685mm (27") ratio: 16:9 modes:
max: 2560x1440 min: 720x400
Monitor-2: DP-2 pos: primary,left model: Philips 27M2N5500
serial: <filter> built: 2024 res: mode: 2560x1440 hz: 165 scale: 100% (1)
dpi: 109 gamma: 1.2 size: 597x336mm (23.5x13.23") diag: 685mm (27")
ratio: 16:9 modes: max: 2560x1440 min: 720x400
API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
device: 1 drv: swrast gbm: drv: kms_swrast surfaceless: drv: radeonsi
wayland: drv: radeonsi x11: drv: radeonsi
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.3.4-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon RX 6700 XT (radeonsi
navi22 LLVM 19.1.7 DRM 3.61 6.13.5-zen1-1-zen) device-ID: 1002:73df
memory: 11.72 GiB unified: no display-ID: :1.0
API: Vulkan v: 1.4.304 layers: 12 device: 0 type: discrete-gpu name: AMD
Radeon RX 6700 XT (RADV NAVI22) driver: N/A device-ID: 1002:73df
surfaces: xcb,xlib,wayland device: 1 type: cpu name: llvmpipe (LLVM
19.1.7 256 bits) driver: N/A device-ID: 10005:0000
surfaces: xcb,xlib,wayland
Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
de: kscreen-console,kscreen-doctor gpu: corectrl wl: wayland-info
x11: xdpyinfo, xprop, xrandr
Audio:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 21/23 HDMI/DP Audio
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 2f:00.1 chip-ID: 1002:ab28 class-ID: 0403
Device-2: Advanced Micro Devices [AMD] Starship/Matisse HD Audio
vendor: Micro-Star MSI driver: snd_hda_intel v: kernel pcie: gen: 4
speed: 16 GT/s lanes: 16 bus-ID: 31:00.4 chip-ID: 1022:1487 class-ID: 0403
API: ALSA v: k6.13.5-zen1-1-zen status: kernel-api with: aoss
type: oss-emulator tools: N/A
Server-1: PipeWire v: 1.2.7 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
vendor: Micro-Star MSI X570-A PRO driver: r8169 v: kernel pcie: gen: 1
speed: 2.5 GT/s lanes: 1 port: d000 bus-ID: 27:00.0 chip-ID: 10ec:8168
class-ID: 0200
IF: enp39s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
IF-ID-1: br-80a5f53c3dc7 state: down mac: <filter>
IF-ID-2: br-9c4bfc1d0f92 state: up speed: 10000 Mbps duplex: unknown
mac: <filter>
IF-ID-3: docker0 state: down mac: <filter>
IF-ID-4: veth524e936 state: up speed: 10000 Mbps duplex: full
mac: <filter>
Info: services: NetworkManager, nginx, smbd, sshd, systemd-networkd,
systemd-timesyncd
Drives:
Local Storage: total: 12.18 TiB used: 4.65 TiB (38.2%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 980 PRO 1TB
size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: 5B2QGXA7 temp: 48.9 C
scheme: GPT
ID-2: /dev/nvme1n1 maj-min: 259:7 vendor: Samsung
model: SSD 970 EVO Plus 500GB size: 465.76 GiB block-size: physical: 512 B
logical: 512 B speed: 31.6 Gb/s lanes: 4 tech: SSD serial: <filter>
fw-rev: 2B2QEXM7 temp: 40.9 C scheme: MBR
ID-3: /dev/sda maj-min: 8:0 vendor: Seagate model: ST3000DM008-2DM166
size: 2.73 TiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
tech: HDD rpm: 7200 serial: <filter> fw-rev: CC26 scheme: GPT
ID-4: /dev/sdb maj-min: 8:16 vendor: Seagate model: ST4000NE001-2MA101
size: 3.64 TiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
tech: HDD rpm: 7200 serial: <filter> fw-rev: TN05 scheme: GPT
ID-5: /dev/sdc maj-min: 8:32 vendor: Samsung model: SSD 840 EVO 250GB
size: 232.89 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
tech: SSD serial: <filter> fw-rev: DB6Q scheme: GPT
ID-6: /dev/sdd maj-min: 8:48 vendor: Seagate model: ST9640320AS
size: 596.17 GiB block-size: physical: 512 B logical: 512 B speed: 3.0 Gb/s
tech: HDD rpm: 5799 serial: <filter> fw-rev: SDM1 scheme: MBR
ID-7: /dev/sde maj-min: 8:64 vendor: HGST (Hitachi) model: HDN726040ALE614
size: 3.64 TiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
tech: HDD rpm: 7200 serial: <filter> fw-rev: W7JH scheme: GPT
Partition:
ID-1: / raw-size: 679.12 GiB size: 679.12 GiB (100.00%)
used: 142.33 GiB (21.0%) fs: btrfs dev: /dev/nvme0n1p5 maj-min: 259:5
ID-2: /boot raw-size: 1000 MiB size: 965.9 MiB (96.59%)
used: 268.9 MiB (27.8%) fs: ext4 dev: /dev/nvme0n1p6 maj-min: 259:6
ID-3: /boot/efi raw-size: 100 MiB size: 99.2 MiB (99.21%)
used: 28 MiB (28.2%) fs: vfat dev: /dev/nvme0n1p2 maj-min: 259:2
ID-4: /home raw-size: 679.12 GiB size: 679.12 GiB (100.00%)
used: 142.33 GiB (21.0%) fs: btrfs dev: /dev/nvme0n1p5 maj-min: 259:5
ID-5: /var/log raw-size: 679.12 GiB size: 679.12 GiB (100.00%)
used: 142.33 GiB (21.0%) fs: btrfs dev: /dev/nvme0n1p5 maj-min: 259:5
ID-6: /var/tmp raw-size: 679.12 GiB size: 679.12 GiB (100.00%)
used: 142.33 GiB (21.0%) fs: btrfs dev: /dev/nvme0n1p5 maj-min: 259:5
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 31.26 GiB used: 6.78 GiB (21.7%)
priority: 100 comp: zstd avail: lzo-rle,lzo,lz4,lz4hc,deflate,842
max-streams: 12 dev: /dev/zram0
Sensors:
System Temperatures: cpu: 60.9 C mobo: N/A gpu: amdgpu temp: 52.0 C
mem: 52.0 C
Fan Speeds (rpm): N/A gpu: amdgpu fan: 1270
Info:
Memory: total: 32 GiB available: 31.26 GiB used: 11.96 GiB (38.3%)
Processes: 467 Power: uptime: 7h 38m states: freeze,mem,disk suspend: deep
avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
suspend, test_resume image: 12.48 GiB services: org_kde_powerdevil,
power-profiles-daemon, upowerd Init: systemd v: 257 default: graphical
tool: systemctl
Packages: 2594 pm: pacman pkgs: 2585 libs: 637
tools: gnome-software,octopi,paru,yay pm: flatpak pkgs: 9 Compilers:
clang: 19.1.7 gcc: 14.2.1 Shell: garuda-inxi default: fish v: 4.0.0
running-in: konsole inxi: 3.3.37
Garuda (2.7.2-1):
System install date:     2025-01-28
Last full system update: 2025-03-09 ↻
Is partially upgraded:   No
Relevant software:       snapper NetworkManager dracut
Windows dual boot:       Probably (Run as root to verify)
Failed units:            run-media-proxmox9.mount systemd-networkd-wait-online.service

Thanks in advance.

Hi @Hammerhand, this article may help explain the different behaviors you are seeing:

Dolphin - ArchWiki

Moving files into trash takes long on external drives

For moving files into the Trash, it is required that the user has exclusive access rights to the Trash. The rationale being that you do not want that others can see what you deleted. For that, a folder such as .Trash-1000/ is created on the external drive, with permission mode 700.

If the correct access permissions cannot be set, dolphin will (unlike GNOME) move the files to the trash in the home directory, which takes time.

To mount USB-Sticks / external HDDs, Dolphin uses Udisks. FAT32 / EXFAT / NTFS do not support UNIX file permission, udisk mounts them by default with mode 755. To configure udisks to mount these drives with mode 700, have a look at the file /etc/udisks2/mount_options.conf.example. Copy the file (the name should end with .conf), uncomment the relevant part and add for the three filesystems to the lines with xyz_defaults the options fmask=177,dmask=077.

(Background information: [3], [4])

1 Like

Thanks for your help but I think it isn’t: it’s an ext4 hard drive, not an usb-stick.

What I’ve seen and it’s strange is this:

This is the info from dolphin of any other unit. As you see, file system and mount point info is shown.

Besides, the info from the unit in which the trash bin doesn’t work is:

I think it’s not being mounted the same way (or dolphin doesn’t recognize it the same).

They are both mounted from fstab, though:

LABEL=Masivo                                /mnt/Masivo       ext4    rw                                      0 0

LABEL=Grandón                               /mnt/Grandón      ext4    rw                                      0 0
ls -ld /mnt/Grandón /mnt/Masivo

drwxr-xr-x - manuel 11 mar 18:17  /mnt/Grandón
drwxr-xr-x - manuel 10 mar 18:27  /mnt/Masivo
✦2  ╰─λ lsblk -o NAME,MOUNTPOINT,FSTYPE,UUID

NAME        MOUNTPOINT      FSTYPE UUID
sda
└─sda1      /mnt/Grandón    ext4   0c251ba0-8c89-4ebd-90b8-74399b17a59a
sdb
└─sdb3      /mnt/Documentos ext4   56f68d43-e739-4e0a-97d0-d31ff189484d
sdc
└─sdc1      /mnt/Juegos2    ext4   b1c75da2-66d4-4edd-b7a7-5a13db8eb772
sdd
└─sdd1
sde
└─sde1      /mnt/Masivo     ext4   8f7204fa-d17f-4306-9670-214207061ede
sdf
zram0       [SWAP]          swap   757aa913-84a6-4bb6-8e49-feee350f9aa7
nvme0n1
├─nvme0n1p1                 ntfs   38025B3D025AFF76
├─nvme0n1p2 /boot/efi       vfat   8928-2516
├─nvme0n1p3
├─nvme0n1p4 /mnt/Windows    ntfs   01DAD3AFC92A6FB0
├─nvme0n1p5 /root           btrfs  fa13788d-7bd4-4c6f-a84c-5a183071b3fb
└─nvme0n1p6 /boot           ext4   38ac0b22-f884-4657-bb62-ec3ca3c11593
nvme1n1
└─nvme1n1p1 /mnt/Juegos     ext4   14ef3dca-63c7-4bec-858d-95b0d67ff865

It does not matter if it is a USB stick or not.

The article explains why Dolphin handles Trash differently than gio or other Gnome utilities, and how to adjust permissions to correct this if needed. I’m not sure what else to say about it.

1 Like

Sorry, I thought it was related to exfat/ntfs/fat32 units.

I have created the .Trash-1000 folder and gave it permission mode 700, with same result.

About mount_options.conf, my file is the default example:

# This file contains custom mount options for udisks 2.x
# Typically placed at /etc/udisks2/mount_options.conf
#
# The simplified syntax is 'fs_signature[:fs_driver]_key=value1,value2,...'
# where 'fs_signature' is the on-disk superblock identifier as exposed by blkid/udev
# and 'fs_driver' is (optionally) the filesystem type (a kernel driver) passed
# to the mount call. The 'key' is either "defaults", "allow" or "drivers".
#
# Refer to http://storaged.org/doc/udisks2-api/latest/mount_options.html
#

### Simple global overrides
# [defaults]
# # common options, applied to any filesystem, always merged with specific filesystem type options
# defaults=ro
# allow=exec,noexec,nodev,nosuid,atime,noatime,nodiratime,ro,rw,sync,dirsync,noload

### Specific filesystem type options
# vfat_defaults=uid=$UID,gid=$GID,shortname=mixed,utf8=1,showexec,flush
# vfat_allow=uid=$UID,gid=$GID,flush,utf8,shortname,umask,dmask,fmask,codepage,iocharset,usefree,showexec
# ntfs_defaults=uid=$UID,gid=$GID,windows_names
# ntfs_allow=uid=$UID,gid=$GID,umask,dmask,fmask,locale,norecover,ignore_case,windows_names,compression,nocompression,big_writes

### Matching single block device by its UUID
# [/dev/disk/by-uuid/18afd8f0-0d86-4d96-8de0-5f92d2ee9800]
# vfat_defaults=uid=$UID,gid=$GID,noexec
#
# [/dev/disk/by-label/EFI]
# vfat_defaults=uid=$UID,gid=$GID,noexec,umask=111,dmask=000


### For the reference, these are the builtin mount options:
# [defaults]
# allow=exec,noexec,nodev,nosuid,atime,noatime,nodiratime,relatime,strictatime,lazytime,ro,rw,sync,dirsync,noload,acl,nosymfollow
# 
# vfat_defaults=uid=$UID,gid=$GID,shortname=mixed,utf8=1,showexec,flush
# vfat_allow=uid=$UID,gid=$GID,flush,utf8,shortname,umask,dmask,fmask,codepage,iocharset,usefree,showexec
# 
# # common options for both the native kernel driver and exfat-fuse
# exfat_defaults=uid=$UID,gid=$GID,iocharset=utf8,errors=remount-ro
# exfat_allow=uid=$UID,gid=$GID,dmask,errors,fmask,iocharset,namecase,umask
# 
# # 'ntfs' signature, definitions for the legacy ntfs kernel driver and the ntfs-3g fuse driver
# ntfs:ntfs_defaults=uid=$UID,gid=$GID,windows_names
# ntfs:ntfs_allow=uid=$UID,gid=$GID,umask,dmask,fmask,locale,norecover,ignore_case,windows_names,compression,nocompression,big_writes
# 
# # 'ntfs' signature, the new 'ntfs3' kernel driver
# ntfs:ntfs3_defaults=uid=$UID,gid=$GID
# ntfs:ntfs3_allow=uid=$UID,gid=$GID,umask,dmask,fmask,iocharset,discard,nodiscard,sparse,nosparse,hidden,nohidden,sys_immutable,nosys_immutable,showmeta,noshowmeta,prealloc,noprealloc,hide_dot_files,nohide_dot_files,windows_names,nocase,case
# 
# # define order of filesystem driver priorities for the actual mount call,
# # required definition for non-matching driver names
# ntfs_drivers=ntfs3,ntfs
# 
# iso9660_defaults=uid=$UID,gid=$GID,iocharset=utf8,mode=0400,dmode=0500
# iso9660_allow=uid=$UID,gid=$GID,norock,nojoliet,iocharset,mode,dmode
# 
# udf_defaults=uid=$UID,gid=$GID,iocharset=utf8
# udf_allow=uid=$UID,gid=$GID,iocharset,utf8,umask,mode,dmode,unhide,undelete
# 
# hfsplus_defaults=uid=$UID,gid=$GID,nls=utf8
# hfsplus_allow=uid=$UID,gid=$GID,creator,type,umask,session,part,decompose,nodecompose,force,nls
# 
# btrfs_allow=compress,compress-force,datacow,nodatacow,datasum,nodatasum,autodefrag,noautodefrag,degraded,device,discard,nodiscard,subvol,subvolid,space_cache
# 
# f2fs_allow=discard,nodiscard,compress_algorithm,compress_log_size,compress_extension,alloc_mode
# 
# xfs_allow=discard,nodiscard,inode32,largeio,wsync
# 
# reiserfs_allow=hashed_relocation,no_unhashed_relocation,noborder,notail
# 
# ext2_defaults=errors=remount-ro
# ext2_allow=errors=remount-ro
# 
# ext3_defaults=errors=remount-ro
# ext3_allow=errors=remount-ro
# 
# ext4_defaults=errors=remount-ro
# ext4_allow=errors=remount-ro

don’t know if I could change anything to solve it in an ext4 unit.

If I do:
QT_LOGGING_RULES="kf.kio.workers.file.debug=true" dolphin
This is the message I receive when I send a file (PROBANDO.mp4) to trash:
kf.kio.workers.file: copy() QUrl("file:///run/media/Grandón/Descargas/PROBANDO.mp4") to QUrl("file:///home/manuel/.local/share/Trash/files/PROBANDO.mp4") mode= 484

As you can see, it sends it to the main disk.

I would use Shift+Del

Well, this would delete the file, not send it to trash bin; in this disk I would prefer to have them in the trash bin for some days.

Then just wait or open issue on dolphin :slight_smile:

Ok, I can wait for sure, just asking because it’s weird all my disks works fine but one; don’t know where should I go to open this issue on dolphin: in kde forums?

As I see that you are a fourder of Garuda Linux, I want to take this opportunity to thank you for your work.

1 Like

Why not over uuid ?

Tried both, with same result, so I think it doesn’t matter. But yeah, I’m gonna change them to uuid.

Nope. Same result. Just informing, I already informed too in dolphin bugs board.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.