Allarme: removepkg lento !!! .. quasi [Risolto]

Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
mauro
Linux 2.x
Linux 2.x
Messaggi: 281
Iscritto il: gio 11 mag 2006, 21:51
Slackware: current
Kernel: uno degli ultimi...
Desktop: dwm

Messaggio da mauro »

Eccola!
Non fidarti troppo pero', io l'ho provata con -warn senza danni ma chissa', magari una VM e' meglio non si sa mai.

fondamentalmente ho modificato le due funzioni cat_except() e remove_packages() per operare su piu' file contemporaneamente e funzionare ugualmente(spero) con meno sort.

il removepkg patchato funziona come quello di pat a meno che non gli passi l'opzione -multi,

quindi:
patched_removepkg -multi -warn pacchetto1 .. pacchettox

un'ultima cosa: se ne reindirizzi l'output in un file differira' da quello del removepkg originale perche' l' originale non si accorge di alcune cose:

pacchetto A che contiene file x
pacchetto B che contiene file x
(e x non e' contenuto da nessuna altra parte)

il "removepkg -warn A B" originale con l'opzione -warn ti dice che x non verra' rimosso perche' contenuto in un altro pacchetto, invece "patched_removepkg -multi -warn A B" te lo segna come rimovibile

Auguri!!! :D

[edit]
ho cancellato la patch: il file completo si trova qui: http://ilportalegdr.it/files/multi_removepkg.gz
[/edit]
Ultima modifica di mauro il mar 19 giu 2007, 13:35, modificato 3 volte in totale.

Avatar utente
submax82
Staff
Staff
Messaggi: 3202
Iscritto il: mer 31 ago 2005, 0:00
Desktop: xfce
Distribuzione: SalixOS
Contatta:

Messaggio da submax82 »

ragazzi non ho tempo di studiarlo... però gnome-slacky non deve essere invasivo... allora.. sempre se è corretto e se funziona... dopo mille test... lo si pò proporre a Pat ma includere un cosa così in gnome-slacky lo renderebbe invasivo

Avatar utente
Luci0
Staff
Staff
Messaggi: 3591
Iscritto il: lun 27 giu 2005, 0:00
Nome Cognome: Gabriele Santanché
Slackware: 12.2 14.0
Kernel: 2.6.27.46- gen 3.2.29
Desktop: KDE 3.5.10 Xfce
Località: Forte dei Marmi
Contatta:

Messaggio da Luci0 »

L' installer di Gnome-Slacky potrebbe utilizzare una versione modificata di removepkg solo per fare la rimozione/upgrade dei suoi pacchetti e quindi senza modificare il removepkg originale ... ma intanto faccio dei crash/test/disastri su una macchina di test ovviamente ... :-)
@mauro ... ho visto dei sort con lo switch -S32M :-)

Avatar utente
submax82
Staff
Staff
Messaggi: 3202
Iscritto il: mer 31 ago 2005, 0:00
Desktop: xfce
Distribuzione: SalixOS
Contatta:

Messaggio da submax82 »

Luci0 ha scritto:L' installer di Gnome-Slacky potrebbe utilizzare una versione modificata di removepkg solo per fare la rimozione/upgrade dei suoi pacchetti e quindi senza modificare il removepkg originale ... ma intanto faccio dei crash/test/disastri su una macchina di test ovviamente ... :-)
si ma come gli dici ad upgradepkg di usare removepkg del cd senza fare link e cose di questo tipo?!!... metti anche upgradepkg sul cd ?

Avatar utente
Luci0
Staff
Staff
Messaggi: 3591
Iscritto il: lun 27 giu 2005, 0:00
Nome Cognome: Gabriele Santanché
Slackware: 12.2 14.0
Kernel: 2.6.27.46- gen 3.2.29
Desktop: KDE 3.5.10 Xfce
Località: Forte dei Marmi
Contatta:

Messaggio da Luci0 »

Francamente forse é meglio testare il lavoro fatto da mauro ... e verificare ... 'se il gioco vale la candela' .... dai test che ha fatto mauro sembrerebbe di sì ... se tutto é confermato credo che si troverà un soluzione ... :-)
Gnome-Slacky potrebbe includere uno script per la rimozione veloce dei propri pacchetti, solo per smanettoni i coraggiosi con i dovuti warning ... d'altro canto l' alternativa é formattare e reinstallare ricordiamocelo !!! :-)

Avatar utente
mauro
Linux 2.x
Linux 2.x
Messaggi: 281
Iscritto il: gio 11 mag 2006, 21:51
Slackware: current
Kernel: uno degli ultimi...
Desktop: dwm

Messaggio da mauro »

@mauro ... ho visto dei sort con lo switch -S32M
Si, ho preso ispirazione dal tuo suggerimento, ma non ho provato se/quanto funziona perche' poco dopo averlo inserito ho lanciato removepkg dimenticando il -warn e mi sono rimosso meta' dei pacchetti che avevo sul pc :oops: . Il bello e' che si potrebbe lanciare anche da utente normale, ma per pigrizia lo stavo testando da root...
si ma come gli dici ad upgradepkg di usare removepkg del cd senza fare link e cose di questo tipo?!!... metti anche upgradepkg sul cd ?
e si, per come e' impostato il removepkg o si modifica anche upgradepkg o si fa prima un removepkg di tutti i pacchetti di gnome e poi si reinstallano.

Avatar utente
mauro
Linux 2.x
Linux 2.x
Messaggi: 281
Iscritto il: gio 11 mag 2006, 21:51
Slackware: current
Kernel: uno degli ultimi...
Desktop: dwm

Messaggio da mauro »

la patch che ho postato e' stata la prima che avessi mai fatto (in assoluto). Ora ho provato a patchare un removepkg su una altra macchina e dato che non ci riesco direi che ho fatto qualche vaccata :oops: , appena capisco cos'e' la sistemo. (Sul pc su cui l'ho creata avevo fatto un test e funzionava, probabilmente sto trascurando qualcosa di ovvio...).
Mi scuso se vi ha fatto casino.

[edit]
come non detto, oggi sono fuso.
cp /sbin/removepkg ./multi_removepkg
patch multi_removepgk < patch_multi
funziona senza problemi. Chissa' cosa avevo combinato prima.
Riscusate....
[/edit]

Avatar utente
Luci0
Staff
Staff
Messaggi: 3591
Iscritto il: lun 27 giu 2005, 0:00
Nome Cognome: Gabriele Santanché
Slackware: 12.2 14.0
Kernel: 2.6.27.46- gen 3.2.29
Desktop: KDE 3.5.10 Xfce
Località: Forte dei Marmi
Contatta:

Messaggio da Luci0 »

@mauro
Ciao ... per favore posta la patch, in PM con il copia incolla dal forum non viene un bel lavoro ...

Avatar utente
mauro
Linux 2.x
Linux 2.x
Messaggi: 281
Iscritto il: gio 11 mag 2006, 21:51
Slackware: current
Kernel: uno degli ultimi...
Desktop: dwm

Messaggio da mauro »

provato senza warn: per un errore nella prima versione non spostava i /var/log/package/nomipacchetti e /var/log/scripts/nomipacchetti in removed_packages e removed_scripts

@Luci0: ti rimando quello nuovo.

[edit]
ho cancellato la patch: il file completo si trova qui: http://ilportalegdr.it/files/multi_removepkg.gz
[/edit]
Ultima modifica di mauro il mar 19 giu 2007, 13:34, modificato 1 volta in totale.

Avatar utente
Luci0
Staff
Staff
Messaggi: 3591
Iscritto il: lun 27 giu 2005, 0:00
Nome Cognome: Gabriele Santanché
Slackware: 12.2 14.0
Kernel: 2.6.27.46- gen 3.2.29
Desktop: KDE 3.5.10 Xfce
Località: Forte dei Marmi
Contatta:

Messaggio da Luci0 »

Ciao ne dal forum ne dai PM riesco ad ottenere patch e script funzionanti, deve essere un problema di inserimento di spazi ritorno carrello ... devo editare il testo ma gli errori introdotti sono troppi ..e comunque é un disastro ... dobbiamo trovare un altro sistema per scambiare i file ...

Avatar utente
mauro
Linux 2.x
Linux 2.x
Messaggi: 281
Iscritto il: gio 11 mag 2006, 21:51
Slackware: current
Kernel: uno degli ultimi...
Desktop: dwm

Messaggio da mauro »

proviamo cosi'

( a questo punto edito i miei post con le patch e le elimino dato che magari fanno casino )

http://ilportalegdr.it/files/multi_removepkg.gz

Avatar utente
Luci0
Staff
Staff
Messaggi: 3591
Iscritto il: lun 27 giu 2005, 0:00
Nome Cognome: Gabriele Santanché
Slackware: 12.2 14.0
Kernel: 2.6.27.46- gen 3.2.29
Desktop: KDE 3.5.10 Xfce
Località: Forte dei Marmi
Contatta:

Messaggio da Luci0 »

Il tgz ha risolto tutti i problemi indotti dal copia incolla... e
ho provato con i pacchetti /t/ (tex)
Cavoli ... funziona !!! ecco dei bench ...

Codice: Seleziona tutto

root@gablin:/home/slackware/t# time installpkg *.tgz
Installing package tetex-3.0-i486-4 ([required])...
PACKAGE DESCRIPTION:
...........
Installing package xfig-3.2.4-i486-1 ([optional])...
PACKAGE DESCRIPTION:
xfig: xfig
xfig:
xfig: This package contains the binary for xfig, an interactive drawing tool
xfig: under X.  Xfig can create fig, epsf, and LaTeX files with various
xfig: options.  You also have to install the transfig package (transfig.tgz)
xfig: so that xfig can export fig files as epsf and LaTeX files.  This
xfig: package also contains a set of basic examples of fig files.
xfig:
Executing install script for xfig-3.2.4-i486-1...


real    1m52.509s
user    0m25.426s
sys     0m11.181s

root@gablin:/home/slackware/t#time removepkg *.tgz 
...................
...................
real    10m49.533s
user    6m52.570s
sys     1m9.560s

root@gablin:/home/slackware/t#time installpkg *.tgz  
Executing install script for xfig-3.2.4-i486-1...
real    1m43.061s
user    0m24.014s
sys     0m10.601s

root@gablin:/home/slackware/t#time multi_removepkg -multi *.tgz
....................
real    4m16.436s
user    1m53.951s
sys     0m58.660s
root@gablin:/home/slackware/t#ls *.tgz
tetex-3.0-i486-4.tgz      transfig-3.2.4-i386-1.tgz
tetex-doc-3.0-i486-4.tgz  xfig-3.2.4-i486-1.tgz
Ho preso una serie di pacchetti non molto significativa e comunque i pacchetti sono solo 4 e abbastanza corposi ... si può notare già un miglioramento delle performance ...
Proverò con la Gnome-Slacky appena riesco ad avere un pò di tempo ....
Bravo mauro se non ci sfugge qualcosa di grosso dovresti essere sulla buona strada .... =D> =D> =D>

Avatar utente
Luci0
Staff
Staff
Messaggi: 3591
Iscritto il: lun 27 giu 2005, 0:00
Nome Cognome: Gabriele Santanché
Slackware: 12.2 14.0
Kernel: 2.6.27.46- gen 3.2.29
Desktop: KDE 3.5.10 Xfce
Località: Forte dei Marmi
Contatta:

Messaggio da Luci0 »

Mentre controllavo se i riferimenti a packages ho notato che i pacchetti come i kernelsource e qcad etc .. hanno dei file corrispondenti in /var/log/packages molto pesanti ... quasi quasi provo a rimuovere qualche pacchetto particolarmente pesante in quest senso ... come i kernel source ...

Avatar utente
submax82
Staff
Staff
Messaggi: 3202
Iscritto il: mer 31 ago 2005, 0:00
Desktop: xfce
Distribuzione: SalixOS
Contatta:

Messaggio da submax82 »

Proverò con la Gnome-Slacky appena riesco ad avere un pò di tempo ....
fateci sapere.

Avatar utente
mauro
Linux 2.x
Linux 2.x
Messaggi: 281
Iscritto il: gio 11 mag 2006, 21:51
Slackware: current
Kernel: uno degli ultimi...
Desktop: dwm

Messaggio da mauro »

mauro se non ci sfugge qualcosa di grosso
e' proprio questo che mi preoccupa :)
Nel senso che in teoria funziona tutto ma ho un paio di dubbi:
- avro' fatto tutto giusto (naaaa...) o mi sara' sfuggito qualche viscido e dannosissimo dettaglio?
- e soprattutto: la modifica in se' e' abbastanza banale e migliora molto l'efficienza dello script, come mai non ci ha mai pensato pat? Magari c'e' qualche cosa che non sto considerando...

ps: per avere tempi piu' veritieri quando fai le prove credo sia meglio reindirizzare l'output in un log o in /dev/null, il risparmio di tempo e' notevole, specie coi pacchetti pieni di roba.

Codice: Seleziona tutto

root@boxolino:~# time ./multi_removepkg -multi -warn /var/log/packages/g*

real    0m30.536s
user    0m10.679s
sys     0m2.920s
root@boxolino:~# time ./multi_removepkg -multi -warn /var/log/packages/g* > log

real    0m10.954s
user    0m8.716s
sys     0m2.063s
root@boxolino:~# 

Rispondi