# Updating jails with ezjail-admin fails



## masteroman (Feb 9, 2017)

I've tried updating my basejail on the system with:

`ezjail-admin update -u`

but it is unfortunately failing with following message:


```
Looking up update.FreeBSD.org mirrors... 4 mirrors found.
Fetching metadata signature for 11.0-RELEASE from update6.freebsd.org... done.
Fetching metadata index... done.
Inspecting system... done.
Preparing to download files... done.

The following files will be added as part of updating to 11.0-RELEASE-p7:
/usr/src/contrib/libarchive/README.md
/usr/src/contrib/ntp/include/libssl_compat.h
/usr/src/contrib/ntp/libntp/libssl_compat.c
/usr/src/contrib/ntp/sntp/unity/ulib_setup.c
/usr/src/contrib/ntp/sntp/unity/ulib_teardown.c
/usr/src/contrib/tzdata/CONTRIBUTING
/usr/src/contrib/tzdata/LICENSE
/usr/src/contrib/tzdata/Makefile
/usr/src/contrib/tzdata/NEWS
/usr/src/contrib/tzdata/README
/usr/src/contrib/tzdata/Theory
/usr/src/contrib/tzdata/backzone
/usr/src/contrib/tzdata/checklinks.awk
/usr/src/contrib/tzdata/checktab.awk
/usr/src/contrib/tzdata/leapseconds.awk
/usr/src/contrib/tzdata/version
/usr/src/contrib/tzdata/zoneinfo2tdf.pl
Installing updates...install: /usr/jails/basejail//usr/src/contrib/libarchive/README.md: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/ntp/include/libssl_compat.h: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/ntp/libntp/libssl_compat.c: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/ntp/sntp/unity/ulib_setup.c: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/ntp/sntp/unity/ulib_teardown.c: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/CONTRIBUTING: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/LICENSE: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/Makefile: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/NEWS: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/README: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/Theory: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/backzone: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/checklinks.awk: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/checktab.awk: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/leapseconds.awk: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/version: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/zoneinfo2tdf.pl: No such file or directory
 done.
Looking up update.FreeBSD.org mirrors... 4 mirrors found.
Fetching metadata signature for 11.0-RELEASE from update4.freebsd.org... done.
Fetching metadata index... done.
Inspecting system... done.
Preparing to download files... done.

The following files will be added as part of updating to 11.0-RELEASE-p7:
/usr/share/zoneinfo/Asia/Barnaul
/usr/share/zoneinfo/Asia/Famagusta
/usr/share/zoneinfo/Asia/Tomsk
/usr/share/zoneinfo/Asia/Yangon
/usr/share/zoneinfo/Europe/Astrakhan
/usr/share/zoneinfo/Europe/Kirov
/usr/share/zoneinfo/Europe/Ulyanovsk
/usr/src/contrib/libarchive/README.md
/usr/src/contrib/ntp/include/libssl_compat.h
/usr/src/contrib/ntp/libntp/libssl_compat.c
/usr/src/contrib/ntp/sntp/unity/ulib_setup.c
/usr/src/contrib/ntp/sntp/unity/ulib_teardown.c
/usr/src/contrib/tzdata/CONTRIBUTING
/usr/src/contrib/tzdata/LICENSE
/usr/src/contrib/tzdata/Makefile
/usr/src/contrib/tzdata/NEWS
/usr/src/contrib/tzdata/README
/usr/src/contrib/tzdata/Theory
/usr/src/contrib/tzdata/backzone
/usr/src/contrib/tzdata/checklinks.awk
/usr/src/contrib/tzdata/checktab.awk
/usr/src/contrib/tzdata/leapseconds.awk
/usr/src/contrib/tzdata/version
/usr/src/contrib/tzdata/zoneinfo2tdf.pl
Installing updates...mkdir: /usr/jails/newjail//boot: No such file or directory
mtree: /usr/jails/newjail//boot/kernel: No such file or directory
mtree: /usr/jails/newjail//boot/kernel.old: No such file or directory
touch: /usr/jails/newjail//boot/kernel.old/.freebsd-update: No such file or directory
Could not create kernel backup directory
```

Host is already upgraded to 11.0-RELEASE-p7 but basejail is failing as you can see. Directories it is complaining about indeed don't exist (symlinked to wrong location it would seem). 

It is probably worth mentioning that basejail was deployed with:

`ezjail-admin install -p`

Is there any way to go around this. All suggestions are welcome.


----------



## SirDice (Feb 9, 2017)

It's not failing actually, it's only complaining there's no source and no kernel. Both of which can be ignored.


----------



## masteroman (Feb 9, 2017)

Thank you for the feedback. Every time I issue an update it is complaining about the same thing. Thing that got me confused was part where it is updating
/usr/share/ every time , but I guess that's because it is trying to install same update every time which contains all of those files?


----------



## masteroman (Apr 12, 2017)

Haven't found solution for this as of yet and I am not quite sure why does it fail this way. If anybody knows an answer I would very much appreciate it. I'm fine with it failing if it can be safely ignored, but I would very much like to know why is it failing 

Trying to install updates I get notices about newjail failing because of the missing boot directory. Complete error:


```
# ezjail-admin update -u
Looking up update.FreeBSD.org mirrors... 4 mirrors found.
Fetching metadata signature for 11.0-RELEASE from update6.freebsd.org... done.
Fetching metadata index... done.
Inspecting system... done.
Preparing to download files... done.

The following files will be added as part of updating to 11.0-RELEASE-p9:
/usr/src/contrib/libarchive/README.md
/usr/src/contrib/ntp/include/libssl_compat.h
/usr/src/contrib/ntp/libntp/libssl_compat.c
/usr/src/contrib/ntp/sntp/unity/ulib_setup.c
/usr/src/contrib/ntp/sntp/unity/ulib_teardown.c
/usr/src/contrib/tzdata/CONTRIBUTING
/usr/src/contrib/tzdata/LICENSE
/usr/src/contrib/tzdata/Makefile
/usr/src/contrib/tzdata/NEWS
/usr/src/contrib/tzdata/README
/usr/src/contrib/tzdata/Theory
/usr/src/contrib/tzdata/backzone
/usr/src/contrib/tzdata/checklinks.awk
/usr/src/contrib/tzdata/checktab.awk
/usr/src/contrib/tzdata/leapseconds.awk
/usr/src/contrib/tzdata/version
/usr/src/contrib/tzdata/zoneinfo2tdf.pl
Installing updates...install: /usr/jails/basejail//usr/src/contrib/libarchive/README.md: No such file or directory     install: /usr/jails/basejail//usr/src/contrib/ntp/include/libssl_compat.h: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/ntp/libntp/libssl_compat.c: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/ntp/sntp/unity/ulib_setup.c: No such file or directory                   install: /usr/jails/basejail//usr/src/contrib/ntp/sntp/unity/ulib_teardown.c: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/CONTRIBUTING: No such file or directory                           install: /usr/jails/basejail//usr/src/contrib/tzdata/LICENSE: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/Makefile: No such file or directory                               install: /usr/jails/basejail//usr/src/contrib/tzdata/NEWS: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/README: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/Theory: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/backzone: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/checklinks.awk: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/checktab.awk: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/leapseconds.awk: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/version: No such file or directory
install: /usr/jails/basejail//usr/src/contrib/tzdata/zoneinfo2tdf.pl: No such file or directory
 done.
Looking up update.FreeBSD.org mirrors... 4 mirrors found.                                                              Fetching metadata signature for 11.0-RELEASE from update5.freebsd.org... done.
Fetching metadata index... done.
Inspecting system... done.
Preparing to download files... done.

The following files will be added as part of updating to 11.0-RELEASE-p9:
/usr/share/zoneinfo/Asia/Barnaul
/usr/share/zoneinfo/Asia/Famagusta
/usr/share/zoneinfo/Asia/Tomsk
/usr/share/zoneinfo/Asia/Yangon
/usr/share/zoneinfo/Europe/Astrakhan
/usr/share/zoneinfo/Europe/Kirov
/usr/share/zoneinfo/Europe/Ulyanovsk
/usr/src/contrib/libarchive/README.md
/usr/src/contrib/ntp/include/libssl_compat.h
/usr/src/contrib/ntp/libntp/libssl_compat.c
/usr/src/contrib/ntp/sntp/unity/ulib_setup.c
/usr/src/contrib/ntp/sntp/unity/ulib_teardown.c
/usr/src/contrib/tzdata/CONTRIBUTING
/usr/src/contrib/tzdata/LICENSE
/usr/src/contrib/tzdata/Makefile
/usr/src/contrib/tzdata/NEWS
/usr/src/contrib/tzdata/README
/usr/src/contrib/tzdata/Theory
/usr/src/contrib/tzdata/backzone
/usr/src/contrib/tzdata/checklinks.awk
/usr/src/contrib/tzdata/checktab.awk
/usr/src/contrib/tzdata/leapseconds.awk
/usr/src/contrib/tzdata/version
/usr/src/contrib/tzdata/zoneinfo2tdf.pl
Installing updates...mkdir: /usr/jails/newjail//boot: No such file or directory
mtree: /usr/jails/newjail//boot/kernel: No such file or directory
mtree: /usr/jails/newjail//boot/kernel.old: No such file or directory
touch: /usr/jails/newjail//boot/kernel.old/.freebsd-update: No such file or directory
Could not create kernel backup directory
```

Looking at /usr/jails/newjail I can see that there are multiple broken symlinks (bin is symlink to /basejail/bin and that particular path doesn't exist:


```
# ll
total 46
-rw-r--r--   2 root  wheel   957 Sep 29  2016 .cshrc
-rw-r--r--   2 root  wheel   249 Sep 29  2016 .profile
-r--r--r--   1 root  wheel  6197 Sep 29  2016 COPYRIGHT
drwxr-xr-x   2 root  wheel     2 Feb 10 11:00 basejail/
lrwxr-xr-x   1 root  wheel    13 Feb 10 11:00 bin@ -> /basejail/bin
lrwxr-xr-x   1 root  wheel    14 Feb 10 11:00 boot@ -> /basejail/boot
dr-xr-xr-x   2 root  wheel     2 Sep 29  2016 dev/
drwxr-xr-x  25 root  wheel   103 Feb 10 11:00 etc/
lrwxr-xr-x   1 root  wheel    13 Feb 10 11:00 lib@ -> /basejail/lib
lrwxr-xr-x   1 root  wheel    17 Feb 10 11:00 libexec@ -> /basejail/libexec
drwxr-xr-x   2 root  wheel     2 Sep 29  2016 media/
drwxr-xr-x   2 root  wheel     2 Sep 29  2016 mnt/
dr-xr-xr-x   2 root  wheel     2 Sep 29  2016 proc/
lrwxr-xr-x   1 root  wheel    16 Feb 10 11:00 rescue@ -> /basejail/rescue
drwxr-xr-x   2 root  wheel     6 Sep 29  2016 root/
lrwxr-xr-x   1 root  wheel    14 Feb 10 11:00 sbin@ -> /basejail/sbin
lrwxr-xr-x   1 root  wheel    11 Sep 29  2016 sys@ -> usr/src/sys
drwxrwxrwt   2 root  wheel     2 Sep 29  2016 tmp/
drwxr-xr-x   5 root  wheel    15 Feb 10 11:00 usr/
drwxr-xr-x  25 root  wheel    25 Feb 10 11:00 var/
```

Is there any cure for this or at least concrete explanation as I'm unable to find one "online".

Thank you in advance.


----------



## royce (Feb 19, 2018)

I'm not sure that this specific failure mode (`ezjail-admin update -u`) ending with "Could not create kernel backup directory") is purely cosmetic. Running it again, instead of saying that there are no patches to install, simply produces the same output.

Edit: this workaround seems to be at least partially helpful. Most of the other advice on the Internet appears to be "use something other than ezjail". :/


----------

