Un disco conectado a un VPS aparece como un dispositivo y nada más. Mientras no esté formateado y montado no guarda nada y ningún directorio apunta a él, y por eso un volumen recién conectado parece que no ha funcionado.
Mira qué hay conectado
lsblk -f
El dispositivo nuevo no tiene FSTYPE ni MOUNTPOINT. Así lo distingues del disco del sistema, que ya lleva un sistema de archivos.
Formatéalo
sudo mkfs.ext4 -L data /dev/sdb
Un sistema de archivos sobre todo el dispositivo, sin tabla de particiones, es lo habitual en un volumen de nube y facilita ampliarlo más adelante. Particiona solo si otra cosa espera una partición.
Móntalo
sudo mkdir -p /srv/data
sudo mount /dev/sdb /srv/data
df -h /srv/data
El paso que se olvida
Un montaje hecho a mano desaparece en el siguiente reinicio y el directorio vuelve a ser una carpeta vacía en el disco del sistema, que se llena mientras el volumen sigue sin usarse. Escríbelo en fstab por UUID, porque los nombres de dispositivo pueden cambiar de orden entre arranques.
sudo blkid /dev/sdb
# UUID="0a1b2c3d-..." TYPE="ext4"
echo 'UUID=0a1b2c3d-... /srv/data ext4 defaults,nofail 0 2' | sudo tee -a /etc/fstab
sudo mount -a
Mueve los datos al disco nuevo
- Detén lo que escribe ahí — la base de datos o el servidor web, para que nada cambie a mitad de la copia.
- Copia con los permisos intactos —
sudo rsync -aHAX /var/lib/mysql/ /srv/data/mysql/ - Apunta el servicio a la ruta nueva — y vuelve a arrancarlo.
- Guarda la copia antigua hasta comprobarlo — renómbrala en lugar de borrarla, y elimínala una semana después.