¿Cómo puedo enumerar las aplicaciones no utilizadas?

25

Oye, ¿hay alguna posibilidad de enumerar todas las aplicaciones con una condición de no utilizado durante un límite de 10-20 días? Si es así, ¿cómo puedo hacer eso?

Gracias.

rɑːdʒɑ
fuente

Respuestas:

22

Lo más cerca que puedo pensar es en ejecutar, popularity-contest > out.txtlo que llevará un tiempo generar un archivo out.txt, enumerando programas, desde el más reciente hasta el menos utilizado. Tengo la impresión de que ...

  • La primera columna es la hora más reciente (formato de época) en que se usó el programa y la siguiente columna es la hora en que se usó por primera vez (¿o se instaló?).
  • Los únicos programas enumerados son, creo, programas que están registrados (como resultado de su instalación a través apt-getdel Centro de software). Los que no lo son, no figuran en la lista. Por ejemplo, instalé Seamonkey descomprimiendo un tar.gz. Eso no se nota.

La salida de se popularity-contestve así:

POPULARITY-CONTEST-0 TIME:1359204011 ID:ae1dc87f150c489082f0ddb28af40350 ARCH:i386 POPCONVER:1.53ubuntu1
1359204011 1349657211 openbox /usr/bin/openbox
1359204011 1349657211 xscreensaver /usr/bin/xscreensaver
1359204011 1354294761 perl-base /usr/bin/perl
1359204011 1349833421 update-notifier /usr/bin/update-notifier
1359204011 1349657224 xfconf /usr/lib/i386-linux-gnu/xfce4/xfconf/xfconfd
1359204011 1349657224 lxpanel /usr/lib/i386-linux-gnu/lxpanel/plugins/monitors.so
1359204011 1349657225 policykit-1-gnome /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1
1359204011 1358559008 lxterminal /usr/bin/lxterminal
1359204011 1349664550 ttf-ubuntu-font-family /usr/share/fonts/truetype/ubuntu-font-family/Ubuntu-RI.ttf
1359204011 1349664535 pcmanfm /usr/bin/pcmanfm
1359204011 1349657224 lxpanel-indicator-applet-plugin /usr/lib/i386-linux-gnu/lxpanel/plugins/indicator.so
1359204011 1349657235 ttf-dejavu-core /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Bold.ttf
1359204011 1349657210 lxsession /usr/bin/lxsession
1359204011 1349833422 update-notifier-common /usr/share/locale/en/LC_MESSAGES/update-notifier.mo
1359204011 1349664531 network-manager-gnome /usr/bin/nm-applet
1359204011 1349657205 zlib1g /lib/i386-linux-gnu/libz.so.1.2.7
1359204011 1352212906 xfce4-power-manager /usr/bin/xfce4-power-manager
1359204008 1349657221 libxfconf-0-2 /usr/lib/i386-linux-gnu/libxfconf-0.so.2.0.0
1359204008 1358215752 libnss3 /usr/lib/i386-linux-gnu/nss/libfreebl3.so
1359204008 1349657221 libvorbis0a /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
1359204008 1349657221 libvorbisenc2 /usr/lib/i386-linux-gnu/libvorbisenc.so.2.0.8
1359204008 1349657217 libxcursor1 /usr/lib/i386-linux-gnu/libXcursor.so.1.0.2
1359204008 1349657217 libx11-6 /usr/lib/i386-linux-gnu/libX11.so.6.3.0
1359204008 1349657221 libtasn1-3 /usr/lib/i386-linux-gnu/libtasn1.so.3.1.16
1359204008 1349657221 libwind0-heimdal /usr/lib/i386-linux-gnu/libwind.so.0.0.0

Las dos primeras columnas se pueden convertir pegando todo el resultado en una hoja de cálculo. Utilicé LibreOffice Calc para este propósito e inserté columnas en blanco después de cada columna del "tiempo de época". Luego llené una fórmula para convertir el "tiempo de época" en tiempo legible por humanos (y usando Formato, Celdas, Tiempo para obtener un formato adecuado).

Para la primera fila de datos, suponiendo que la primera celda de "tiempo de época" esté en A2, ponga =(A2/86400)+25569B2 y complete. Haga lo mismo para el segundo "tiempo de época", utilizando =(C2/86400)+25569en la celda D2.

El contenido, solo unas pocas líneas, se ve así:

POPULARITY-CONTEST-0        TIME:1359204011     ID:ae1dc87f150c489082f0ddb28af40350 ARCH:i386
1359204011  26/01/2013 12:40:11 1349657211  08/10/2012 00:46:51 openbox /usr/bin/openbox
1359204011  26/01/2013 12:40:11 1349657211  08/10/2012 00:46:51 xscreensaver    /usr/bin/xscreensaver
1359204011  26/01/2013 12:40:11 1354294761  30/11/2012 16:59:21 perl-base   /usr/bin/perl
1359204011  26/01/2013 12:40:11 1349833421  10/10/2012 01:43:41 update-notifier /usr/bin/update-notifier
1359204011  26/01/2013 12:40:11 1349657224  08/10/2012 00:47:04 xfconf  /usr/lib/i386-linux-gnu/xfce4/xfconf/xfconfd
1359204011  26/01/2013 12:40:11 1349657224  08/10/2012 00:47:04 lxpanel /usr/lib/i386-linux-gnu/lxpanel/plugins/monitors.so
1359204011  26/01/2013 12:40:11 1349657225  08/10/2012 00:47:05 policykit-1-gnome   /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1
1359204011  26/01/2013 12:40:11 1358559008  19/01/2013 01:30:08 lxterminal  /usr/bin/lxterminal
1359204011  26/01/2013 12:40:11 1349664550  08/10/2012 02:49:10 ttf-ubuntu-font-family  /usr/share/fonts/truetype/ubuntu-font-family/Ubuntu-RI.ttf
1359204011  26/01/2013 12:40:11 1349664535  08/10/2012 02:48:55 pcmanfm /usr/bin/pcmanfm
1359204011  26/01/2013 12:40:11 1349657224  08/10/2012 00:47:04 lxpanel-indicator-applet-plugin /usr/lib/i386-linux-gnu/lxpanel/plugins/indicator.so
1359204011  26/01/2013 12:40:11 1349657235  08/10/2012 00:47:15 ttf-dejavu-core /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Bold.ttf
1359204011  26/01/2013 12:40:11 1349657210  08/10/2012 00:46:50 lxsession   /usr/bin/lxsession
1359204011  26/01/2013 12:40:11 1349833422  10/10/2012 01:43:42 update-notifier-common  /usr/share/locale/en/LC_MESSAGES/update-notifier.mo
1359204011  26/01/2013 12:40:11 1349664531  08/10/2012 02:48:51 network-manager-gnome   /usr/bin/nm-applet
1359204011  26/01/2013 12:40:11 1349657205  08/10/2012 00:46:45 zlib1g  /lib/i386-linux-gnu/libz.so.1.2.7
1359204011  26/01/2013 12:40:11 1352212906  06/11/2012 14:41:46 xfce4-power-manager /usr/bin/xfce4-power-manager
1359204008  26/01/2013 12:40:08 1349657221  08/10/2012 00:47:01 libxfconf-0-2   /usr/lib/i386-linux-gnu/libxfconf-0.so.2.0.0
1359204008  26/01/2013 12:40:08 1358215752  15/01/2013 02:09:12 libnss3 /usr/lib/i386-linux-gnu/nss/libfreebl3.so
1359204008  26/01/2013 12:40:08 1349657221  08/10/2012 00:47:01 libvorbis0a /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
1359204008  26/01/2013 12:40:08 1349657221  08/10/2012 00:47:01 libvorbisenc2   /usr/lib/i386-linux-gnu/libvorbisenc.so.2.0.8
1359204008  26/01/2013 12:40:08 1349657217  08/10/2012 00:46:57 libxcursor1 /usr/lib/i386-linux-gnu/libXcursor.so.1.0.2
1359204008  26/01/2013 12:40:08 1349657217  08/10/2012 00:46:57 libx11-6    /usr/lib/i386-linux-gnu/libX11.so.6.3.0
1359204008  26/01/2013 12:40:08 1349657221  08/10/2012 00:47:01 libtasn1-3  /usr/lib/i386-linux-gnu/libtasn1.so.3.1.16
1359204008  26/01/2013 12:40:08 1349657221  08/10/2012 00:47:01 libwind0-heimdal    /usr/lib/i386-linux-gnu/libwind.so.0.0.0

Puede leer más en popcon.ubuntu.com pero una cita de allí está aquí:

P) ¿Qué información se informa por el concurso de popularidad?

A) el concurso de popularidad informa la arquitectura del sistema que usa, la versión del concurso de popularidad que usa y la lista de paquetes instalados en su sistema. Para cada paquete, el concurso de popularidad analiza los archivos usados ​​más recientemente (basados ​​en atime) e informa el nombre del archivo, su último tiempo de acceso (atime) y el último tiempo de cambio (ctime). Sin embargo, algunos archivos no se consideran porque tienen un tiempo poco confiable.

También puedes correr man popularity-contestpara obtener más información.


fuente
Hola vasa1 Gracias por su excelente respuesta. Estoy de acuerdo con su respuesta, pero también necesito tratar con aplicaciones que se instalaron desde la fuente.
rɑːdʒɑ
Ambas son excelentes respuestas.
rɑːdʒɑ
entonces, si el concurso de popularidad me dice 0 0, ¿es seguro asumir que el paquete nunca se usó y que puedo eliminarlo siempre que mi patrón de uso no cambie?
user1539216
16

Puede usar el tiempo de acceso para determinar cuándo se utilizó por última vez una aplicación.

Por ejemplo, intente:

ls -ltu /usr/bin | pager

Esto mostrará una lista de todos los archivos /usr/binordenados por tiempo de acceso (último acceso primero).

Si desea crear un script que busca automáticamente los programas con ciertas características, puede utilizar statde esta manera:

stat -c%X /bin/cat

Esto generará el tiempo de acceso /bin/catcomo el número de segundos desde Epoch

Nota: obviamente, esto no funcionará si está utilizando la noatimeopción de montaje.

Andrea Corbellini
fuente
Ambas son excelentes respuestas.
rɑːdʒɑ
1

Mi disco se llenó, así que utilicé la siguiente línea para encontrar todas las aplicaciones que no se utilizaron en los últimos 100 días y cuyo archivo binario es mayor de 1 MB:

find /usr/bin -size +1000k -atime +100 -exec ls -ltu {} \;
Erel Segal-Halevi
fuente