AdGuardHome V107.6


Based on

Came here because of log error: [fatal] initing hosts container: hosts container: path at index 0: stat etc/hosts: os: DirFS with empty root

There is a known issue with adguardhome which has been rectified in later verison, current supported ( version 107.6 has this flaw and I am unable to start AdGuard on my openwrt install:

|Model|Linksys WRT3200ACM|
|Architecture|ARMv7 Processor rev 1 (v7l)|
|Target Platform|mvebu/cortexa9|
|Firmware Version|OpenWrt 21.02.5 r16688-fa9a932fdb / LuCI openwrt-21.02 branch git-22.245.77575-63bfee6|

Please update AdGuardHome to latest 107.20 to resolve this issue

UPDATE: Anyone with experience on what would happen if I use their automatic install guide curl command?

UPDATE2: Used and installed latest from curl, seems working am able to reach webui, gonna configure and report back.

UPDATE3: Seems to work like a charm, recommend you:

  1. add DNS to /etc/resolve.conf to be able to use opkg ( or what ever you wish)
  2. opkg update
  3. opkg install curl
  4. curl -s -S -L | sh -s -- -v
  5. underpants
1 Like

Bugs against community packages should be filed here:

AdguardTeam: latest version by git or 107.20 to resolve a bug · Issue #20142 · openwrt/packages (

done... do you think it will be added soon, or should I just revert my install? (right now I manually add dns to each connected device..:dotted_line_face:

No idea, sorry.

You should tag the maintainer in the issue you opened though, I'm not sure who or what you were trying to tag there but it's a dead link.

1 Like

@jamesmacwhite iirc was helping do the opkg version for OpenWrt.

If you want to use the 108 version then you can use my thread to install that version instead of the opkg version till they fix it?


Change, thanks for the heads up.

Gonna check it out, mine has no real DNS nameserver at the moment after I changed of dnsmasq to port 54 with a script on the package wiki smh

I'm just somewhat confused about 108V numbering, isn't their latest

EDIT: I see beta is 108 kk

1 Like

just be aware that the opkg version does a few things different to if you use agh regular version. If you have a scroll in my thread I believe James and I detail the differences but from what I recall...

The config file lives in /etc/config/adguardhome rather than AGH's default of /opt/AdGuardHome

the filters logs etc are saved in /tmp and thus are lost on reboot.

I think there may have been a few other bits but that's the main parts.

:edit: its listed in the wiki here :

The official OpenWrt package uses the following paths and directories by default:

  • The AdGuardHome application will be installed to /usr/bin/AdGuardHome.
  • The main adguardhome.yaml configuration file is stored at /etc/adguardhome.yaml.
  • The default working directory is /var/adguardhome (By default /var is a symlink to /tmp).
  • The working directory can be configured in /etc/config/adguardhome
  • An init.d script is provided at /etc/init.d/adguardhome.
    The default configured working directory will mean query logs and statistics will be lost on a reboot. To avoid this you should configure a persistent storage path such as /opt or /mnt with external storage and update the working directory accordingly.

You can use my thread to update/use the stable 107 tree by using my scripts and just removing the beta script part. (so it installs the stable 107 rather than beta 108)

That would give you a install to /opt that is in line with the manual install detailed on the AGH wiki.

:edit: It seems you have managed by using their install script. Just check to see that its properly installed in /opt and remove the old opkg files.

Underpants are good :stuck_out_tongue:

Seems you were correct in your warnings, although I tested while power cycling the router after a power outage it seems the install went to default and adguard isn't starting once more... back to square one, have the error again:

[fatal] initing hosts container: hosts container: path at index 0: stat etc/hosts: os: DirFS 

with empty root
Really hope openwrt will update the official package.

Using the below states I already have it installed:

curl -s -S -L | sh -s -- -v

At a loss :\


I'm an idiot:

[fatal] writing config file: write /opt/AdGuardHome/.AdGuardHome.yaml2240086222: no space left on device
Filesystem                Size      Used Available Use% Mounted on
/dev/root                 4.3M      4.3M         0 100% /rom
tmpfs                   248.7M    252.0K    248.5M   0% /tmp
/dev/ubi0_1              55.8M     55.8M         0 100% /overlay
overlayfs:/overlay       55.8M     55.8M         0 100% /
ubi1:syscfg              70.2M    532.0K     66.1M   1% /tmp/syscfg
tmpfs                   512.0K         0    512.0K   0% /dev

Any thoughts on this?


I figured the retention span could be a problem on such a small device so to get it back running I deleted /opt/AdGuardHome/data/querylog.json which was about 20MB, restarted the service and reduced retention to 24H instead of default 90 days

Back up running

Let's see.

I'd have suggested removing the opkg version completely and then reinstalling the stable AGH from their script but you have managed.

You do need about 100mb of space in /opt for AGH. You may need 6hr logs only if you only have 20mb free. Also as the AGH binary is 35mb you will not be able to upgrade as it will run out of space.
Its detailed in my thread.

Thanks for that, I have gone ahead and opkg removed adguardhome which freed up some space:

Filesystem                Size      Used Available Use% Mounted on
/dev/root                 4.3M      4.3M         0 100% /rom
tmpfs                   248.7M     88.0K    248.6M   0% /tmp
/dev/ubi0_1              55.8M     31.1M     21.8M  59% /overlay
overlayfs:/overlay       55.8M     31.1M     21.8M  59% /
ubi1:syscfg              70.2M    532.0K     66.1M   1% /tmp/syscfg
tmpfs                   512.0K         0    512.0K   0% /dev
/dev/sda1                29.2G     24.0K     27.7G   0% /mnt/sda1

I've also added a usb stick in hopes I can direct logs there instead of anything else, I'm going to look if all possible to have the logs rotate into that and if not just create a cron job to do this and delete.

Base root is only 55.8 in total, how am I to get it to 100 when this is on the actual router? (don't want to repartition /tmp)

if you mount your usb stick as /opt you can install all of AGH directly onto the usb stick and thus not worry about space. just make sure you are in the /opt folder when you run the script.

1 Like

Great idea. Was trying to edit my main to add the storage issue that came up after but for some reason am unable to do so - need to add there to use your suggestion to remove the opkg installed adguardhome, dumb down the retention and optionally add usb stick as /opt instead.

1 Like

mount your usb as /opt and use my thread to install the manual version. Either install the stable or beta version (I suggest using the beta as they do fixes faster and its been stable for me and others.)

That way you don't need to worry about logs as your usb drive will have plenty of space for it all.

Yes, I've gone ahead and done as suggested:

Filesystem                Size      Used Available Use% Mounted on
/dev/root                 4.3M      4.3M         0 100% /rom
tmpfs                   248.7M     92.0K    248.6M   0% /tmp
/dev/ubi0_1              55.8M     31.2M     21.7M  59% /overlay
overlayfs:/overlay       55.8M     31.2M     21.7M  59% /
ubi1:syscfg              70.2M    532.0K     66.1M   1% /tmp/syscfg
tmpfs                   512.0K         0    512.0K   0% /dev
/dev/sda1                29.2G     52.4M     27.6G   0% /opt

Just wanted to point it out in my initial message.

I personally prefer stable releases; I value calmness over living on the edge these days.

Side note:

root@MainT:/# du -h /overlay/
0       /overlay/work/work
0       /overlay/work
8.0K    /overlay/upper/etc/opkg/keys
8.0K    /overlay/upper/etc/opkg
0       /overlay/upper/etc/rc.d
8.0K    /overlay/upper/etc/init.d
8.0K    /overlay/upper/etc/dropbear
8.0K    /overlay/upper/etc/hotplug.d/block
8.0K    /overlay/upper/etc/hotplug.d
0       /overlay/upper/etc/luci-uploads
0       /overlay/upper/etc/modules-boot.d
8.0K    /overlay/upper/etc/modules.d
0       /overlay/upper/etc/uci-defaults
64.0K   /overlay/upper/etc/config
168.0K  /overlay/upper/etc
4.0K    /overlay/upper/lib/functions/fsck
4.0K    /overlay/upper/lib/functions
0       /overlay/upper/lib/upgrade/keep.d
0       /overlay/upper/lib/upgrade
28.0K   /overlay/upper/lib
0       /overlay/upper/mnt/usb
0       /overlay/upper/mnt/sda1
0       /overlay/upper/mnt
**15.8M   /overlay/upper/opt/AdGuardHome/data/filters**
**18.0M   /overlay/upper/opt/AdGuardHome/data**
**52.6M   /overlay/upper/opt/AdGuardHome**

What should I do with the overlay/upper/opt folder, can I safely delete that you think?

ahhh but this is where AGH trips you up. While the 107 branch is technically the stable release, fixes are rolled into the 108 branch and I know some were not back ported to 107. Technically AGH is really still beta in its workings thus why I recommend the 108 branch to use as that is the primary fix tree.

check the date and times of the files in those folders. In theory you should be able to purge them as they are left over from your attempt to install AGH directly on your router which is now not required as you have it on the USB key via /opt.

1 Like