Files omonimi in release differenti di slack e rsync
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 Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
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.
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 Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
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.
- conraid
- Staff

- Messaggi: 13631
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Re: Files omonimi in release differenti di slack e rsync
+ /paperino
+ /paperone
+ /pippo
- *
+ /paperone
+ /pippo
- *
- joe
- Iper Master

- Messaggi: 3986
- Iscritto il: ven 27 apr 2007, 11:21
- Slackware: 15.0
- Kernel: 5.15.38
- Desktop: dwm
Re: Files omonimi in release differenti di slack e rsync
Codice: Seleziona tutto
[xxx@xxx prove]$ cat lista
+ /paperino
+ /paperone
+ /pippo
- *
[xxx@xxx prove]$ ls a c
a:
altri_files
paperino
paperone
pippo
c:
paperino
paperone
pippo
pluto
topolino
[xxx@xxx prove]$ rsync -avz --files-from=lista --delete --delete-excluded a/ c/
building file list ... rsync: link_stat "/home/xxx/downloads/prove/a/+ /paperino" failed: No such file or directory (2)
rsync: link_stat "/home/xxx/downloads/prove/a/+ /paperone" failed: No such file or directory (2)
rsync: link_stat "/home/xxx/downloads/prove/a/+ /pippo" failed: No such file or directory (2)
rsync: link_stat "/home/xxx/downloads/prove/a/- *" failed: No such file or directory (2)
done
sent 29 bytes received 20 bytes 98.00 bytes/sec
total size is 0 speedup is 0.00
rsync error: some files could not be transferred (code 23) at main.c(892) [sender=2.6.8]
[xxx@xxx prove]$ ls c
paperino
paperone
pippo
pluto
topolino
- conraid
- Staff

- Messaggi: 13631
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Re: Files omonimi in release differenti di slack e rsync
Codice: Seleziona tutto
$ ls a b
a:
labrador minnie paperino paperone pippo pluto
b:
costello paperino pippo terrier
$ cat lista
paperino
paperone
pippo
$ cat lista2
*
$ rsync -avz --include-from=lista --exclude-from=lista2 --delete --delete-excluded a/ b/
$ ls a b
a:
labrador minnie paperino paperone pippo pluto
b:
paperino paperone pippo
- joe
- Iper Master

- Messaggi: 3986
- Iscritto il: ven 27 apr 2007, 11:21
- Slackware: 15.0
- Kernel: 5.15.38
- Desktop: dwm
Re: Files omonimi in release differenti di slack e rsync
Eh eh, quando si dice..."a work around".... 
Se funge dovrebbe essere ok...la lista contenente l'asterisco dovrebbe essere superflua, googolandoho visto che alcuni utilizzano --exclude-from="*".
Sarà giusto?
A dire il vero tempo fa quando avevo usato per la prima volta rsync, avevo anche provato delle opzioni simili (non ricordo quali di preciso) a --exclude-qualcosa o include-qualcos'altro. Ma poi avevo ripiegato su --file-from.
Non ricordo il motivo preciso...staremo a vedere...
Il rsync lo richiamo in uno script ed in particolare la LISTA la creo con sed a partire dal FILELIST.TXT presente nella directory "radice" del ramo "slackware-X" che ho intenzione di scaricare. La lista alla fine è una cosa del tipo:
Ovvero contiene tutti file e le directory per esempio della directory di un mirror remoto :mirror/slackware-12.1/
...cioè non tutti, solo quelli che vogli scaricare, però ha quella struttura lì.
Spero vada bene.
Ok. allora, modifico lo script su tuo consiglio. In ogni caso farò sapere se ha funzionato.
Saluti e grazie per la dritta.
Se funge dovrebbe essere ok...la lista contenente l'asterisco dovrebbe essere superflua, googolandoho visto che alcuni utilizzano --exclude-from="*".
Sarà giusto?
A dire il vero tempo fa quando avevo usato per la prima volta rsync, avevo anche provato delle opzioni simili (non ricordo quali di preciso) a --exclude-qualcosa o include-qualcos'altro. Ma poi avevo ripiegato su --file-from.
Non ricordo il motivo preciso...staremo a vedere...
Il rsync lo richiamo in uno script ed in particolare la LISTA la creo con sed a partire dal FILELIST.TXT presente nella directory "radice" del ramo "slackware-X" che ho intenzione di scaricare. La lista alla fine è una cosa del tipo:
Codice: Seleziona tutto
ANNOUNCE.12_1
BOOTING.TXT
CHANGES_AND_HINTS.TXT
CHECKSUMS.md5
CHECKSUMS.md5.asc
COPYING
COPYING3
COPYRIGHT.TXT
CRYPTO_NOTICE.TXT
ChangeLog.txt
FAQ.TXT
FILELIST.TXT
GPG-KEY
PACKAGES.TXT
README.TXT
README.initrd
README_CRYPT.TXT
README_LVM.TXT
README_RAID.TXT
RELEASE_NOTES
SPEAKUP_DOCS.TXT
SPEAK_INSTALL.TXT
Slackware-HOWTO
UPGRADE.TXT
extra/CHECKSUMS.md5
extra/CHECKSUMS.md5.asc
extra/FILE_LIST
extra/MANIFEST.bz2
extra/PACKAGES.TXT
extra/README.TXT
extra/slackpkg/slackpkg-2.70.3-noarch-2.tgz
extra/slackpkg/slackpkg-2.70.3-noarch-2.tgz.asc
extra/slackpkg/slackpkg-2.70.3-noarch-2.txt
isolinux
isolinux/README.TXT
isolinux/f2.txt
isolinux/initrd.img
...cioè non tutti, solo quelli che vogli scaricare, però ha quella struttura lì.
Spero vada bene.
Ok. allora, modifico lo script su tuo consiglio. In ogni caso farò sapere se ha funzionato.
Saluti e grazie per la dritta.
- conraid
- Staff

- Messaggi: 13631
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Re: Files omonimi in release differenti di slack e rsync
Di niente, ma attento, --exclude-from="*" ti darà errore. Al limite --exclude="*"joe ha scritto: Ok. allora, modifico lo script su tuo consiglio. In ogni caso farò sapere se ha funzionato.
Saluti e grazie per la dritta.
- joe
- Iper Master

- Messaggi: 3986
- Iscritto il: ven 27 apr 2007, 11:21
- Slackware: 15.0
- Kernel: 5.15.38
- Desktop: dwm
Re: Files omonimi in release differenti di slack e rsync
Allora, ho provato.
Sull'esempietto di directory semplici con solo files al loro interno funge. Purtroppo la dir remota slackware-12.1 è un attimo più comlessa, ovvero ha subdirectory ecc ecc.
Leggendo il man avevo notato alcuni moniti....
Va bè... per simulare meglio l'operazione ho creato 2ue directory "a" e"c" leggermente più complicate con sottodirectory ecc. Purtroppo così la storia cambia.
Da quanto ho capito, l'esclusione a mezzo del jolly nella seconda lista causa l'esclusione dal rsync delle "parent directory" e la lista di inclusione non può nulla perchè e costruita sula base dei files "profondi" più interni diciamo.
Potrebbe essere sufficente aggiungere all'inclusione anche i parent-directory singoli (come peraltro è costruito ancheil file FILELIST.TXT) ma non ho acnora provato. Magari provo mentre scrivo
Intanto posto il risultato disastroso della prova:
magari basta fare la lista come segue, vediamo come viene fuori:
Ok, così pare funzionare, mi piaceva di più il --file-from perchè mi sembra più "controllabile" tuttavia probabilmente è solo un'impressione. E poi sembra funzionare solo verso una destinazione "vuota", invece così con le due liste e le opzioni --exclude/include-from= pare funzionare.
Se avete qualche commento da aggiungere non esitate. In ogni caso proverò con la ben più complessa dir slackware-12.1 e vediamo cosa succede.
Saluti
Sull'esempietto di directory semplici con solo files al loro interno funge. Purtroppo la dir remota slackware-12.1 è un attimo più comlessa, ovvero ha subdirectory ecc ecc.
Leggendo il man avevo notato alcuni moniti....
Va bè... per simulare meglio l'operazione ho creato 2ue directory "a" e"c" leggermente più complicate con sottodirectory ecc. Purtroppo così la storia cambia.
Da quanto ho capito, l'esclusione a mezzo del jolly nella seconda lista causa l'esclusione dal rsync delle "parent directory" e la lista di inclusione non può nulla perchè e costruita sula base dei files "profondi" più interni diciamo.
Potrebbe essere sufficente aggiungere all'inclusione anche i parent-directory singoli (come peraltro è costruito ancheil file FILELIST.TXT) ma non ho acnora provato. Magari provo mentre scrivo
Intanto posto il risultato disastroso della prova:
Codice: Seleziona tutto
[xxx@xxx prove]$ cat lista
paperopoli/paperino
paperopoli/paperone
topolinia/pippo
[xxx@xxx prove]$ cat lista2
*
[xxx@xxx prove]$ ls -R a c
a:
altre_dir
altri_files
paperopoli
topolinia
a/altre_dir:
altri-files
a/paperopoli:
paperino
paperone
a/topolinia:
pippo
pluto
topolino
c:
altre_dir
paperopoli
topolinia
c/altre_dir:
files-inutili
c/paperopoli:
paperino
paperone
c/topolinia:
pippo
[xxx@xxx prove]$ rsync -avz --include-from=lista --exclude-from=lista2 --delete --delete-excluded a/ c/
building file list ... done
deleting topolinia/pippo
deleting topolinia/
deleting paperopoli/paperone
deleting paperopoli/paperino
deleting paperopoli/
deleting altre_dir/files-inutili
deleting altre_dir/
./
sent 78 bytes received 26 bytes 208.00 bytes/sec
total size is 0 speedup is 0.00
[xxx@xxx prove]$ ls -R a c
a:
altre_dir
altri_files
paperopoli
topolinia
a/altre_dir:
altri-files
a/paperopoli:
paperino
paperone
a/topolinia:
pippo
pluto
topolino
c:
Codice: Seleziona tutto
[xxx@xxx prove]$ cat lista
paperopoli
paperopoli/paperino
paperopoli/paperone
topolinia
topolinia/pippo
[xxx@xxx prove]$ cat lista2
*
[xxx@xxx prove]$ ls -R a c
a:
altre_dir
altri_files
paperopoli
topolinia
a/altre_dir:
altri-files
a/paperopoli:
paperino
paperone
a/topolinia:
pippo
pluto
topolino
c:
altre_dir
paperopoli
topolinia
c/altre_dir:
files-inutili
c/paperopoli:
paperino
paperone
c/topolinia:
pippo
[xxx@xxx prove]$ rsync -avz --include-from=lista --exclude-from=lista2 --delete --delete-excluded a/ c/
building file list ... done
deleting altre_dir/files-inutili
deleting altre_dir/
./
paperopoli/
paperopoli/paperino
paperopoli/paperone
topolinia/
topolinia/pippo
sent 314 bytes received 104 bytes 836.00 bytes/sec
total size is 0 speedup is 0.00
[xxx@xxx prove]$ ls -R a c
a:
altre_dir
altri_files
paperopoli
topolinia
a/altre_dir:
altri-files
a/paperopoli:
paperino
paperone
a/topolinia:
pippo
pluto
topolino
c:
paperopoli
topolinia
c/paperopoli:
paperino
paperone
c/topolinia:
pippo
Se avete qualche commento da aggiungere non esitate. In ogni caso proverò con la ben più complessa dir slackware-12.1 e vediamo cosa succede.
Saluti
- joe
- Iper Master

- Messaggi: 3986
- Iscritto il: ven 27 apr 2007, 11:21
- Slackware: 15.0
- Kernel: 5.15.38
- Desktop: dwm
Re: Files omonimi in release differenti di slack e rsync
Informo che pare funzionare bene anche con la dir remota slackware-12.1.
Non volendo bruciare un CD, ho anche provato l'installazione della slack-12.1 usando come "source" proprio la dir ottenuta con la sincronizzazione e avviando col cd della 12.0 che avevo masterizzato tempo fà. Cioè ora scrivo dalla 11.0, qui ho la directory slackware-12.1/. Su un'altra partizione ho messo la 12.1 prendedo i file da quella directory e lavorando dal cd di installazione della 12.0. Non so se mi sono spiegato.
Si sarebbe potuto anche creare la iso e montarla in fase di installazione, ma a questo punto mi pare più semplice così installando "SOURCE from another device".
Saluti e grazie mille dell'aiuto.Rsync è davvero un'ottimo strumento, spero che questo post possa essere utile ad altri.
Non volendo bruciare un CD, ho anche provato l'installazione della slack-12.1 usando come "source" proprio la dir ottenuta con la sincronizzazione e avviando col cd della 12.0 che avevo masterizzato tempo fà. Cioè ora scrivo dalla 11.0, qui ho la directory slackware-12.1/. Su un'altra partizione ho messo la 12.1 prendedo i file da quella directory e lavorando dal cd di installazione della 12.0. Non so se mi sono spiegato.
Si sarebbe potuto anche creare la iso e montarla in fase di installazione, ma a questo punto mi pare più semplice così installando "SOURCE from another device".
Saluti e grazie mille dell'aiuto.Rsync è davvero un'ottimo strumento, spero che questo post possa essere utile ad altri.