# rifare partizionamento [RISOLTO!]

## bandreabis

Ciao a tutti. Forse è il solito problema, ma mi piacerebbe avere un suggerimento ad hoc.

Io devo correggere la tabella di formattazione del mio portatile.

Premetto che non ho problemi di spazio perché posso usare senza problemi un HD da 500GB come appoggio.

La mia situazione attuale è questa:

```
fdisk -l

Disco /dev/hda: 80.0 GB, 80026361856 byte

255 testine, 63 settori/tracce, 9729 cilindri

Unità = cilindri di 16065 * 512 = 8225280 byte

Identificativo disco: 0xf98df98d

Dispositivo Boot      Start         End      Blocks   Id  System              Montaggio

/dev/hda1               1          63      506016   83  Linux                  /boot

/dev/hda2              64          90      216877+  88  Linux plaintext      

/dev/hda3   *          91         699     4891792+   7  HPFS/NTFS          

/dev/hda4             700        9729    72533475    5  Esteso

/dev/hda5             700         797      787153+  83  Linux                  /ROOT

/dev/hda6             798         860      506016   82  Linux swap / Solaris   

/dev/hda7             861        2077     9775521   83  Linux                  /usr

/dev/hda8            2078        2807     5863693+  83  Linux                  /var

/dev/hda9            2808        3537     5863693+  83  Linux                  /home

/dev/hda10           3538        7872    34820856   83  Linux                  /DATI

/dev/hda11           7873        9728    14908288+   7  HPFS/NTFS

```

vorrei ingrandire hda3 e eliminare hda11 così da allargare hda10 fino alla fine del disco.

A quel punto la numerazione della partizioni non cambierebbe e non cambierebbero nemmeno grub

```
default 0

timeout 5

splashimage=(hd0,0)/grub/splash.xpm.gz

title Gentoo Linux 2.6.25-r8

root (hd0,0)

kernel /kernel32-2.6.25-gentoo-r8 root=/dev/hda5 vga=791 splash=silent,fadein,theme:gentoo-blue quiet console=tty1

initrd /boot/gentoo-blue 

title Windows XP

rootnoverify (hd0,2)

makeactive

chainloader +1

```

 e fstab:

```
/dev/hda1               /boot           ext2            noatime         1 2

/dev/hda5               /               ext3            noatime         0 1

/dev/hda6               none            swap            sw              0 0

/dev/hda7               /usr            reiserfs        noatime         0 0

/dev/hda8               /var            reiserfs        noatime         0 0

/dev/hda9               /home           reiserfs        noatime         0 0

/dev/hda10              /documenti      xfs             noatime         0 0

/var/sys-tmp            /tmp            none            rw,bind,users   0 0

```

per fare un backup del sistema per poi ripristinalo dopo ripartizionamento devo scegliere un metodo sicuro.

Ho letto di 

```
cp -a
```

 per ogni cartella o di 

```
dd if=/dev/hdaX /of=/dev/sdaX
```

 per ogni partizione.

Ma non so decidere quale sia il metodo migliore.

Consigli sulle precise ed adatte operazioni da fare?

Grazie, e se mancasserò informazioni ve le darò.

Andrea

----------

## djinnZ

rsync è meglio. Con dd copi brutalmente l'intera partizione ma non puoi ridimensionarla. hda10 la puoi anche copiare con xfs_copy o con xfsdump/restore.

Già che ti trovi var e swap vanno meglio all'inizio del disco o preposte e contigue alla root.

----------

## bandreabis

 *djinnZ wrote:*   

> rsync è meglio. Con dd copi brutalmente l'intera partizione ma non puoi ridimensionarla. hda10 la puoi anche copiare con xfs_copy o con xfsdump/restore.
> 
> Già che ti trovi var e swap vanno meglio all'inizio del disco o preposte e contigue alla root.

 

Grazie dj!!

rsync come funziona? E' meglio che cp -a?

quindi che partizionamento mi consigli, considerando che la mia morosa ha bisogno di MS?

----------

## djinnZ

 *bandreabis wrote:*   

> Grazie dj!!

   :Shocked:  [censura]  :Evil or Very Mad:  

```
man rsync
```

così impari ad offendere.  :Evil or Very Mad:  Conosci gli smith?! C'è un pezzo che esprime perfettamente la mia idea su talune figure (anche perchè li associo a diversi presentatori televisivi). cp -a mi ha creato non pochi grattacapi in passato con acl e security label, oltre la fatto che rende il sistema inusabile e ti costringe a ricopiare tutto se interrompi. Meglio rsync è fatto apposta per questo.

Personalmente, da forzato all'uso del mai troppo detestato (ma mai quanto i governi ladri ed imbecilli degli ultimi quindici anni e la categoria di incompetenti spendaccioni cui appartengo) windozz e della ciofeca di programmi che ci fanno girare sopra, ti consiglio nell'ordine:

swap linux; home e var; windozz; estesa con root linux e partizione/i per i documenti

oppure

windozz; estesa con swap linux, home e var, root ; partizione/i per i documenti (per me tanto vale usare una partizione unica condivisa tra windozz e linux

La /boot separata non ti serve a nulla se non usi raid/lvm. Ovviamente ho assunto che in home e Document & settings non c'è nulla di importante se non le impostazioni e la cache dei browser. Chiaro che dovresti reinstallare windozz in modalità unattended per usare D&S su volume separato altrimenti non ne vale la pena.

Se poi vuoi fare le cose complicate puoi usare il mio partizionamento:

estesa (5) < swap linux , home, var e tmp linux, ntfs per document & settings >, ntfs per windows C: , bsd <root linux, archivio , swap per suspend>, ntfs per i documenti condivisi tra i due sistemi.

Ma te lo sconsiglio perchè ad oggi non ho ancora capito bene come fare ad usare le slice, non ho trovato un accidente di documentazione sull'argomento (dimensione del settore di boot e della tabella di partizionamento su bsd), l'argomento è già discusso in un altro thread.

Dimenticavo che Windozz non puoi copiarlo quindi o lo reinstalli o usi dd (e la partizione deve essere identica).

Considera che windozz deve stare all'inizio del disco (non so se con zozz'a bestia hanno risolto ma con xp c'è il broblema del boot entro il settore 1024), che le aree iniziali hanno un accesso ed un tranfer rate più alto e che avere i dati di accesso frequente non contigui costringe il disco ad operare troppi spostamenti della testina da una parte all'altra riducendo le prestazioni e non di poco.

Dimenticavo, se reinstalli windozz ex novo azzera con dd tutte le partizioni ntfs e formatta tutte le partizioni linux o l'installer puffoso com'è si blocca.

----------

## bandreabis

Se ti fa sentire meglio puoi chiamarmi "band".   :Razz: 

Tornando a noi:

swap non si riempe da tempo anche se ha la sua partizione... ma male non fa: magari lo aumento visto che ho 2 GB di RAM... si sa mai, lo tengo in "suspend".

Windows ha una sua partizione ma è segregato in quanto le altre partizioni sono tutte linux - quindi non le vede nemmeno e ma sta bene così (e anche a lui)... niente partizione dati FAT nè partizione per D&S. In ogni caso l'avrei reinstallato comunque in una partizione almeno doppia (così non ho spazio nemmeno per gli aggiornamenti).

Partizionamento a parte, come utilizzo rsync?

Di preciso, come mi comporto con la root e le altre directory?

Da manuale: 

```
mount /dev/hda6 /mnt/gentoo/origine

rsync -a /mnt/gentoo/origine/ /mnt/gentoo/backup/ 
```

  :Question: 

----------

## djinnZ

Non accetto scuse, soprattutto con il natale prossimo. Quest'offesa andrà lavata con il sangue  :Evil or Very Mad: 

ti complichi inutilmente la vita, monti l'albero completo di root in una directory /mnt/sorgente, ad esempio, e con un semplice 

```
rsync -aq --progress /mnt/sorgente /mnt/destinazione/backup
```

 (io aggiungo AX ovviamente) e quando hai finito di ripartizionare e formattare ripeti l'operazione all'inverso. Mica sei obbligato a copiare una partizione alla volta.

La ragione per la quale uso le slice è che ho due partizioni di swap proprio per il supend (la swap primaria è di 256 od al massimo 512 MB, tanto non la uso mai neppure io), di swap ne puoi avere quante ne vuoi, per esempio sul server ho 8 dischi (in realtà 7, che sia maledetto un certo devel portasfiga, che pagherà il fio delle sue colpe, e le luminarie natalizie) e 9 partizioni di swap, una per ogni disco, ma li mi serve per quando faccio pasticci con la compilazione in ram. Se sai che non ti serve o che ti serve solo come parafulmine usa una piccola swap primaria all'inizio del disco ed una più grande nel mezzo.

Visto che la situazione è così semplice mi pare che l'ordine swap, var e home (usa il bind mount e non i link), windozz, swap, root, documenti sia più che sufficiente.

Potresti anche pensare di fregartene a fare direttamente swap, windozz, linux, documenti e ricorrere ai backup (la fat per scambiare file da windozz a linux ormai è inutile meglio se usi direttamente ntfs3g o una partizione condivisa in hfs+)

----------

## bandreabis

Nel CD minimale non c'è rsync, posso dargli il percorso sul sistema sorgente?

Ho provato e pare andare.

Vedo però che non ho nessun "progress" con --quiet, e senza mi indica ogni singolo file che sta copiando... poco male.

La cosa che mi preme di più però, è che col comando che uso mi crea una directory sorgente sull'HD di backup... nell'operazione inversa come posso copiare il backup senza che mi crei una cartella sorgente invece che copiare la root sulla root e usr sulla usr?

Ora vado a nanna.

Intanto lui "rsincronizza".

----------

## djinnZ

 *bandreabis wrote:*   

> nell'operazione inversa come posso copiare il backup senza che mi crei una cartella sorgente invece che copiare la root sulla root e usr sulla usr?

 Scusa, monti la root in /mnt/gentoo, crei /mnt/gentoo/usr, monti /mnt/gentoo/usr etc; fatto tutto lanci rsync -aq /mnt/destinazione/backup /mnt/gentoo ed aspetti che ha finito. Non mi pare tanto utile fare le cose un pezzo alla volta (se usi le label per volume in selinux o casi del genere serve ma in tutti i casi normali è solo smanettare inutilmente).

Ovviamente --progress e -q sono mutuamente esclusive, è scritto nel manuale che avresti dovuto leggere, non fosse altro perchè andando a memoria è facile sbagliare.

----------

## bandreabis

 *djinnZ wrote:*   

>  *bandreabis wrote:*   nell'operazione inversa come posso copiare il backup senza che mi crei una cartella sorgente invece che copiare la root sulla root e usr sulla usr? Scusa, monti la root in /mnt/gentoo, crei /mnt/gentoo/usr, monti /mnt/gentoo/usr etc; fatto tutto lanci rsync -aq /mnt/destinazione/backup /mnt/gentoo ed aspetti che ha finito. Non mi pare tanto utile fare le cose un pezzo alla volta (se usi le label per volume in selinux o casi del genere serve ma in tutti i casi normali è solo smanettare inutilmente).
> 
> Ovviamente --progress e -q sono mutuamente esclusive, è scritto nel manuale che avresti dovuto leggere, non fosse altro perchè andando a memoria è facile sbagliare.

 

Quello l'ho compreso.

Il fatto è che se do

```
rsync -aq /mnt/destinazione/backup /mnt/gentoo
```

mi crea la directory /mnt/gentoo/backup con le sotto directories.

----------

## djinnZ

 *Quote:*   

> rsync -aq /mnt/destinazione/backup/ /mnt/gentoo

  *man rsync wrote:*   

> 
> 
>               rsync -avz foo:src/bar/ /data/tmp
> 
>        A  trailing slash on the source changes this behavior to avoid creating
> ...

 Ammetto che avrei dovuto dirtelo ma un minimo di fesserie capitano, e se non capitano sono intenzionali. Nel caso specifico me ne ero scordato del tutto.  :Twisted Evil: 

Ma quando si parla di shell e comandi, tutto quello che è posix (od in ogni modo è "old-unix") nasconde simili trabocchetti e pertanto, indipendentemente dall'esperienza e dal fatto che per molti versi siano scritti con i piedi, leggere sempre i fottuti manuali prima di fare danni. O si rischia di fare la fine mia (quando ho fatto lanciare ad uno script un 

```
rm -f * *
```

 invece di un 

```
rm -f *
```

 con le ovvie conseguenze).

 *avviso ai deficienti che vorrebbero provare cosa significa wrote:*   

> ovviamente è meglio lanciare un 
> 
> ```
> ls -ld * *
> ```
> ...

 

----------

## bandreabis

Nonostante il Natale sei stato molto gentile.   :Razz: 

Grazie.

Stasera opero.

----------

## cloc3

[quote="djinnZ"][quote]rsync -aq /mnt/destinazione/backup[quote]

attenti ad non dimenticare anche l'opzione -H.

il semplice -a di rsync non è equivalente a quello di cp.

per questa ragione, se devo fare un backup locale, preferisco il comando cp, che è nativo unix.

rsync, come dice il nome, è specifico per le sincronizzazioni da remoto.

----------

## bandreabis

 *djinnZ wrote:*   

>  *Quote:*   rsync -aq /mnt/destinazione/backup 
> 
> attenti ad non dimenticare anche l'opzione -H.
> 
> il semplice -a di rsync non è equivalente a quello di cp.
> ...

 

Non ho linux sotto mano. Che fa l'opzione -H??

rsync o cp?

----------

## djinnZ

 *bandreabis wrote:*   

> Non ho linux sotto mano. Che fa l'opzione -H??

  :Shocked: [censura] :Evil or Very Mad:  :Evil or Very Mad:  :Evil or Very Mad:  :Twisted Evil:  :Twisted Evil:  :Twisted Evil: quando ci vuole... ci vuole. Ed il natale ispira.  :Mr. Green: 

@cloc3: è proprio per questo che uso rsync, il -H è da evitare se vuoi ristrutturare le partizioni, con cp rischi casini, se poi ti riferisci al -d quello corrisponde al -l non al -H.

----------

## cloc3

 *djinnZ wrote:*   

> 
> 
> @cloc3: è proprio per questo che uso rsync, il -H è da evitare se vuoi ristrutturare le partizioni

 

ognuno può avere le proprie opinioni ma, trattandosi di uno strumento per copiare, è corretto avvisare che rsync esegue il proprio compito in un certo modo piuttosto che in un altro e che la copia finale potrebbe non essere perfettamente identica.

perché se poi chi ti legge non verifica con man  :Rolling Eyes:  ...

finisce magari che ti dà la colpa, per non avere precisato prima.

----------

## djinnZ

Non vorrei dire una cretinata ma cp tra volumi diversi trasforma gli hardlink in altrettanti file. O sto facendo confusione?

Se poi chi legge non verifica e combina un casino... peggio per lui.  :Twisted Evil: 

----------

## bandreabis

Mi sun chi!

Per verificare (alias farvi scannare   :Twisted Evil:  ) su quale sia il metodo migliore ed evitare brutte sorprese!!

Viva il Natale  :Exclamation: 

----------

## cloc3

 *djinnZ wrote:*   

> Non vorrei dire una cretinata ma cp tra volumi diversi trasforma gli hardlink in altrettanti file. O sto facendo confusione?

 

```

[user@localhost ~]$ mkdir hardlink

[user@localhost ~]$ >hardlink/f1

[user@localhost ~]$ ln hardlink/f1 hardlink/f2

[user@localhost ~]$ cp -a hardlink/ hardlink1

[user@localhost ~]$ rsync -a hardlink/ hardlink2

[user@localhost ~]$ ls -l hardlink*

hardlink:

total 0

-rw-rw-r-- 2 user user 0 2008-12-17 20:49 f1

-rw-rw-r-- 2 user user 0 2008-12-17 20:49 f2

hardlink1:

total 0

-rw-rw-r-- 2 user user 0 2008-12-17 20:49 f1

-rw-rw-r-- 2 user user 0 2008-12-17 20:49 f2

hardlink2:

total 0

-rw-rw-r-- 1 user user 0 2008-12-17 20:49 f1

-rw-rw-r-- 1 user user 0 2008-12-17 20:49 f2

```

----------

## bandreabis

 *cloc3 wrote:*   

>  *djinnZ wrote:*   
> 
> @cloc3: è proprio per questo che uso rsync, il -H è da evitare se vuoi ristrutturare le partizioni 
> 
> ognuno può avere le proprie opinioni ma, trattandosi di uno strumento per copiare, è corretto avvisare che rsync esegue il proprio compito in un certo modo piuttosto che in un altro e che la copia finale potrebbe non essere perfettamente identica.
> ...

 

Alla fine queste opzioni vanno usate o meno, non risco a capire.

Per esempio:

 *Quote:*   

> -H: Hard Links. This causes rsync to maintain hard links that are on the server being backed up. This has nothing to do with the hard links used during the rotation. 

 

ed anche questo:

 *Quote:*   

> --numeric-ids: This tells rsync to not attempt to translate UID <> userid or GID <> groupid. This is very important when doing backups and restores. If you are doing a restore from a live cd such as Knoppix your file ownerships will be completely screwed up if you leave this out. 
> 
> 

 

La seconda mi pare utile, mentre la prima mica la capisco.

Man o non man!

E --sparse ???

----------

## cloc3

 *bandreabis wrote:*   

> Per esempio:
> 
>  *Quote:*   -H: Hard Links
> 
> --numeric-ids
> ...

 

la prima è l'unica che ti interessa.

prova a ripetere il testo precedente con -H e osserva la differenza.

in linea assolutamente teorica, dovresti dare un occhio anche all'opzione -X, ma non credo che tu utiilzzi partizioni con gli attributi estesi (credo che siano delle specie di acl aggiunte ai tradizionali permessi unix, ma non lo so con precisione).

la seconda opzione, invece, mi sembra specifica per le copie verso clienti remoti.

gli accoppiamenti utente - uid o gruppo -gid, infatti, possono risultare diversi nel sistema nuovo e non è ovvio che la traduzione sia il comportamento desiderato. tu copi su una periferca locale, quindi non ti riguarda.

----------

## bandreabis

 *cloc3 wrote:*   

>  *bandreabis wrote:*   Per esempio:
> 
>  *Quote:*   -H: Hard Links
> 
> --numeric-ids
> ...

 

Non capisco che differenza dovrei notare.

Man o non man non ci sto capendo molto.

Che significa "ristrutturare le partizioni"?

Pensare che non ho ancora capito se sia meglio cp -a o rsync -aH.

----------

## cloc3

 *bandreabis wrote:*   

> 
> 
> Pensare che non ho ancora capito se sia meglio cp -a o rsync -aH.

 

direi che è proprio una questione di gusto personale, perché l'effetto è identico.

se non osservi le differenze, è probabile che tu non conosca il concetto di hard link.

```

hardlink1: 

total 0 

-rw-rw-r-- 2 user user 0 2008-12-17 20:49 f1 

-rw-rw-r-- 2 user user 0 2008-12-17 20:49 f2 

 

hardlink2: 

total 0 

-rw-rw-r-- 1 user user 0 2008-12-17 20:49 f1 

-rw-rw-r-- 1 user user 0 2008-12-17 20:49 f2

```

in unix i file non vengono catalogati attribuendo ad essi un nome, ma un numero, chiamato descrittore di file.

l'attribuzione del nome si chiama, appunto hardlink. in questo modo, ciascun file può essere associato a più di un nome.

le due voci contenute nella cartella hardlink1, generata con il comando cp -a sono due nomi corrispondenti allo stesso file fisico, mentre i file della cartella hardlink2, generata da rsync senza -H, sono due file distinti con nome diverso.

personalmente, ritengo che l'abuso degli hard-link sia elemento di confusione e fonte di pasticci, ma se devo copiare una partizione di root dove il 99% dei file è stata creata da programmatori che non conosco, preferisco effettuare una copia quanto più fedele del sistema.

----------

## bandreabis

Per evitare un doppio rsync -aH avanti e indietro sul HD sorgente, potrei fare in un verso un dd if= of= (per avere una copia assolutamente esatta del mio sistema - ma prima s'ha da capire come fare nel dettaglio. Devo creare lo stesso numero di partizioni e della stessa identica grandezza?) e indietro con rsync.

E' paranoia questa (fifa che qualcosa vada storto) o può essere buona idea?

Intanto ho già fatto una rsyncronizzazione (-aH) del sorgente sull'HD esterno.

EDIT 1

Cancellata rsincronizzazione e create la partizioni per il backup. Fatta copia con dd del HD origine su HD backup.

Per la partizione xfs, l'uso di dd ha dato esito negativo, infatti all'atto di montare la nuova partizione di backup diceva di non riconoscere il filesystem. Essendo una partizione dati e non di sistema ho semplicemente formattato e copiato i dati con rsync -a (cp -a sarebbe stato la stessa cosa - a quanto ho capito).

Le altre partizioni invece si sono montate senza problemi.

Ora mi sento più tranquillo e posso provare il passaggio del ripartizionamento e ripristino.

EDIT 2

errore!!!

durante rsync da USB a HD accade un errore:

più o meno così:

```
wrtitefd_unbuffered failed to write 4 bytes [sender] broken pipe (32)

connection unexpectedly closed

rsync protocol data stream (code 12)
```

provo con cp -a

EDIT 3

Transizione completata.

Ho sistemato grub e fstab, ed è partito.

Pare funzionare tutto.

Metto risolto al titolo!

----------

## cloc3

 *bandreabis wrote:*   

> 
> 
> Per la partizione xfs, l'uso di dd ha dato esito negativo, infatti all'atto di montare la nuova partizione di backup diceva di non riconoscere il filesystem. 
> 
> 

 

quello che dici è un po' strano. e sicuramente non dipende dal filesystem. dovresti dichiarare con esattezza il comando usato, affinchè si possa capirne l'effetto. dd è un comando di basso con una sintassi un po' scorbutica. è facile farne un uso scorretto.

 *bandreabis wrote:*   

> 
> 
> durante rsync da USB a HD accade un errore:
> 
> più o meno così:
> ...

 

mi sembra un errore incidentale, che può dipendere da moltissime cause.

ne farei una questione seria solo se fosse ripetibile, ma se tu hai subito cambiato strumento, non puoi attribuire la responsablità ad rsync.

semmai, mi vengono due riflessioni:

1. rsync possiede un sistema di notifica degli errori affidabile.

2. rsync esegue la copia utilizzando un flusso di rete, perché è uno strumento vocato alla sincronizzazione tra filesystem remoti.

è comprensibile che cp, essendo un comando nativo per l'uso locale, esegua l'operazione in un modo meno complesso.

----------

## bandreabis

 *cloc3 wrote:*   

>  *bandreabis wrote:*   
> 
> Per la partizione xfs, l'uso di dd ha dato esito negativo, infatti all'atto di montare la nuova partizione di backup diceva di non riconoscere il filesystem. 
> 
>  
> ...

 

Ho fatto come con le altre partizioni 

```
dd if=/dev/hdaX of=/dev/sdaX
```

 *cloc3 wrote:*   

>  *bandreabis wrote:*   
> 
> durante rsync da USB a HD accade un errore:
> 
> più o meno così:
> ...

 

Ho provato due volte lo stesso comando dopo avere riformattato le partizioni di destinazione e rsync si è fermato per due volte allo stesso file.

Ho ritentato senza il file (un iso da 600MB - che non mi serviva in effetti) ma rsync si è interrotto con lo stesso errore su un altro file grosso (un mp3 di centinaia di MB).

In ogni caso cp -a mi pare più affidabile.

La sua pecca (o la mia forse) è che 

```
cp -a /sorgente/ /destinazione
```

 crea la cartella 

```
/destinazione/sorgente/
```

Per risolvere ho dovuto montare il sorgente come /sorgente/destinazione e dare 

```
cp -a /sorgente/ /
```

----------

## djinnZ

Terminati i problemi di adsl ritorno a dar fastidio.

@cloc3: prima cosa creiamo un ambiente di test adeguato 

```
dd if=/dev/zero of=/test1 bs=1024 count=4096 ; mke2fs -F /test1 ; cp /test1 /test2 ; mkdir /mnt/test1 /mnt/test2 ; mount -o loop /test1 /mnt/test1 ; mount -o loop /test2 /mnt/test2
```

 e mettiamo un poco di schifezza sulla "partizione" test1

```
cd /mnt/test1 ; touch file1 ; ln -s file1 file2 ; mkdir dir1 ; echo test > ln1 ; ln ln1 ln2
```

se lanci un echo prova > ln2 un cat ln1 ti mostrerà prova invece che test. (gli esempi si fanno facili)

rsync -a /mnt/test1/ /mnt/test2 crea due file distinti e separati e fin qui tutto normale, cp riporta gli hardlink invece.

Effettivamente mi ricordavo male o meglio ero ancorato a sistemi superati (sui vecchi unix cp -a trasformava sempre gli hardlink in altrettanti file su partizioni differenti e li riportava se nella stessa partizione).

L'errore di rsync corrisponde ad un errore di trasmissione dei dati. Con cp capita molto più raramente, o gestisce meglio i temeout, ma se si blocca sono cavoli amari.

Ovviamente l'alternativa dovendo andare in remoto è il pipe via ssh/telnet e tar | bzip , molto utile se la rete è scarsa ma non i computer.

Quanto all'hardlinking è una pratica sconsigliabile sia perchè non c'è pieno supporto su tutti i filesystem e gli OS, sia perchè crea enormi problemi di sicurezza.

Visto che i devel gentoo non sono degli imbecilli per quel che so (ma taluni portano sfiga) non mi pare che possano essercene o se pure ci sono la loro rimozione non dovrebbe comportare problemi.

----------

## bandreabis

Ma se i devel gentoo sono furbi allora non avrò problemi con sti hard link usando cp -a.

Ho fatto bene ad usarlo?

L'uso ordinario (aggiornamenti, posta internet programmi) non ha rivelato problemi di sorta.

----------

## djinnZ

Come ti ho detto è una questione di gusti, per me è più comodo usare rsync o tar e sono certo di non avere hardlink (i binari non li prevedono, tra le tante cose) e di non volerne. Su distribuzioni più "esoteriche" potrebbe creare problemi, poi dipende anche da come il filesystem (ovvero il modulo del kernel) li gestisce. Non mi pare che sia stato mai precisato se i permessi vanno attribuiti all'inode od alla voce nella directory, su linux (o meglio, su reiser 3, ext2/3 ed xfs di certo) mi pare che sia sempre sull'inode, ma le sorprese sono sempre possibili. Evitarli è sempre meglio (oltre al fatto che non sono portabili e possono confondere i programmi di ripristino), come ho già detto sono deleteri sotto il profilo della sicurezza.

Mi ero dimenticato che rsync si blocca facilmente con i timeout ma cp di fronte a problemi seri di trasmissione si comporta peggio, per questo mi è diventato antipatico.

----------

