¿Cómo pasar de un sistema de archivos a otro sin cambiar la estructura del directorio?

¿Cómo pasar de un sistema de archivos a otro sin cambiar la estructura del directorio?

/dev/xvda1está lleno, así que quiero mover su contenido a mi udevsistema de archivos de 30 GB.

Filesystem      Size  Used Avail Use% Mounted on
udev             30G  4.0K   30G   1% /dev
tmpfs           5.9G  768K  5.9G   1% /run
/dev/xvda1      7.8G  7.4G     0 100% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none             30G     0   30G   0% /run/shm
none            100M     0  100M   0% /run/user

¿Cómo puedo hacer eso?

Pila: máquina EC2 Ubuntu.

Respuesta1

No utilice cp para copiar grandes cantidades de datos.
Utilice también rsync, ya que se puede reiniciar si se interrumpe. Utilice lo siguiente:

rsync -az -H /path/to/source  /path/to/destination

-a : Archive mode (i.e. recurse into directories, and preserve symlinks, file permissions, file modification times, file group, file owner, device files & special files) <br>
-z : Compress file data during the transfer <br>
-H : Preserve hard links (i.e. copy hard links as hard links)

Editado según lo señalado por los comentaristas, no vi que este sea su directorio /.
Si usa bash o zsh como shell, agregue:

--exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"}

Ahora se convierte

rsync -az -H --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /path/to/source  /path/to/destination 

De lo contrario, si utiliza un shell diferente, debe hacer una --excludedeclaración para cada directorio diferente.

Respuesta2

En la mayoría de los casos, no moverías los archivos de un sistema de archivos a otro. Si está ampliando el disco en una máquina virtual o tomando más espacio del mismo disco, ampliaría la partición que contiene el sistema de archivos y luego ampliaría el sistema de archivos para llenar la partición (qué comandos usar dependen del tipo de partición y del sistema de archivos). ). Si se está mudando a un disco nuevo, generalmente es más rápido y fácil copiar la partición en su totalidad y luego ampliarla como se indica arriba.

En su caso, dado que se trata de una máquina virtual, primero deberá darle un disco más grande. Como lo señalóMark Plotnick en un comentario, Compruebe elguía de AWS; hay una interfaz web para adjuntar un nuevo volumen y también hay una interfaz web para realizar la copia (creando y restaurando una instantánea).

Tenga en cuenta que /devno es un sistema de archivos de almacenamiento, es un sistema de archivos en RAM. Sus 30 GB libres son la cantidad máxima de datos que se pueden almacenar allí, pero ocupan una parte de tu RAM y se pierden cuando reinicias. Una vez más,no mueva ningún archivo a /dev, se eliminarán cuando reinicie.

información relacionada