find also has -delete which avoids the exec overhead, not much of an impact
here but worth noting if you're removing lots.
On 18 December 2016 at 00:38, Adam Vande More <amvandemore at gmail.com>
wrote:
> On Sat, Dec 17, 2016 at 3:01 PM, David Marec <david.marec at
davenulle.org>
> wrote:
>
> > [I had first posted onto the Forum about this issue]
> >
> > Two months ago,
> >
> > - next to a call to |`||delete-old-libs`| or `install world`, I
don't
> > really know -
> >
> > my box that is following FreeBSD-11 Stable ran into a weird situation.
> >
> > A set of files, especially `/lib/libjail.so.1` are in both states
> > `existing` and `not existing`:
> >
> > I means:
> >
> > david:~>cp ~david/libjail.so.1 /lib
> > cp: /lib/libjail.so.1: File exists
> >
> > But:
> >
> > david:~>ls /lib/libjail.so.1
> > ls: /lib/libjail.so.1: No such file or directory
> > david:~>find /lib -name "libjail.so.1" -print
> > /lib/libjail.so.1
> > david:~>find /lib -name "libjail.so.1" -ls
> > find: /lib/libjail.so.1: No such file or directory
> >
> > With deeper investigation, the file is in fact mapped to an `inode`:
> >
> > root at dmarec:~ # ls -di /lib
> > 13 /lib
> > root at dmarec:~ # zdb -dddd zroot/ 13 | grep libjail.so.1
> > libjail.so.1 = 10552574 (type: Regular File)
> >
> > Which fails with `zdb` on:
> >
> > root at dmarec:~ # zdb -dddd zroot/ 10552574
> > Dataset zroot [ZPL], ID 21, cr_txg 1, 114G, 2570002 objects,
> rootbp
> > DVA[0]=<0:b97d6ea00:200> DVA[1]=<0:1c212b0400:200>
[L0 DMU
> objset]
> > fletcher4 lz4 LE contiguous unique double size=800L/200P
> > birth=3852240L/3852240P fill=2570002
> > cksum=17b78fb7e4:7c87a526a07:16251edfaae60:2ce0c5734ccf2f
> >
> > Object lvl iblk dblk dsize lsize %full type
> > zdb: dmu_bonus_hold(10552574) failed, errno 2
> >
> >
> > `stat (2)` returns ENOENT when checking for the file:
> > david:~>truss stat -L /lib/libjail.so.1
> > ...
> > stat("/lib/libjail.so.1",0x7fffffffe7e8)
ERR#2 'No such
> > file or
> > directory' david:~>truss stat -L /lib/libjail.so.1
> >
> > A pass with `zfs scrub` didn't help.
> >
> > Any clue is welcome. What's that `dmu_bonus_hold` stands for ?
> >
>
> I am unable to understand what your intent is here. If you wish to delete
> it, you can do:
>
> find . -inum 10552574 -exec rm {} \;
>
> --
> Adam
> _______________________________________________
> freebsd-stable at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at
freebsd.org"
>