# How do I disable automount of USB disks?

**URL:** <https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729>\
**Category:** Router\
**Created:** [October 1, 2026, 11:25pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729 "2026-10-01T23:25:07Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![pdf](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/p/f14d63/32.png) [@pdf](https://forum.gl-inet.com/u/pdf)\
**Post date:** [October 1, 2026, 11:25pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/1 "2026-10-01T23:25:07Z")

</div>

I need stable mount paths. Bonus points for excluding disks by UUID.

The built-in`gl_nas_diskmanager` mounts partitions under `/tmp/mountd/diskX_partY`, but with more than one disk, this is non-deterministic - the disk numbers are free to change at boot time. This is the reason no one should use the old /dev/sdX paths any more either - the only safe method is to rely on UUIDs or stable device identifiers (e.g. /dev/disk/by-id and friends on modern udev, but these are absent on openwrt, so UUIDs it is).

I added an fstab entry to /etc/config/fstab via UUID and the specific partition I need to mount mounts at the correct mountpoint, however gl\_nas\_diskmanager appears to do zero checks for whether a disk is mounted or owned by `block-mount`, and so it also mounts the disk under /tmp/mountd, which is a straight path to data corruption - I’m kind of shocked this was not prevented by the kernel, but I have no idea what the gl\_nas\_diskmanager binary blob is doing.

---

<div class="post-metadata">

**Author:** ![AI\_bot](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/a/ecccb3/32.png) [@AI\_bot](https://forum.gl-inet.com/u/AI_bot)\
**Post date:** [October 1, 2026, 11:25pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/2 "2026-10-01T23:25:58Z")

</div>

If `/etc/init.d/gl_nas_diskmanager` exists, disable the GL.iNet automounter and reboot so the UUID-based `fstab` entry is the only mount mechanism:

```sh
/etc/init.d/gl_nas_diskmanager stop
/etc/init.d/gl_nas_diskmanager disable
reboot

```

After reboot, verify with `mount` or `block info` that each partition is mounted only once at the configured path. Disabling this service may prevent the GL.iNet Network Storage page and its managed Samba/WebDAV/DLNA shares from detecting disks. To revert:

```sh
/etc/init.d/gl_nas_diskmanager enable
/etc/init.d/gl_nas_diskmanager start

```

I am not aware of a documented `gl_nas_diskmanager` option for excluding selected UUIDs. Please provide the router model and exact firmware version before applying this permanently, because the NAS service arrangement can differ between firmware branches and upgrades may restore its defaults.

> **This reply was generated by AI. Please verify its accuracy.**
> 
> GL.iNet Technical Support reviews and responds to relevant threads on business days. Please allow time for a staff response.

---

<div class="post-metadata">

**Author:** ![pdf](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/p/f14d63/32.png) [@pdf](https://forum.gl-inet.com/u/pdf)\
**Post date:** [October 1, 2026, 11:31pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/3 "2026-10-01T23:31:58Z")

</div>

This functions as a work-around, but would be nice if the application was smarter and/or more correct in its behaviour.

---

<div class="post-metadata">

**Author:** ![pdf](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/p/f14d63/32.png) [@pdf](https://forum.gl-inet.com/u/pdf)\
**Post date:** [October 1, 2026, 11:34pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/4 "2026-10-01T23:34:45Z")

</div>

I spoke too soon - after a short time, even with `/etc/init.d/gl_nas_diskmanager` disabled, the disk is again mounted under /tmp/mound even though it was already mounted elsewhere. This is extremely likely to cause disk corruption.

---

<div class="post-metadata">

**Author:** ![AI\_bot](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/a/ecccb3/32.png) [@AI\_bot](https://forum.gl-inet.com/u/AI_bot)\
**Post date:** [October 1, 2026, 11:35pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/5 "2026-10-01T23:35:08Z")

</div>

Disabling the init script is not sufficient if another NAS component or hotplug handler starts the automounter again. Before disabling additional services, capture which component is active immediately after the second mount appears:

```sh
block info
findmnt -rn -o SOURCE,TARGET,FSTYPE,OPTIONS
pgrep -af 'gl_nas|mountd|blockd'
logread | grep -Ei 'gl_nas|mountd|diskmanager|blockd|mount'

```

Please post those outputs with the router model and exact firmware version, redacting anything unrelated. This will distinguish a true second filesystem mount from an additional bind/alias mount and identify whether `gl_nas_diskmanager`, another GL.iNet NAS service, or OpenWrt hotplug created it. Until then, avoid writing through both paths; unmount the unwanted `/tmp/mountd/...` path before use.

> **This reply was generated by AI. Please verify its accuracy.**
> 
> GL.iNet Technical Support reviews and responds to relevant threads on business days. Please allow time for a staff response.

---

<div class="post-metadata">

**Author:** ![pdf](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/p/f14d63/32.png) [@pdf](https://forum.gl-inet.com/u/pdf)\
**Post date:** [October 1, 2026, 11:39pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/6 "2026-10-01T23:39:36Z")

</div>

```auto
root@moat:~# block info
/dev/sda1: UUID="bdde1e3a-ffab-4dbc-a02a-8afccc85e4fa" LABEL="moat-external" VERSION="1.0" MOUNT="/mnt/docker" TYPE="ext4"
root@moat:~# findmnt -rn -o SOURCE,TARGET,FSTYPE,OPTIONS
-ash: findmnt: not found
root@moat:~# pgrep -af 'gl_nas|mountd|blockd'
15605 /usr/bin/gl_nas_sys
20691 /usr/bin/gl_nas_diskmanager -e
root@moat:~# logread | grep -Ei 'gl_nas|mountd|diskmanager|blockd|mount'
Fri Oct 2 01:28:45 2026 user.notice ucitrack: Setting up non-init /etc/config/fstab reload handler: /sbin/block mount
Fri Oct 2 01:28:54 2026 daemon.notice procd: /etc/rc.d/S97gl_nas_sys: Command failed: ubus call service delete { "name": "samba4" } (Not found)
Fri Oct 2 01:29:02 2026 daemon.notice procd: /etc/rc.d/S99gl_nas_sys_dl: start app = /usr/bin/gl_nas_sys
Fri Oct 2 01:29:02 2026 daemon.notice procd: /etc/rc.d/S99gl_nas_sys_dl: === nas enable
Fri Oct 2 01:29:02 2026 daemon.notice procd: /etc/rc.d/S99gl_nas_sys_up: start app = /usr/bin/gl_nas_sys
Fri Oct 2 01:29:02 2026 daemon.notice procd: /etc/rc.d/S99gl_nas_sys_up: === nas enable
root@moat:~# mount
/dev/root on /rom type squashfs (ro,relatime,errors=continue)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime)
/dev/loop0 on /overlay type f2fs (rw,lazytime,noatime,background_gc=on,nogc_merge,discard,discard_unit=block,user_xattr,inline_xattr,acl,inline_data,inline_dentry,flush_merge,barrier,extent_cache,mode=adaptive,active_logs=6,alloc_mode=default,checkpoint_merge,fsync_mode=posix,memory=normal,errors=continue)
overlayfs:/overlay on / type overlay (rw,noatime,lowerdir=/,upperdir=/overlay/upper,workdir=/overlay/work,xino=off)
tmpfs on /dev type tmpfs (rw,nosuid,noexec,noatime,size=512k,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,noatime,mode=600,ptmxmode=000)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,noatime)
bpffs on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,noatime,mode=700)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,noatime)
/dev/sda1 on /mnt/docker type ext4 (rw,relatime)
/dev/sda1 on /tmp/mountd/disk2_part1 type ext4 (rw,relatime)

```

Router: Flint 4 GL.iNet GL-BE14000  
Firmware: be14000-4.11.0\_beta1-1103-0924-1790247785.bin

---

<div class="post-metadata">

**Author:** ![AI\_bot](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/a/ecccb3/32.png) [@AI\_bot](https://forum.gl-inet.com/u/AI_bot)\
**Post date:** [October 1, 2026, 11:40pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/7 "2026-10-01T23:40:04Z")

</div>

The output confirms a genuine second mount, and `gl_nas_diskmanager -e` has been restarted despite its own init script being disabled. The boot log indicates that `gl_nas_sys_dl` and `gl_nas_sys_up` start `/usr/bin/gl_nas_sys`, which is the likely supervisor launching the disk manager.

If you do not need GL.iNet Network Storage, disable the complete NAS service group:

```sh
for s in gl_nas_sys_dl gl_nas_sys_up gl_nas_sys gl_nas_diskmanager; do
    [-x "/etc/init.d/$s"] && /etc/init.d/$s stop
    [-x "/etc/init.d/$s"] && /etc/init.d/$s disable
done

pgrep -af 'gl_nas|mountd'
umount /tmp/mountd/disk2_part1
reboot

```

After reboot, confirm that `pgrep` shows no GL NAS processes and that `mount` lists `/dev/sda1` only at `/mnt/docker`. This disables GL.iNet-managed Samba/WebDAV/DLNA and the Network Storage interface. Mounting the same filesystem twice does not by itself prove corruption, but avoiding writes through both paths is prudent. Since this is Flint 4 beta firmware 4.11.0 beta1, the NAS supervisor ignoring the separately disabled disk-manager service should also be reviewed by GL.iNet staff.

> **This reply was generated by AI. Please verify its accuracy.**
> 
> GL.iNet Technical Support reviews and responds to relevant threads on business days. Please allow time for a staff response.

---

<div class="post-metadata">

**Author:** ![pdf](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/p/f14d63/32.png) [@pdf](https://forum.gl-inet.com/u/pdf)\
**Post date:** [October 1, 2026, 11:46pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/8 "2026-10-01T23:46:54Z")

</div>

It seems that accessing the UI for the “Network Storage” application automatically forces the service back to enabled:

```  
root@moat:~# for s in gl\_nas\_sys\_dl gl\_nas\_sys\_up gl\_nas\_sys gl\_nas\_diskmanager; do echo $s ; /etc/init.d/$s status ; done  
gl\_nas\_sys\_dl  
inactive  
gl\_nas\_sys\_up  
inactive  
gl\_nas\_sys  
running  
gl\_nas\_diskmanager  
Syntax: /etc/init.d/gl\_nas\_diskmanager [command]

Available commands:  
start Start the service  
stop Stop the service  
restart Restart the service  
reload Reload configuration files (or restart if service does not implement reload)  
enable Enable service autostart  
disable Disable service autostart  
enabled Check if service is started on boot  
```

---

<div class="post-metadata">

**Author:** ![AI\_bot](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/a/ecccb3/32.png) [@AI\_bot](https://forum.gl-inet.com/u/AI_bot)\
**Post date:** [October 1, 2026, 11:47pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/9 "2026-10-01T23:47:21Z")

</div>

This confirms that opening **Network Storage** starts `gl_nas_sys` on demand; it does not necessarily re-enable boot autostart. The inactive `gl_nas_sys_dl`/`gl_nas_sys_up` services alongside a running `gl_nas_sys` process indicate that the UI/API launched it directly. The disk-manager script simply does not implement `status`.

For now, avoid opening the Network Storage page when using UUID-based manual mounts. If it has been opened, stop the NAS processes before removing the duplicate mount:

```sh
/etc/init.d/gl_nas_sys stop
/etc/init.d/gl_nas_diskmanager stop
pgrep -af 'gl_nas|mountd'
umount /tmp/mountd/disk2_part1

```

Verify the target with `mount` before unmounting because the `diskX_partY` number can change. On Flint 4 firmware 4.11.0 beta1, the UI starting an automounter that mounts an already-mounted filesystem should be reviewed by GL.iNet staff; disabling init autostart alone cannot prevent an explicit UI/API launch.

> **This reply was generated by AI. Please verify its accuracy.**
> 
> GL.iNet Technical Support reviews and responds to relevant threads on business days. Please allow time for a staff response.

---

<div class="post-metadata">

**Author:** ![charles2](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/c/9dc877/32.png) [@charles2](https://forum.gl-inet.com/u/charles2)\
**Post date:** [October 14, 2026, 11:22am UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/11 "2026-10-14T11:22:32Z")

</div>

Hi,

Thank you for your detailed testing and feedback.

Since disabling the NAS-related services may affect other storage features, there is another approach you could consider if your main goal is to maintain a stable access path for your USB disk.

You could keep GL.iNet's automatic mounting enabled and use a symbolic link to provide a fixed access path for your USB disk, such as `/mnt/docker` .

The general steps would be:

1. Stop Docker or any applications using the disk, then disable the corresponding UUID mount entry in `/etc/config/fstab` . Safely unmount the original `/mnt/docker` mount point to avoid duplicate mounting.

2. Allow GL.iNet to mount the disk normally, then check its UUID and actual mount point using:

```auto
block info
mount

```

1. Once the disk is mounted by GL.iNet, you can create a symbolic link pointing to its actual mount location.  
Before running these commands, please make sure `/mnt/docker` is no longer mounted and is an empty directory. The path `/tmp/mountd/disk2_part1` is only an example; please replace it with the actual mount location.

```auto
rmdir /mnt/docker
ln -s /tmp/mountd/disk2_part1 /mnt/docker

```

1. Since the `diskX_partY` numbering may change after a reboot, you can use a custom hotplug or startup script to identify the disk by UUID and update the symbolic link after GL.iNet completes mounting.  
If this path is used by Docker, make sure the disk is properly mounted and the link is updated before Docker starts.

With this approach, `/mnt/docker` can provide a consistent access path while GL.iNet continues to manage disk mounting. Please note that `/mnt/docker` would be a symbolic link rather than an actual mount point.

Hope this helps!

---

<div class="post-metadata">

**Author:** ![pdf](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/p/f14d63/32.png) [@pdf](https://forum.gl-inet.com/u/pdf)\
**Post date:** [October 14, 2026, 3:45pm UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/12 "2026-10-14T15:45:18Z")

</div>

> [@charles2](#):
>
> Since the `diskX_partY` numbering may change after a reboot, you can use a custom hotplug or startup script to identify the disk by UUID and update the symbolic link after GL.iNet completes mounting.

Yes, this is the entire problem, which means that the built-in disk support is also broken, since it binds services to paths that don’t use stable disk ordering.

Also, this sort of hacking shouldn’t be required by users to work around a very dangerously broken closed source daemon - no Linux code should be able to mount a disk that is already mounted, I’m not even sure how this daemon manages to get around the kernel code that normally guards against this - it most not be using the standard mount APIs, but I can’t tell, because it’s a binary blob (that cannot even be reliably disabled).

I cannot stress how bad this behaviour is.

---

<div class="post-metadata">

**Author:** ![charles2](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/c/9dc877/32.png) [@charles2](https://forum.gl-inet.com/u/charles2)\
**Post date:** [October 19, 2026, 3:05am UTC](https://forum.gl-inet.com/t/how-do-i-disable-automount-of-usb-disks/71729/13 "2026-10-19T03:05:32Z")

</div>

Hi,

We’re sorry for the inconvenience and frustration this issue has caused.

We have reproduced the issue and submitted it to the relevant team for further investigation and resolution.  
Thank you for your detailed feedback and understanding. We will keep you updated when there is further progress.
