Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
portage fails - errno 16 Device or resource busy
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
madman2003
Apprentice
Apprentice


Joined: 20 Feb 2005
Posts: 178

PostPosted: Sun Sep 10, 2006 7:01 pm    Post subject: portage fails - errno 16 Device or resource busy Reply with quote

Performing Global Updates: /usr/portage/profiles/updates/3Q-2006
(Could take a couple of minutes if you have a lot of binary packages.)
.='update pass' *='binary update' @='/var/db move'
s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'
......
ppTraceback (most recent call last):
File "/usr/lib/portage/bin/emerge", line 4049, in ?
emerge_main()
File "/usr/lib/portage/bin/emerge", line 3770, in emerge_main
portage.global_updates(settings, trees, mtimedb["updates"])
File "/usr/lib/portage/pym/portage.py", line 6656, in global_updates
myupd)
File "/usr/lib/portage/pym/portage_update.py", line 198, in update_config_files
write_atomic(updating_file, "".join(file_contents[x]))
File "/usr/lib/portage/pym/portage_util.py", line 728, in write_atomic
f.close()
File "/usr/lib/portage/pym/portage_util.py", line 696, in close
os.rename(self.name, self._real_name)
OSError: [Errno 16] Device or resource busy

It's definately being caused by the 3Q-2006, because i moved it to be sure. With it in place not even --help worked.
Any clue what might cause this?

Mod Edit: mad sticky and changed the topic from 'portage fails at global updates with errno 16' to 'portage fails - errno 16 Device or resource busy' - tomk
Back to top
View user's profile Send private message
avx
Advocate
Advocate


Joined: 21 Jun 2004
Posts: 2152

PostPosted: Sun Sep 10, 2006 7:06 pm    Post subject: Reply with quote

Same problem here.

No chance of syncing again or emerge an older portage :(

EDIT:

I overlooked
Quote:
It's definately being caused by the 3Q-2006, because i moved it to be sure.
before. Emerge works when the file is moved.

Last edited by avx on Sun Sep 10, 2006 7:23 pm; edited 1 time in total
Back to top
View user's profile Send private message
madman2003
Apprentice
Apprentice


Joined: 20 Feb 2005
Posts: 178

PostPosted: Sun Sep 10, 2006 7:09 pm    Post subject: Reply with quote

Portage 2.1.1 (default-linux/amd64/2006.1/desktop, gcc-4.1.1, glibc-2.4-r3, 2.6.
17-ck1-r3 x86_64)
=================================================================
System uname: 2.6.17-ck1-r3 x86_64 AMD Athlon(tm) 64 Processor 3000+
Gentoo Base System version 1.12.4
Last Sync: Sun, 10 Sep 2006 18:20:01 +0000
app-admin/eselect-compiler: [Not Present]
dev-lang/python: 2.3.5-r2, 2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache: [Not Present]
dev-util/confcache: [Not Present]
sys-apps/sandbox: 1.2.17
sys-devel/autoconf: 2.13, 2.59-r7
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils: 2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool: 1.5.22
virtual/os-headers: 2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -Os -pipe -msse3"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shu
tdown /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/shar
e/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms
/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=k8 -Os -pipe -msse3"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer nostrip sandbox sfperms strict"
GENTOO_MIRRORS="http://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://ftp.snt.utwe
nte.nl/pub/os/linux/gentoo"
INSTALL_MASK="/usr/bin/emerge"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1"
LINGUAS="en nl"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/d
istfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/local/nouveau /usr/portage/local/layman
/sunrise /usr/portage/local/layman/pro-audio /usr/portage/local/layman/science"
SYNC="rsync://rsync.nl.gentoo.org/gentoo-portage"
USE="amd64 X alsa aotuv avi berkdb bitmap-fonts cairo caps cdr cli crypt cups db
us dhcp dlloader dri dvd dvdr eds elibc_glibc emboss encode fam firefox flac for
tran gdbm gif gimpprint gpm gstreamer gtk gtk2 hal input_devices_keyboard input_
devices_mouse ipv6 isdnlog jack jpeg kernel_linux ldap libg++ linguas_en linguas
_nl mad mikmod minimal mp3 mpeg musepack ncurses nls nptl nptlonly nvidia offens
ive ogg oggvorbis opengl pam pcre pdf pdflib perl png ppds pppd python qt3 qt4 q
uicktime readline reflection sdl session spell spl ssl svg tcpd truetype truetyp
e-fonts type1-fonts udev unicode usb userland_GNU video_cards_nouveau video_card
s_nv vorbis xml xorg xv zlib"
Unset: CTARGET, EMERGE_DEFAULT_OPTS, LANG, PORTAGE_RSYNC_EXTRA_OPTS
Back to top
View user's profile Send private message
radfoj
Guru
Guru


Joined: 31 Dec 2004
Posts: 490
Location: Tísek, Czech Republic

PostPosted: Sun Sep 10, 2006 8:21 pm    Post subject: Reply with quote

Same here. We spoke about this in bugzilla: emerge crashes every time I try to use it.
Come on guys there, yours comments are welcome. :D
Back to top
View user's profile Send private message
lyonsd
Apprentice
Apprentice


Joined: 02 Mar 2005
Posts: 153
Location: Flowery Branch, GA

PostPosted: Mon Sep 11, 2006 12:50 pm    Post subject: Same problem here Reply with quote

Code:

# emerge --sync


Performing Global Updates: /usr/portage/profiles/updates/2Q-2006
(Could take a couple of minutes if you have a lot of binary packages.)
  .='update pass'  *='binary update'  @='/var/db move'
  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'
........................................


Performing Global Updates: /usr/portage/profiles/updates/3Q-2006
(Could take a couple of minutes if you have a lot of binary packages.)
  .='update pass'  *='binary update'  @='/var/db move'
  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'
......
pTraceback (most recent call last):
  File "/usr/bin/emerge", line 4049, in ?
    emerge_main()
  File "/usr/bin/emerge", line 3770, in emerge_main
    portage.global_updates(settings, trees, mtimedb["updates"])
  File "/usr/lib/portage/pym/portage.py", line 6656, in global_updates
    myupd)
  File "/usr/lib/portage/pym/portage_update.py", line 198, in update_config_files
    write_atomic(updating_file, "".join(file_contents[x]))
  File "/usr/lib/portage/pym/portage_util.py", line 728, in write_atomic
    f.close()
  File "/usr/lib/portage/pym/portage_util.py", line 696, in close
    os.rename(self.name, self._real_name)
OSError: [Errno 16] Device or resource busy

_________________
Dave
Back to top
View user's profile Send private message
Apetrini
Veteran
Veteran


Joined: 09 Feb 2005
Posts: 1158

PostPosted: Wed Sep 13, 2006 2:15 am    Post subject: Reply with quote

I had the same error too. I solved moving package.keywords and package.unmask in another place then type
emerge -pv xxxx (where xxx the name of one packet dbus or nmap for example) and then put back these files on thier original path.

Try...
_________________
Linux ape 2.6.31-vanilla. Paludis since 0.28.0.
Back to top
View user's profile Send private message
GladRags
n00b
n00b


Joined: 11 Jul 2006
Posts: 15

PostPosted: Wed Sep 13, 2006 2:35 am    Post subject: Reply with quote

Apetrini wrote:
I had the same error too. I solved moving package.keywords and package.unmask in another place then type
emerge -pv xxxx (where xxx the name of one packet dbus or nmap for example) and then put back these files on thier original path.

Try...


I got away with this one by commenting the lines having "kazehakase" in /etc/portage/package.use.

Hope that helps.
Have a pleasant time ahead.
Back to top
View user's profile Send private message
abay
n00b
n00b


Joined: 18 Sep 2006
Posts: 1
Location: Taiwan

PostPosted: Mon Sep 18, 2006 3:34 pm    Post subject: Reply with quote

re-emerge --sync
Back to top
View user's profile Send private message
optiluca
Guru
Guru


Joined: 16 Jan 2006
Posts: 545
Location: Rivergaro, Italy

PostPosted: Sat Oct 28, 2006 12:37 pm    Post subject: Reply with quote

I had this same problem. I simply got rid of this speedup I'd installed previously : http://gentoo-wiki.com/TIP_speed_up_portage_with_cdb , and then it worked...

Hope it helps

Luca
_________________
# "Hmm, sounds like your system froze up."
# "I don't know why. It's about 80 degrees in here!"

http://www.rinkworks.com/stupid/cs_mincing.shtml
Back to top
View user's profile Send private message
GNUtoo
Veteran
Veteran


Joined: 05 May 2005
Posts: 1919

PostPosted: Sat Oct 28, 2006 3:52 pm    Post subject: Reply with quote

Code:
 emerge -av nano


Performing Global Updates: /usr/portage/profiles/updates/4Q-2006
(Could take a couple of minutes if you have a lot of binary packages.)
  .='update pass'  *='binary update'  @='/var/db move'
  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'
......
Traceback (most recent call last):
  File "/usr/bin/emerge", line 4503, in ?
    retval = emerge_main()
  File "/usr/bin/emerge", line 4214, in emerge_main
    portage.global_updates(settings, trees, mtimedb["updates"])
  File "/usr/lib/portage/pym/portage.py", line 7128, in global_updates
    trees["/"]["bintree"].move_ent(update_cmd)
  File "/usr/lib/portage/pym/portage.py", line 5510, in move_ent
    self.populate()
  File "/usr/lib/portage/pym/portage.py", line 5755, in populate
    mycat = mytbz2.getfile("CATEGORY").strip()
AttributeError: 'NoneType' object has no attribute 'strip'

what should i do?
Back to top
View user's profile Send private message
GNUtoo
Veteran
Veteran


Joined: 05 May 2005
Posts: 1919

PostPosted: Sat Oct 28, 2006 4:16 pm    Post subject: Reply with quote

solved see bugzilla for more details
Back to top
View user's profile Send private message
Raboo
n00b
n00b


Joined: 13 Nov 2002
Posts: 20
Location: Stockholm, Sweden

PostPosted: Sun Oct 29, 2006 4:57 pm    Post subject: Reply with quote

new_to_non_X86 wrote:
solved see bugzilla for more details

Do you have an URL?
Back to top
View user's profile Send private message
jancici
Apprentice
Apprentice


Joined: 27 Jan 2004
Posts: 284
Location: Slovakia

PostPosted: Mon Oct 30, 2006 8:24 am    Post subject: Reply with quote

yes, problem is that 4Q-2006 file is saying about moving packages which are included in portage.keywords or portage.*

- so you need move portage.keyword and portage.* file somewhere else
- then run emerge --sync
- move portage.keywords ..... back
- and it;s working as before
Back to top
View user's profile Send private message
GNUtoo
Veteran
Veteran


Joined: 05 May 2005
Posts: 1919

PostPosted: Mon Oct 30, 2006 9:23 am    Post subject: Reply with quote

Raboo wrote:
new_to_non_X86 wrote:
solved see bugzilla for more details

Do you have an URL?

solved for ME
https://bugs.gentoo.org/show_bug.cgi?id=147010
se comment 30
Back to top
View user's profile Send private message
Zach1188
n00b
n00b


Joined: 13 Oct 2006
Posts: 64

PostPosted: Wed Nov 08, 2006 12:25 am    Post subject: Reply with quote

Thanks, I got it working again, but it happens again every time I do emerge --sync, forcing me to re-untar the portage tarball.
Back to top
View user's profile Send private message
Autie
Guru
Guru


Joined: 25 Jul 2003
Posts: 309
Location: Ledegem - Belgium

PostPosted: Tue Dec 12, 2006 9:19 pm    Post subject: Reply with quote

re-sync, emerge portage did the tric for me
_________________
The capacity to learn is a gift; The ability to learn is a skill; The willingness to learn is a choice.
Back to top
View user's profile Send private message
CyD
Tux's lil' helper
Tux's lil' helper


Joined: 23 Jul 2004
Posts: 117

PostPosted: Tue Jan 02, 2007 3:00 am    Post subject: Reply with quote

in my case syncing again was not an option, as running emerge <anything> was non-functional, including just typing 'emerge'. anyways, renamed package.keywords real quick, ran emerge with no options, moved package.keywords back, all ok. haven't tried another sync, just went to work updating software.
Back to top
View user's profile Send private message
Non_E
Apprentice
Apprentice


Joined: 17 Jan 2006
Posts: 160
Location: Czech Republic

PostPosted: Wed May 23, 2007 9:22 am    Post subject: Reply with quote

I got such error too. The problem was corrupted reiser partition with portage.
_________________
Only Sith deals in absolutes.
Back to top
View user's profile Send private message
DonLorenzo
n00b
n00b


Joined: 26 Jan 2007
Posts: 12

PostPosted: Fri Sep 28, 2007 3:44 pm    Post subject: Reply with quote

I also get a OSError: [Errno 16] but in a different context
I cannot unmerge packages anymore:
Code:
Traceback (most recent call last):
  File "/usr/bin/emerge", line 6529, in <module>
    retval = emerge_main()
  File "/usr/bin/emerge", line 6516, in emerge_main
    myopts, myaction, myfiles, spinner)
  File "/usr/bin/emerge", line 5707, in action_depclean
    "unmerge", cleanlist, ldpath_mtimes)
  File "/usr/bin/emerge", line 4340, in unmerge
    vartree=vartree, ldpath_mtimes=ldpath_mtimes)
  File "/usr/lib64/portage/pym/portage.py", line 4304, in unmerge
    ldpath_mtimes=ldpath_mtimes)
  File "/usr/lib64/portage/pym/portage.py", line 7390, in unmerge
    self._unmerge_pkgfiles(pkgfiles, others_in_slot)
  File "/usr/lib64/portage/pym/portage.py", line 7632, in _unmerge_pkgfiles
    os.rmdir(obj)
OSError: [Errno 16] Device or resource busy: '/usr'


I don't know what cases the error but I looked into pym/portage.py:
Code:

         for obj in mydirs:
            try:
               if bsd_chflags:
                  lstatobj = os.lstat(obj)
                  if lstatobj.st_flags != 0:
                     bsd_chflags.lchflags(obj, 0)
                  parent_name = os.path.dirname(obj)
                  # Use normal stat/chflags for the parent since we want to
                  # follow any symlinks to the real parent directory.
                  pflags = os.stat(parent_name).st_flags
                  if pflags != 0:
                     bsd_chflags.chflags(parent_name, 0)
               try:
                  os.rmdir(obj) ### <----------------- THIS IS LINE 7632 <------------------
               finally:
                  if bsd_chflags and pflags != 0:
                     # Restore the parent flags we saved before unlinking
                     bsd_chflags.chflags(parent_name, pflags)
               show_unmerge("<<<", "", "dir", obj)
            except EnvironmentError, e:
               if e.errno not in (errno.ENOENT,
                  errno.EEXIST, errno.ENOTEMPTY,
                  errno.ENOTDIR):
                  raise
               if e.errno != errno.ENOENT:
                  show_unmerge("---", "!empty", "dir", obj)
               del e


So there it does catches EnvironmentErrors (and thus also OSErrors) but raises them again if they do not have the errno explicitly listed which are:

  • errno.ENOENT - No such file or directory
  • errno.EEXIST - File exists
  • errno.ENOTEMPTY - Directory not empty
  • errno.ENOTDIR - Not a directory

(taken from the python docs)

adding
errno.EBUSY - Device or resource busy
to the list solved the symptom (the inability to unmerge stuff) for me but I think it doesn't really solve the problem that the device is busy.
But I have to admit that I don't really understand the process of unmerging so maybe not catching the errno.EBUSY maybe really is a bug. I leave that for others to decide.

yours
//Lorenz
Back to top
View user's profile Send private message
Arfrever
Bodhisattva
Bodhisattva


Joined: 29 Apr 2006
Posts: 2463
Location: 異世界

PostPosted: Fri Sep 28, 2007 9:59 pm    Post subject: Reply with quote

DonLorenzo wrote:
I also get a OSError: [Errno 16] but in a different context
I cannot unmerge packages anymore:
Code:
Traceback (most recent call last):
  File "/usr/bin/emerge", line 6529, in <module>
    retval = emerge_main()
  File "/usr/bin/emerge", line 6516, in emerge_main
    myopts, myaction, myfiles, spinner)
  File "/usr/bin/emerge", line 5707, in action_depclean
    "unmerge", cleanlist, ldpath_mtimes)
  File "/usr/bin/emerge", line 4340, in unmerge
    vartree=vartree, ldpath_mtimes=ldpath_mtimes)
  File "/usr/lib64/portage/pym/portage.py", line 4304, in unmerge
    ldpath_mtimes=ldpath_mtimes)
  File "/usr/lib64/portage/pym/portage.py", line 7390, in unmerge
    self._unmerge_pkgfiles(pkgfiles, others_in_slot)
  File "/usr/lib64/portage/pym/portage.py", line 7632, in _unmerge_pkgfiles
    os.rmdir(obj)
OSError: [Errno 16] Device or resource busy: '/usr'


See Bug 194081.

Perduodu linkėjimus
Arfrever
Back to top
View user's profile Send private message
DonLorenzo
n00b
n00b


Joined: 26 Jan 2007
Posts: 12

PostPosted: Fri Sep 28, 2007 10:06 pm    Post subject: Reply with quote

yup! that's the one I've been looking for.

Thanks for the link!
Back to top
View user's profile Send private message
think4urs11
Bodhisattva
Bodhisattva


Joined: 25 Jun 2003
Posts: 6659
Location: above the cloud

PostPosted: Tue Feb 19, 2008 12:34 pm    Post subject: Reply with quote

removed sticky
_________________
Nothing is secure / Security is always a trade-off with usability / Do not assume anything / Trust no-one, nothing / Paranoia is your friend / Think for yourself
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum