Risposta rapida
Come faccio a montare e formattare il disco di storage su un VPS Linux?
Per montare e formattare il disco di storage su un VPS Linux, individualo con lsblk, crea una partizione GPT, formatttala ext4 o XFS, eventualmente dentro LUKS, e montalo da /etc/fstab tramite UUID con nofail, così un disco mancante non blocca mai l'avvio. I passaggi valgono per qualsiasi storage VPS KVM, compresi i piani Coffervale da 1 TB a $1.66 al mese su 12 mesi (2 November 2026).
Quali sono i passaggi?
Individua il disco vuoto
lsblkmostra tutti i dischi; il disco di storage non ha partizioni né punto di mount.Crea una partizione GPT
partedscrive un'etichetta GPT e una partizione su tutto il disco.Cifralo (opzionale)
cryptsetup luksFormatecryptsetup open, poi salva una copia dell'header LUKS fuori dal server.Crea un filesystem
mkfs.ext4 -m 1omkfs.xfs, con un'etichetta che riconoscerai.Montalo tramite UUID con nofail
Una riga in
/etc/fstab, poimountefindmntper confermare.
Qual è il disco di storage?
Esegui lsblk: il disco di storage è quello grande, senza partizioni, filesystem né punto di mount. Gli storage VPS hanno due layout: un disco di sistema piccolo più un disco dati grande, oppure un unico disco grande. Secondo l'indagine di Coffervale su 2 November 2026, 6 dei 18 venditori di storage VPS che accettano criptovalute senza documento d'identità dichiarano sulle loro pagine che lo storage arriva come disco o block device separato; gli altri 12 descrivono un solo disco o non lo specificano. Controlla il tuo prima di digitare qualsiasi comando distruttivo.
Su KVM, i dischi virtio si chiamano vda, vdb e così via, e i dischi virtio-SCSI sda, sdb. Le dimensioni sono in unità binarie, quindi un disco da 1 TB risulta di circa 931G. Se lsblk mostra un solo disco e / ne occupa già tutta la dimensione, non c'è nulla da formattare: crea una cartella come /srv/data e passa alla sezione sulle scelte di cifratura alla fine.
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS
# Use the empty disk from the list above; this example assumes /dev/vdb
DISK=/dev/vdb
PART=/dev/vdb1Conviene partizionare il disco di storage o formattarlo interamente?
Crea una partizione GPT su tutto il disco. Anche scrivere un filesystem direttamente sul dispositivo grezzo funziona, ma una tabella delle partizioni dice a ogni strumento e a ogni amministratore che guarderà in seguito che il disco è in uso, e parted allinea la partizione per te. Le immagini cloud di Debian e Ubuntu non includono sempre parted, quindi installalo prima (dnf install parted su AlmaLinux o Rocky Linux, lo stesso per cryptsetup qui sotto).
apt install parted
parted -s -a optimal "$DISK" mklabel gpt mkpart data 0% 100%
partprobe "$DISK"
lsblk "$DISK"Conviene cifrare il disco di storage con LUKS?
Cifralo se sul VPS terrai file in chiaro: esegui cryptsetup luksFormat sulla partizione, aprila con un nome e crea il filesystem sul dispositivo aperto. LUKS2 è il formato predefinito. Tieni il disco di sistema non cifrato e il disco dati sotto LUKS: dopo un riavvio, accedi via SSH e sblocca il disco dati con la tua passphrase. Chiunque gestisca un hypervisor può tecnicamente leggere un disco virtuale non cifrato, in qualsiasi host VPS. Noi non apriamo i tuoi file, e i dati che cifri prima che lascino la tua macchina tolgono la questione dal tavolo.
Salva una copia dell'header LUKS e portala fuori dal server: se l'header si danneggia, i dati dietro sono persi. Il manuale di cryptsetup aggiunge un avvertimento da leggere due volte: un backup dell'header più una passphrase valida al momento del backup decifra il disco anche dopo che quella passphrase è stata cambiata o rimossa. Tratta il file di backup come la passphrase stessa.
apt install cryptsetup
cryptsetup luksFormat "$PART"
cryptsetup open "$PART" coffer
cryptsetup luksHeaderBackup "$PART" --header-backup-file /root/coffer-luks-header.img
# copy /root/coffer-luks-header.img to your own machine, then delete it hereIl disco di storage deve usare ext4 o XFS?
Usa ext4 a meno che tu non abbia un motivo per non farlo; è l'unico dei due che si può ridurre. Entrambi gestiscono senza problemi repository di backup da diversi terabyte e sincronizzazione di file, ed entrambi si espandono da montati quando il disco diventa più grande. Le differenze che contano su uno storage VPS:
| Proprietà | ext4 | XFS |
|---|---|---|
| Cresce mentre è montato | Sì, resize2fs | Sì, xfs_growfs (deve essere montato) |
| Riduzione | Sì, smontato, con resize2fs | A malapena: si riduce solo l'ultimo gruppo di allocazione, e non può essere rimosso |
| Spazio riservato a root | 5% per impostazione predefinita; -m 1 mantiene l'1% | Nessuna riserva di questo tipo |
| Lunghezza dell'etichetta | Fino a 16 byte | Fino a 12 caratteri |
Su un disco dati da 1 TB, la riserva predefinita di ext4 trattiene 50 GB che solo root può usare. Per un disco che archivia backup o dati di sincronizzazione, l'1% è più che sufficiente, visto che il sistema operativo non risiede lì. Formatta la partizione, oppure il dispositivo LUKS aperto se l'hai cifrata:
# The device to format: the partition, or the opened LUKS device
DEV="$PART" # with LUKS: DEV=/dev/mapper/coffer
mkfs.ext4 -m 1 -L coffer "$DEV"
# or: mkfs.xfs -L coffer "$DEV"Come monto il disco all'avvio con fstab, UUID e nofail?
Aggiungi una riga /etc/fstab che identifica il filesystem tramite UUID e include nofail. Il manuale di fstab consiglia UUID o etichette perché i nomi dei dispositivi seguono l'ordine in cui i dischi vengono rilevati e possono cambiare quando se ne aggiungono o rimuovono. Con nofail, la documentazione di systemd afferma che l'avvio prosegue senza attendere il mount e indipendentemente dal suo esito, così un disco scollegato o bloccato non può lasciare un server remoto fermo su un prompt di emergenza irraggiungibile.
Un disco cifrato riceve anche noauto: non può essere montato prima che tu lo sblocchi via SSH, quindi l'avvio non deve tentarlo. Il piccolo script qui sotto lo apre tramite l'UUID LUKS e lo monta in un solo passaggio.
mkdir -p /srv/data
UUID=$(blkid -s UUID -o value "$PART")
echo "UUID=$UUID /srv/data ext4 defaults,nofail 0 2" >> /etc/fstab
systemctl daemon-reload
mount /srv/data
findmnt /srv/datamkdir -p /srv/data
FSUUID=$(blkid -s UUID -o value /dev/mapper/coffer)
LUKSUUID=$(blkid -s UUID -o value "$PART")
echo "UUID=$FSUUID /srv/data ext4 noauto,nofail 0 0" >> /etc/fstab
systemctl daemon-reload
cat > /usr/local/sbin/unlock-data <<EOF
#!/bin/sh
cryptsetup open /dev/disk/by-uuid/$LUKSUUID coffer && mount /srv/data
EOF
chmod 700 /usr/local/sbin/unlock-data
# after each reboot, over SSH:
/usr/local/sbin/unlock-dataE se non voglio cifrare il disco sul server?
Cifra invece sul client, che funziona con qualsiasi configurazione, anche con un solo disco. Borg, restic e la modalità dispositivo non attendibile di Syncthing cifrano prima che i dati raggiungano il VPS, quindi il server archivia testo cifrato con o senza LUKS. KVM dà al tuo server un kernel proprio, così puoi mettere LUKS sul disco dati o usare ZFS con crittografia nativa, e le chiavi non lasciano mai te. Per i backup, cifra sulla tua macchina prima dell'upload (Borg, restic e Kopia lo fanno tutti), così il server contiene solo testo cifrato. La cifratura del disco aggiunge comunque valore quando il VPS esegue software che richiede file in chiaro, come Nextcloud. Prossimi passi: Come uso un VPS per i backup off-site?, Come configuro un server di backup Borg su un VPS? e Qual è il miglior VPS per Nextcloud con 1 TB o più di spazio?. Se in seguito ti serve un disco più grande, Per crescere, ordina un piano più grande e copia i tuoi dati con rsync o zfs send; ridimensionare un server in esecuzione sul posto non è offerto al lancio; i piani di dimensioni sono su Dove posso trovare un VPS con 1 TB di spazio?.
Domande sul montaggio di un disco di archiviazione
Perché il mio disco da 1 TB risulta come 931G?
Le dimensioni dei dischi si vendono in terabyte decimali, mentre lsblk e df stampano unità binarie. 1.000.000.000.000 byte sono circa 931 GiB: stessi byte, unità diversa.
Cosa succede se dimentico nofail e all'avvio il disco manca?
systemd considera il mount necessario per i filesystem locali, quindi l'avvio può fermarsi su una shell di emergenza. Su un VPS senza una console raggiungibile, questo significa una richiesta al supporto. Con nofail, il server si avvia e sistemi il mount via SSH.
Devo sbloccare un disco LUKS dopo ogni riavvio?
Sì, con la configurazione sopra: accedi via SSH ed esegui lo script di sblocco. Il disco di sistema resta non cifrato, così il server si avvia sempre e SSH risponde sempre.
Per i repository Borg o restic conviene ext4 o XFS?
Vanno bene entrambi. ext4 può essere ridotto in seguito e ti permette di ridurre la sua riserva per root con -m; XFS non può essere ridotto, salvo in un caso limitato. In caso di dubbio, scegli ext4.
Come verifico che il disco sia montato dove mi aspetto?
findmnt /srv/data mostra il dispositivo, il filesystem e le opzioni di quel punto di mount, e df -h /srv/data ne mostra la dimensione e lo spazio libero. Se uno dei due mostra il filesystem root, il disco non è montato e i dati finiscono sul disco di sistema.
Fonti (8)
- lsblk(8): elenca i dispositivi a blocchi — Linux man-pages project (read 2026-11-02)
- fstab(5): UUID e LABEL, nofail, ordine di fsck — Linux man-pages project (read 2026-11-02)
- systemd.mount(5): nofail e noauto in fstab — systemd project (read 2026-11-02)
- mke2fs(8): -m blocchi riservati (5% predefinito), -L etichetta — Linux man-pages project (read 2026-11-02)
- resize2fs(8): crescita e riduzione di ext4 — Linux man-pages project (read 2026-11-02)
- xfs_growfs(8): crescita di XFS, limiti sulla riduzione — Linux man-pages project (read 2026-11-02)
- cryptsetup-luksFormat(8): LUKS2 predefinito — cryptsetup project (read 2026-11-02)
- cryptsetup-luksHeaderBackup(8): backup dell'header e i suoi rischi — cryptsetup project (read 2026-11-02)