Bug#842145: usrmerge: fails on nfsroot systems

2016-11-18 Thread Adrian Bunk
Control: severity -1 serious

On Wed, Oct 26, 2016 at 02:20:15PM +0100, James Cowgill wrote:
> On 26/10/16 14:11, Marco d'Itri wrote:
> > On Oct 26, James Cowgill  wrote:
> >> Can't rename('/sbin/.nfs003efaa00995~~tmp~usrmerge~~', 
> >> '/sbin/.nfs003efaa00995'): Device or resource busy at 
> >> /usr/lib/convert-usrmerge line 98
> > The .nfs* file is case of NFS silly rename, but I am not sure about why 
> > it happens here: did you check what 
> > /sbin/.nfs003efaa00995~~tmp~usrmerge~~ was?
> > Maybe there are possibile workarounds, but right now I do not have an 
> > environment to test this. Since convert-usrmerge can be run in a chroot 
> > on the NFS server maybe it would be easier to just make it fail if the 
> > root is NFS-mounted.
> 
> Yes that's is probably the easiest option
>...

I am raising the severity, since shipping usrmerge without anything like 
that in stretch would cause problems for many users.

cu
Adrian

-- 

   "Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
   "Only a promise," Lao Er said.
   Pearl S. Buck - Dragon Seed



Bug#842145: usrmerge: fails on nfsroot systems

2016-10-26 Thread James Cowgill
On 26/10/16 14:11, Marco d'Itri wrote:
> On Oct 26, James Cowgill  wrote:
>> Can't rename('/sbin/.nfs003efaa00995~~tmp~usrmerge~~', 
>> '/sbin/.nfs003efaa00995'): Device or resource busy at 
>> /usr/lib/convert-usrmerge line 98
> The .nfs* file is case of NFS silly rename, but I am not sure about why 
> it happens here: did you check what 
> /sbin/.nfs003efaa00995~~tmp~usrmerge~~ was?
> Maybe there are possibile workarounds, but right now I do not have an 
> environment to test this. Since convert-usrmerge can be run in a chroot 
> on the NFS server maybe it would be easier to just make it fail if the 
> root is NFS-mounted.

Yes that's is probably the easiest option

>> You can try correcting the errors reported and running again
>> /usr/lib/convert-usrmerge until it will complete without errors.  
> Did you try running /usr/lib/convert-usrmerge again?

I repeated it a few times. I had to restart various services in between
retries (I think I restarted everything by the end). Eventually it
succeeded.

>> I was thinking that it may be possible to fix this if the machine was
>> rebooted halfway though (after all the files have been moved, but all
>> the file symlinks still present), but I don't know if that would work.
> It is expected to.

I'll try that next time if possible.

James



signature.asc
Description: OpenPGP digital signature


Bug#842145: usrmerge: fails on nfsroot systems

2016-10-26 Thread Marco d'Itri
On Oct 26, James Cowgill  wrote:

> Can't rename('/sbin/.nfs003efaa00995~~tmp~usrmerge~~', 
> '/sbin/.nfs003efaa00995'): Device or resource busy at 
> /usr/lib/convert-usrmerge line 98
The .nfs* file is case of NFS silly rename, but I am not sure about why 
it happens here: did you check what 
/sbin/.nfs003efaa00995~~tmp~usrmerge~~ was?
Maybe there are possibile workarounds, but right now I do not have an 
environment to test this. Since convert-usrmerge can be run in a chroot 
on the NFS server maybe it would be easier to just make it fail if the 
root is NFS-mounted.

> You can try correcting the errors reported and running again
> /usr/lib/convert-usrmerge until it will complete without errors.  
Did you try running /usr/lib/convert-usrmerge again?

> I was thinking that it may be possible to fix this if the machine was
> rebooted halfway though (after all the files have been moved, but all
> the file symlinks still present), but I don't know if that would work.
It is expected to.

-- 
ciao,
Marco


signature.asc
Description: PGP signature


Bug#842145: usrmerge: fails on nfsroot systems

2016-10-26 Thread James Cowgill
Package: usrmerge
Version: 12
Severity: important

Hi,

Today I upgraded one of my mipsel machines to stretch. The machine is
an Ubiquiti ER8 router and because it doesn't have a hard disk
controller, it's booted using nfsroot.

After upgrading, I tried to install usrmerge which gave:

---
Setting up usrmerge (12) ...

FATAL ERROR:

Can't rename('/sbin/.nfs003efaa00995~~tmp~usrmerge~~', 
'/sbin/.nfs003efaa00995'): Device or resource busy at 
/usr/lib/convert-usrmerge line 98
   
You can try correcting the errors reported and running again
 
/usr/lib/convert-usrmerge until it will complete without errors.  
Do not install or update other Debian packages until the program  
has been run successfully. 

 
dpkg: error processing package usrmerge (--configure):
 subprocess installed post-installation script returned error exit status 1 
Processing triggers for man-db (2.7.5-1) ...
Errors were encountered while processing:   
 usrmerge   
E: Sub-process /usr/bin/dpkg returned an error code (1)
---

I then had to convert the machine to usrmerge the painful way. A
warning message for anyone using nfsroot would be nice.

I was thinking that it may be possible to fix this if the machine was
rebooted halfway though (after all the files have been moved, but all
the file symlinks still present), but I don't know if that would work.

Thanks,
James