El Centro de software tarda en cargarse

10

Tengo una computadora rápida (excelente procesador, buen SSD) pero el Centro de software tarda unos 30 segundos en cargarse. Esto no es una punzada, creo que podría haber algo mal. Synaptic tarda un segundo en cargarse.

Corrí strace software-centerpara ver si estaba agotando el disco (es un SSD, no puedo escucharlo) y está emitiendo mensajes e intentando abrir un montón de archivos. Aquí hay un extracto:

open("/usr/local/lib/python2.6/dist-packages/FlexGet-1.0r1465-py2.6.egg/StringIOmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/FlexGet-1.0r1465-py2.6.egg/StringIO.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/FlexGet-1.0r1465-py2.6.egg/StringIO.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib/python2.6/dist-packages/progressbar-2.3_dev-py2.6.egg/StringIO", 0x7fff19d3af30) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/progressbar-2.3_dev-py2.6.egg/StringIO.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/progressbar-2.3_dev-py2.6.egg/StringIOmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/progressbar-2.3_dev-py2.6.egg/StringIO.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/progressbar-2.3_dev-py2.6.egg/StringIO.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib/python2.6/dist-packages/pynzb-0.1.0-py2.6.egg/StringIO", 0x7fff19d3af30) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/pynzb-0.1.0-py2.6.egg/StringIO.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/pynzb-0.1.0-py2.6.egg/StringIOmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/pynzb-0.1.0-py2.6.egg/StringIO.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/pynzb-0.1.0-py2.6.egg/StringIO.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib/python2.6/dist-packages/PyRSS2Gen-1.0.0-py2.6.egg/StringIO", 0x7fff19d3af30) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/PyRSS2Gen-1.0.0-py2.6.egg/StringIO.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/PyRSS2Gen-1.0.0-py2.6.egg/StringIOmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/PyRSS2Gen-1.0.0-py2.6.egg/StringIO.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/PyRSS2Gen-1.0.0-py2.6.egg/StringIO.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib/python2.6/dist-packages/html5lib-0.90-py2.6.egg/StringIO", 0x7fff19d3af30) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/html5lib-0.90-py2.6.egg/StringIO.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/html5lib-0.90-py2.6.egg/StringIOmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/html5lib-0.90-py2.6.egg/StringIO.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/html5lib-0.90-py2.6.egg/StringIO.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib/python2.6/dist-packages/PyYAML-3.09-py2.6-linux-x86_64.egg/StringIO", 0x7fff19d3af30) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/PyYAML-3.09-py2.6-linux-x86_64.egg/StringIO.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/PyYAML-3.09-py2.6-linux-x86_64.egg/StringIOmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/PyYAML-3.09-py2.6-linux-x86_64.egg/StringIO.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/PyYAML-3.09-py2.6-linux-x86_64.egg/StringIO.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib/python2.6/dist-packages/transmissionrpc-0.6-py2.6.egg/StringIO", 0x7fff19d3af30) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/transmissionrpc-0.6-py2.6.egg/StringIO.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/transmissionrpc-0.6-py2.6.egg/StringIOmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/transmissionrpc-0.6-py2.6.egg/StringIO.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/python2.6/dist-packages/transmissionrpc-0.6-py2.6.egg/StringIO.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)

Esto podría ser un arenque rojo. Más tarde se detiene ante esto:

poll([{fd=3, events=POLLIN}], 1, 25000) = 1 ([{fd=3, revents=POLLIN}])
recvmsg(3, {msg_name(0)=NULL, msg_iov(1)=[{"l\2\1\1\v\0\0\0\3\0\0\0=\0\0\0\6\1s\0\7\0\0\0:1.3497\0"..., 2048}], msg_controllen=0, msg_flags=MSG_CMSG_CLOEXEC}, MSG_CMSG_CLOEXEC) = 91
recvmsg(3, 0x7fff8c57cc00, MSG_CMSG_CLOEXEC) = -1 EAGAIN (Resource temporarily unavailable)
sendmsg(3, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\0\1\0\0\0\0\3\0\0\0{\0\0\0\1\1o\0\32\0\0\0/com/ubu"..., 144}, {"", 0}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 144
poll([{fd=3, events=POLLIN}], 1, 25000

Y luego lo vuelve a hacer ... Estas dos pausas representan la mayor parte del tiempo de carga.

Y luego realmente se voltea con miles de líneas de sondeo / lectura / temporalmente no disponibles.

Entonces, ¿qué demonios está pasando aquí? ¿Por qué Software Center escanea lo que parece ser un posible paquete de Python StringIO? ¿Insecto?

Entonces, ¿por qué se estanca en lo que parece una solicitud web a something.ubuntu.com (no puedo ver el mensaje completo)? ¿Por qué está hablando con ubuntu.com de todos modos?

Oli
fuente
1, que es la misma en todos los equipos que he instalado Ubuntu en, por lo que tenemos que esperar a una solución
Praweł
@Oli ¿Qué versión de Ubuntu es esta? He estado usando Lucid por un tiempo y nunca me he encontrado con esto.
Mussnoon
Puedo confirmar: ¡es extremadamente lento! Yo uso Synaptic de hecho.
Andrea Grandi
@Mussnoon: Maverick. Y solo ha sido tan lento desde Maverick. Creo que podría tener algo que ver con las partes adicionales de For Purchase o de inicio de sesión único de la nueva versión ... De cualquier manera, tener que detenerse así es bastante horrible.
Oli
3
Esto probablemente debería informarse como un error.
Jorge Castro

Respuestas:

5

Parece estar obteniendo una vista completamente actualizada de los paquetes disponibles (como lo que apt-get updatehace), lo que puede llevar un tiempo dependiendo de qué tan desactualizado esté el caché, qué tan rápido responden los repositorios de software y la velocidad de su conexión de red.

Como se menciona en los comentarios, esta falta de interactividad mientras se actualiza parece un error.

Kees Cook
fuente
Aceptaría eso como una respuesta si Aptitude, Synaptic o incluso simplemente apt-get updatehaciendo lo mismo tomaran un lugar cercano al mismo tiempo. Incluyéndome escribiendo mi contraseña time bash -c "sudo apt-get update" devuelve 0m2.446s. Una ejecución en caliente (inmediatamente después sin entrada de contraseña) tomó 0m0.572s. El SC tarda> 30 segundos de manera constante, por lo que si esto es lo que está causando el retraso, el error es mucho más que un simple problema de interactividad.
Oli
Hm, raro. Tomó alrededor de 30 segundos la primera vez que lo ejecuté, luego solo tomó unos momentos. "30 segundos" siempre es una señal de alerta para mí de que algo está caducando en DNS. En cualquier caso, abrir un error tendría más sentido.
Kees Cook, el
¿Sabes si hay algo en lo que pueda envolverlo que examine solo su tráfico de red?
Oli
Y pensé que estaba exagerando, pero resulta que soy más paciente de lo que me doy crédito. Acabo de ejecutar el centro de software con time. 1m.55.410s. Ay.
Oli
Por lo general, solo inicio una VM e intento reproducirla allí mientras ejecuto tcpdumpo wireshark. Pero sería bueno tener una manera de hacer esto. He preguntado: askubuntu.com/q/11709/721
Kees Cook el
0

Me encuentro con el mismo problema. Cuando abro por primera vez el centro de software, se abre rápidamente. Luego lo cierro, pero encuentro que el proceso del centro de software no se mata. La segunda vez que lo abra, tomará mucho tiempo abrirlo. El método es que elimino el proceso del centro de software manualmente después de cerrar el centro de software.

Uso ubuntu11.04 amd64 arch en thinkpad w500.

waterloo2005
fuente