On 28/04/2023 15:16, Dimitry Andric wrote:

yes, I have Boot Environment created before system upgrade (I always create BE 
before system or pkg upgrades) and there are automatic snapshot from cron.

Should I try to clone it and reproduce it again?

I will file a PR today.

I have seen some bad behavior in the past from etcupdate, when you interrupted 
it (with control-C) at the 'wrong' time. In that case, it would have built up a 
bad tree in /var/db/etcupdate, and as a result *delete* almost all files in 
/etc! However, this problem has been solved, as far as I know, and the effect 
was definitely not zero-sized files, but really deleted ones.

If you have a good way of reproducing it, I think the etcupdate maintainers 
will be interested enough, moreover since mergemaster is going to go away.

I have saved screens of the whole upgrade process so I am sure everything was fine without any error printed on the screen, nothing was interrupted etc. but the result was more than 80 empty files.

And the next thing which bothers me there is no way to fix the half updated state of /etc/ by etcupdate. I had to use mergemaster to fix it. How can we fix something like this in 14 without mergemaster?


root@rico ~/ # etcupdate
  D /etc/amd.map
  D /etc/newsyslog.conf.d/amd.conf
  D /etc/rc.d/amd
  D /etc/rc.d/nsswitch
  D /etc/rc.d/timed
  U /.profile
  U /COPYRIGHT
  U /etc/defaults/devfs.rules
  U /etc/defaults/rc.conf
  U /etc/devd.conf
  U /etc/devd/hyperv.conf
  U /etc/devd/iwmbtfw.conf
  U /etc/devd/zfs.conf
  U /etc/disktab
  M /etc/group
  U /etc/inetd.conf
  U /etc/libalias.conf
  U /etc/login.conf
  U /etc/mail/Makefile
  U /etc/mail/freebsd.cf
  U /etc/mail/freebsd.mc
  U /etc/mail/freebsd.submit.cf
  U /etc/mail/freebsd.submit.mc
  U /etc/mail/helpfile
  U /etc/mail/sendmail.cf
  U /etc/mail/submit.cf
  U /etc/mtree/BSD.debug.dist
  U /etc/mtree/BSD.include.dist
  U /etc/mtree/BSD.lib32.dist
  U /etc/mtree/BSD.root.dist
  U /etc/mtree/BSD.sendmail.dist
  U /etc/mtree/BSD.tests.dist
  U /etc/mtree/BSD.usr.dist
  U /etc/mtree/BSD.var.dist
  U /etc/network.subr
  C /etc/newsyslog.conf
  U /etc/portsnap.conf
  U /etc/profile
  U /etc/rc
  U /etc/rc.d/FILESYSTEMS
  U /etc/rc.d/archdep
  U /etc/rc.d/auditd
  U /etc/rc.d/bluetooth
  U /etc/rc.d/cleanvar
  U /etc/rc.d/ctld
  U /etc/rc.d/devmatch
  U /etc/rc.d/dhclient
  U /etc/rc.d/dumpon
  U /etc/rc.d/fsck
  U /etc/rc.d/growfs
  U /etc/rc.d/gssd
  U /etc/rc.d/hostapd
  U /etc/rc.d/hostid
  U /etc/rc.d/hostid_save
  U /etc/rc.d/ipfs
  U /etc/rc.d/ipfw
  U /etc/rc.d/jail
  U /etc/rc.d/ldconfig
  U /etc/rc.d/linux
  U /etc/rc.d/local
  U /etc/rc.d/local_unbound
  U /etc/rc.d/lockd
  U /etc/rc.d/motd
  U /etc/rc.d/mountcritremote
  U /etc/rc.d/mountd
  U /etc/rc.d/mountlate
  U /etc/rc.d/netif
  U /etc/rc.d/nfsd
  U /etc/rc.d/ntpd
  U /etc/rc.d/os-release
  U /etc/rc.d/pf
  U /etc/rc.d/routed
  U /etc/rc.d/routing
  U /etc/rc.d/statd
  U /etc/rc.d/syscons
  U /etc/rc.d/tmp
  U /etc/rc.d/wpa_supplicant
  U /etc/rc.d/zfs
  U /etc/rc.d/zfsbe
  U /etc/rc.d/zvol
  U /etc/rc.firewall
  U /etc/rc.initdiskless
  U /etc/rc.subr
  U /etc/regdomain.xml
  U /etc/security/audit_event
  U /etc/services
  U /etc/ssh/moduli
  U /etc/ssh/ssh_config
  C /etc/ssh/sshd_config
  M /etc/syslog.conf
  U /etc/ttys
  U /root/.profile
  A /etc/kyua/kyua.conf
  A /etc/motd.template
  A /etc/rc.d/growfs_fstab
  A /etc/rc.d/tlsclntd
  A /etc/rc.d/tlsservd
  A /etc/rc.d/var_run
  A /etc/rc.d/zfskeys
  A /etc/rc.d/zpool
  A /etc/rc.d/zpoolreguid
  A /root/.shrc
  A /usr/share/nls/en_US.US_ASCII
Warnings:
  Modified regular file remains: /etc/motd

Usr: 14.828s Krnl: 7.174s Totl: 0:58.53s CPU: 37.5% swppd: 0 I/O: 28179+16114



root@rico ~/ # etcupdate resolve
Resolving conflict in '/etc/newsyslog.conf':
Select: (p) postpone, (df) diff-full, (e) edit,
        (h) help for more options: df

Select: (p) postpone, (df) diff-full, (e) edit,
        (h) help for more options: e

Select: (p) postpone, (df) diff-full, (e) edit, (r) resolved,
        (h) help for more options: r

Resolving conflict in '/etc/ssh/sshd_config':
Select: (p) postpone, (df) diff-full, (e) edit,
        (h) help for more options: df

Select: (p) postpone, (df) diff-full, (e) edit,
        (h) help for more options: e

Select: (p) postpone, (df) diff-full, (e) edit, (r) resolved,
        (h) help for more options: r


root@rico ~/ # etcupdate status
Warnings:
  Modified regular file remains: /etc/motd



Also there was etcupdate -p before installworld.

Kind regards
Miroslav Lachman


Reply via email to