Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] emerge broken after deleting /usr/distfiles
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
sws
n00b
n00b


Joined: 08 Sep 2009
Posts: 29

PostPosted: Thu May 02, 2013 7:14 pm    Post subject: [SOLVED] emerge broken after deleting /usr/distfiles Reply with quote

Hi,

while updating via

# emerge -NuDav world

my hdd filled up. I deleted /usr/distfiles to regain space. After that emerge won't start again.

Code:
Traceback (most recent call last):
  File "/usr/bin/emerge", line 51, in <module>
    retval = emerge_main()
  File "/usr/lib64/portage/pym/_emerge/main.py", line 1032, in emerge_main
    settings, trees, mtimedb = load_emerge_config()
  File "/usr/lib64/portage/pym/portage/proxy/objectproxy.py", line 30, in __call__
    result = object.__getattribute__(self, '_get_target')()
  File "/usr/lib64/portage/pym/portage/proxy/lazyimport.py", line 129, in _get_target
    __import__(name)
  File "/usr/lib64/portage/pym/_emerge/actions.py", line 14, in <module>
    import socket
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe3 in position 2: invalid continuation byte


I am totally confused. Never had this before. Help urgently needed.

Greets,
Sebastian


Last edited by sws on Fri May 03, 2013 6:48 am; edited 1 time in total
Back to top
View user's profile Send private message
phajdan.jr
Developer
Developer


Joined: 23 Mar 2006
Posts: 1764
Location: Poland

PostPosted: Thu May 02, 2013 7:46 pm    Post subject: Reply with quote

1. emerge backtrace is always a bug. Please file one (check for dupes first). Post the link here for reference.

2. eclean -d distfiles is much better than just nuking the dir, except for extreme cases.

3. Try re-creating the dir, the correct permissions are:

drwxrwxr-x 4 root portage 249856 May 1 23:18 /usr/portage/distfiles/
_________________
http://phajdan-jr.blogspot.com/
Back to top
View user's profile Send private message
chithanh
Developer
Developer


Joined: 05 Aug 2006
Posts: 1561
Location: Berlin, Germany

PostPosted: Thu May 02, 2013 7:51 pm    Post subject: Reply with quote

There exists no /usr/distfiles on a typical Gentoo install. Do you mean /usr/portage or /usr/portage/distfiles? You can use "eclean-dist -d" to clean up distfiles, and you can remove /var/tmp/portage/* to free up space from previous failed merges.

Your problem looks more like a corrupted configuration file.
Back to top
View user's profile Send private message
mv
Advocate
Advocate


Joined: 20 Apr 2005
Posts: 3804

PostPosted: Thu May 02, 2013 7:51 pm    Post subject: Reply with quote

phajdan.jr wrote:
1. emerge backtrace is always a bug

Since the harddisk was filling, not necessarily: Could be that a file in /var/cache/edb was corrupted due to lack of space. It might help to move this directory out of the way.
Back to top
View user's profile Send private message
phajdan.jr
Developer
Developer


Joined: 23 Mar 2006
Posts: 1764
Location: Poland

PostPosted: Thu May 02, 2013 7:52 pm    Post subject: Reply with quote

mv wrote:
phajdan.jr wrote:
1. emerge backtrace is always a bug

Since the harddisk was filling, not necessarily: Could be that a file in /var/cache/edb was corrupted due to lack of space. It might help to move this directory out of the way.


Still, throwing a backtrace at people is not a valid thing to do even if some data files are corrupted. The exception should be caught with a clear error message, e.g. pointing out the corruption as a possible problem.
_________________
http://phajdan-jr.blogspot.com/
Back to top
View user's profile Send private message
sws
n00b
n00b


Joined: 08 Sep 2009
Posts: 29

PostPosted: Thu May 02, 2013 8:05 pm    Post subject: Reply with quote

Hi folks,
and thanks for your answers so far.

To be explicit:

I changed my distfiles dir to /usr/distfiles for lvm reasons in 2009, worked ever since, should not matter for this problem

1. I ran
# emerge -NuDav world
2. emerge halted for security reasons: hdd was filling up
3. I did a
# eclean -d distfiles
4. still there were about 12 GB+ in /usr/distfiles after "ecleaning"
5. so I "just" removed all files in /usr/distfiles hoping to refetch what was needed when re-emerging world
6. when doing another emerge -NuDav wolrd traceback error accured.

Greets,
Sebastian
Back to top
View user's profile Send private message
sws
n00b
n00b


Joined: 08 Sep 2009
Posts: 29

PostPosted: Fri May 03, 2013 6:36 am    Post subject: emerge problem solved (?) - gnutls fails though Reply with quote

I checked python version used - it was 3.1 . So I changed back to 2.7 (allthough I thought I had been using 2.7 ).
Now emerge is up again without trackback.


New Problem
Unlucky I deleted ALL sources in /usr/distfiles! Now I cannot compile anything because download of sources is refused:
Code:
wget: error while loading shared libraries: libgnutls.so.26: cannot open shared object file: No such file or directory

Installed version is net-libs/gnutls-3.1.10 according to eix:
Code:
 # eix net-libs/gnutls
[I] net-libs/gnutls
     Available versions:  2.12.20 2.12.23 (~)3.1.8 (~)3.1.9-r1 (~)3.1.10 {bindist +cxx dane doc examples guile lzo +nettle nls pkcs11 static-libs test zlib LINGUAS="cs de en fi fr it ms nl pl sv uk vi zh_CN"}
     Installed versions:  3.1.10(21:16:47 01.05.2013)(cxx nls zlib -dane -doc -examples -guile -pkcs11 -static-libs -test LINGUAS="de -cs -en -fi -fr -it -ms -nl -pl -sv -uk -vi -zh_CN")
     Homepage:            http://www.gnutls.org/
     Description:         A TLS 1.2 and SSL 3.0 implementation for the GNU project


Libraries available:
Code:
 # ls /usr/lib/libgnutls*
/usr/lib/libgnutls-openssl.so         /usr/lib/libgnutls.so          /usr/lib/libgnutls-xssl.so        /usr/lib/libgnutlsxx.so
/usr/lib/libgnutls-openssl.so.27      /usr/lib/libgnutls.so.28       /usr/lib/libgnutls-xssl.so.0      /usr/lib/libgnutlsxx.so.28
/usr/lib/libgnutls-openssl.so.27.0.2  /usr/lib/libgnutls.so.28.18.0  /usr/lib/libgnutls-xssl.so.0.0.0  /usr/lib/libgnutlsxx.so.28.1.0


Revdep-rebuild reveals:
Code:
[ 25% ]  *   broken /usr/bin/wget (requires libgnutls.so.26)


I changed "gnutls" in /etc/make.conf to "-gnutls" but it still refuses to download.
So I guess I'll have to download the sources manually, copy them into /usr/distfiles and emerge then.

But still: why does wget require libgnutls.so.26 when it is not installed. Why doesn't libgnutls.so.3.1.10 appear in /usr/lib? And what is the system behind the numbers (libgnutls.so.28) when there are available versions for 2.12 onward - no version 2.8 or 28?
Back to top
View user's profile Send private message
sws
n00b
n00b


Joined: 08 Sep 2009
Posts: 29

PostPosted: Fri May 03, 2013 6:47 am    Post subject: Reply with quote

Got it! Don't know if this is compatible to gentoo guidelines but I symlinked libgnutls.so.28 to libgnutls.so.26 and it did the trick!
wget is now installed with USE"-gnutls" and emerged fine.

emerge -NuDav world is running smooth again.

Greets,
Sebastian
Back to top
View user's profile Send private message
phajdan.jr
Developer
Developer


Joined: 23 Mar 2006
Posts: 1764
Location: Poland

PostPosted: Fri May 03, 2013 3:55 pm    Post subject: Reply with quote

sws wrote:
Got it! Don't know if this is compatible to gentoo guidelines but I symlinked libgnutls.so.28 to libgnutls.so.26 and it did the trick!


I think it can work to get more things working - just make sure to remove the workaround afterwards - it's not really guaranteed to work and can result in weird crashes.
_________________
http://phajdan-jr.blogspot.com/
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