GNU/Linux >> Linux Esercitazione >  >> Linux

rinominare una cartella enorme:è rischioso?

Cambiare il nome su una cartella è sicuro, se rimane all'interno dello stesso file system.

Se è un punto di montaggio (/data sembra che potrebbe essere un punto di montaggio per me, controlla questo con mount ), allora devi fare qualcosa di diverso da un semplice mv dal mv /data /BD_FILES sposterebbe i dati nella partizione root (che potrebbe non essere quello che vuoi che accada).

Dovresti smontare il filesystem, rinominare la directory ora vuota, aggiornare /etc/fstab con la nuova posizione per questo filesystem, quindi rimontare il filesystem nella posizione rinominata.

In altre parole,

  1. umount /data
  2. mv /data /BD_FILES (assumendo /BD_FILES non esiste già, in tal caso, spostalo prima)
  3. aggiorna /etc/fstab , modificando il punto di montaggio da /data a /BD_FILES
  4. mount /BD_FILES

Ciò non comporta la copia di alcun file, cambia solo il nome della directory che funge da punto di montaggio per il filesystem.

Se la ridenominazione della directory comporta lo spostamento in un nuovo file system (come sarebbe il caso se /data è su un disco mentre /BD_FILES è su un altro disco, una cosa comune da fare se stai spostando le cose su una partizione più grande, per esempio), ti consiglio di copiare i dati lasciando intatto l'originale finché non puoi verificare che la copia sia ok. Puoi farlo con

rsync -a /data/ /BD_FILES/

per esempio, ma vedi rsync manuale per ciò che fa e non fa (non conserva gli hard link, per esempio).

Una volta rinominata la cartella, devi anche assicurarti che le procedure esistenti (programmi e utenti che utilizzano la cartella, backup ecc.) siano a conoscenza del cambio di nome.


Non stai rinominando tutti i file nella directory, ne stai rinominando uno file in /. Questo perché:

  1. le directory sono file e
  2. il file system si preoccupa davvero dell'inode, non del testo vero e proprio.

Pertanto, rinominare una directory, indipendentemente dal numero di file o dalla quantità di dati contenuta, è banale.


Se rinomini solo (origine e destinazione nello stesso file system), è semplicemente una ridenominazione di una voce di directory. O riesce e la directory ha un nuovo nome, oppure fallisce nel qual caso non cambia nulla .

Se l'origine e la destinazione si trovano su file system diversi, i dati devono essere copiati da mv . Le differenze nelle caratteristiche del file system, come la dimensione massima del file, le limitazioni nei nomi dei file, ecc., possono causare problemi. Per evitare problemi, prima copia i file (cp , rsync , ...) e dopo che la copia è stata completata correttamente, rimuovi i file nella posizione originale.

* Tuttavia ci sono alcuni casi limite, ad esempio menzionati nei BUGS sezione in man 2 rename


Linux
  1. Gestore di file Java

  2. Cat Line X to Line Y su un file enorme?

  3. Differenza nel calcolo della dimensione della directory?

  4. Linux – Scopo della directory /net?

  5. cPanel Indici

Anteporre il testo a tutti i file in una cartella?

Cheat sheet per le autorizzazioni di file/directory Linux

Trova il file quindi cd in quella directory in Linux

Esclusione della directory durante la creazione di un file .tar.gz

Perché il mio collegamento simbolico crea un file e non una cartella?

Ripeti le immagini da una cartella e visualizza la presentazione a schermo intero