Page 1 of 1

[TOOL] (se cosi si puo' chiamare) x vedere pkg injected

Posted: Tue Sep 07, 2004 2:18 am
by FonderiaDigitale
pubblico questo scriptino che feci 2 settimane fa per trovare i pacchetti iniettati.
perdonate la banalita', ma magari puo tornare utile a qualcuno..
senza argomenti lista tutti i pacchetti, con un argomento (pattern) restringe la ricerca.

Code: Select all

#!/bin/sh
list=($(find /var/db/pkg/*/ -mindepth 1 -maxdepth 1 -iname $1\* -type d))
for item in ${list[*]}
do
	i=0
	for a in ${item}/*;do ((i++)); done
	(($i==1)) && pkglist=(${pkglist[*]} $(basename ${item}))
done
[ ${#pkglist[*]} ] && echo -e "These packages are probably injected (they are missing emerge information):\n"
for a in ${pkglist[*]}
do
	echo ${a}
done

Posted: Tue Sep 07, 2004 8:09 am
by fedeliallalinea
Bellissimo a me torna piu' che utile. Aggiunto ai post utilissimi

Posted: Tue Sep 07, 2004 8:36 am
by xchris
ottimo.
l'ho testato...
pensavo di aver trovato un bug...
invece era un vecchio pkt iniettato :) (stesso nome,versione diversa)

se lo colori un po' lo mettiamo nel gekit?
E' semplice ma comodo.
ciao

Posted: Tue Sep 07, 2004 8:47 am
by fedeliallalinea
xchris wrote:E' semplice ma comodo.
E molto utile

Posted: Tue Sep 07, 2004 8:54 am
by silian87
credo che faro' l'inject di qualche pacchetto per provarlo :lol: . Se no mi mostra tutto vuoto :cry:

Posted: Tue Sep 07, 2004 8:54 am
by xchris
si... utile e' la parola + adatta :)
ciao

Posted: Wed Sep 08, 2004 7:22 pm
by FonderiaDigitale
in realta' e' un pezzo di codice che volevo includere dentro portagenurse, ma visto che lo scrivo in python, per me puo' essere un tool a se stante
sempre che si possa considerare tool..

Posted: Thu Sep 09, 2004 12:09 am
by xchris
aspettiamo allora portagenurse :)
(anche se gia' depcleaner li rilevava)

cmq e' comodo...ho trovato una vecchia "carogna" :D

ciao

Posted: Thu Sep 09, 2004 12:47 am
by FonderiaDigitale
per la tua gioia ecco la versione pitone:

Code: Select all

#!/usr/bin/python
import os
import os.path

def is_inject(arg,dirname,names):
        content = os.listdir(dirname)
        if len(content) == 1:
                if (names[0] == 'COUNTER'):
                        print dirname[arg:]


portage_db_dir = '/var/db/pkg'
os.path.walk(portage_db_dir,is_inject,len(portage_db_dir)+1) 

Posted: Thu Sep 09, 2004 1:01 am
by xchris
decisamente + pulito!
volendo puoi sistemare un po' gli import :)
ciao