Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#36600 - [arch-install-scripts] pacstrap when called by mkarchroot ends in errors running umount

Attached to Project: Arch Linux
Opened by John (graysky) - Monday, 19 August 2013, 21:01 GMT
Last edited by Dave Reisner (falconindy) - Monday, 19 August 2013, 21:18 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

NOTE-I opened this task against pacstrap based on the advice in a thread[1] that /usr/bin/mkarchroot does not mount filesystems itself, rather, it does so through a call to pacstrap.

/usr/bin/mkarchroot fails to create a chroot cleanly if I ask it to install just base-devel (see attached log). By contrast, if I ask it to install both base and base-devel, it completes cleanly.

Completes fine: sudo mkarchroot /mnt/data/chroot/root base base-devel
Ends in error: sudo mkarchroot /mnt/data/chroot/root base-devel

Here are the last few lines to demonstrate the error; the complete log is attached:

% sudo mkarchroot /mnt/data/chroot/root base-devel

...

(83/84) installing texinfo [############################################] 100%
(84/84) installing which [############################################] 100%
umount: /mnt/data/chroot/root/dev: target is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
umount: /mnt/data/chroot/root: target is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
mknod(/mnt/data/chroot/root) failed: File exists
mknod(/mnt/data/chroot/root) failed: File exists
mknod(/mnt/data/chroot/root) failed: File exists
mknod(/mnt/data/chroot/root) failed: File exists
mknod(/mnt/data/chroot/root) failed: File exists
mknod(/mnt/data/chroot/root) failed: File exists

% df -h | grep chroot
udev 7.7G 0 7.7G 0% /mnt/data/chroot/root/dev
udev 7.7G 0 7.7G 0% /mnt/data/chroot/root/dev

I am unable to reproduce this error in a fresh VM; whatever is causing it seems to be unique to my workstation. As a sanity check, I have every member of the base and base-devel group installed on my workstation.

1. https://bbs.archlinux.org/viewtopic.php?id=168470

Additional info:
* package version(s) 11-1

Steps to reproduce:
sudo mkarchroot /mnt/data/chroot/root base-devel
(see attached log)
This task depends upon

Closed by  Dave Reisner (falconindy)
Monday, 19 August 2013, 21:18 GMT
Reason for closing:  None
Additional comments about closing:  Please use the forums for support. There's nothing to fix if you can't point to a bug.
Comment by Dave Reisner (falconindy) - Monday, 19 August 2013, 21:08 GMT
I can't reproduce this failure. Figure out what's using /dev. Presumably it's still mounted after mkarchroot fails.
Comment by John (graysky) - Monday, 19 August 2013, 21:17 GMT
I opened this task against pacstrap because /usr/bin/mkarchroot does not mount filesystems itself, rather, it does so through a call to pacstrap.

I am able to fix this issue by added a sleep step in the api_fs_umount function in /usr/bin/pacstrap. If you inspect the chroot2.log I attached, you will see that after installing 'which' the script sleeps for 5 sec, and then goes on to generate the locales and finish successfully.

Any thoughts?

Loading...