View previous topic :: View next topic |
Author |
Message |
sws n00b
Joined: 08 Sep 2009 Posts: 29
|
Posted: Thu May 02, 2013 7:14 pm Post subject: [SOLVED] emerge broken after deleting /usr/distfiles |
|
|
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 |
|
|
phajdan.jr Retired Dev
Joined: 23 Mar 2006 Posts: 1777 Location: Poland
|
Posted: Thu May 02, 2013 7:46 pm Post subject: |
|
|
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 |
|
|
chithanh Developer
Joined: 05 Aug 2006 Posts: 2158 Location: Berlin, Germany
|
Posted: Thu May 02, 2013 7:51 pm Post subject: |
|
|
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 |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6749
|
Posted: Thu May 02, 2013 7:51 pm Post subject: |
|
|
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 |
|
|
phajdan.jr Retired Dev
Joined: 23 Mar 2006 Posts: 1777 Location: Poland
|
Posted: Thu May 02, 2013 7:52 pm Post subject: |
|
|
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 |
|
|
sws n00b
Joined: 08 Sep 2009 Posts: 29
|
Posted: Thu May 02, 2013 8:05 pm Post subject: |
|
|
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 |
|
|
sws n00b
Joined: 08 Sep 2009 Posts: 29
|
Posted: Fri May 03, 2013 6:36 am Post subject: emerge problem solved (?) - gnutls fails though |
|
|
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 |
|
|
sws n00b
Joined: 08 Sep 2009 Posts: 29
|
Posted: Fri May 03, 2013 6:47 am Post subject: |
|
|
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 |
|
|
phajdan.jr Retired Dev
Joined: 23 Mar 2006 Posts: 1777 Location: Poland
|
Posted: Fri May 03, 2013 3:55 pm Post subject: |
|
|
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 |
|
|
|