Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Partizioni e Filesystem

Gestione delle partizioni e creazione di filesystem in LInux.
Gestione delle partizioni e creazione di filesystem in LInux.
Link copiato negli appunti

Come abbiamo spiegato nel precedente capitolo sarà possibile gestire uno o più dischi sia popolando le partizioni di filesystem veri e propri sia interponendo fra queste e gli ultimi LVM. Al momento ci concentreremo sulla prima metodologia che, essendo di stampo classico, risulta adottabile su una pletora più vasta di sistemi. L'utilizzo di LVM sarà invece dettagliatamente presentato nel prossimo capitolo.

Il comando principale che adopereremo in questo capitolo sarà fdisk. Questi consente di gestire la tabella delle partizioni con pochi e semplici comandi da CLI. Innanzi tutto lo lanceremo ottenendo un prompt. Per interrogare la partizione del disco inseriremo p. Un disco vuoto restituirà un messaggio che ci informa della sua avvenuta inizializzazione.

Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0xb1da2076.

A questo punto creeremo una partizione primaria inserendo al prompt, nell’ordine, n e p nonché scegliendo un numerale da abbinare alla partizione. E' nostra facoltà scegliere il settore iniziale e quello finale della nuova partizione nonché ripetere l’opzione più volte. Per assegnare alla partizione un tipo diverso da quello di default inseriremo t. Le partizioni supportate sono numerose, una tabella riassuntiva delle stesse può essere ottenuta inserendo l al prompt.

Command (m for help): n
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (2294965248-4294965247, default 2294966272): 
Last sector, +sectors or +size{K,M,G,T,P} (2294966272-4294965247, default 4294965247): 
Created a new partition 2 of type 'Linux' and of size 953.7 GiB.
Command (m for help): t
Partition number (1,2, default 2): 2
Hex code (type L to list all codes): 7
Changed type of partition 'Linux' to 'HPFS/NTFS/exFAT'.
Command (m for help): p
Disk /dev/sdb: 2 TiB, 2199022206976 bytes, 4294965248 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xb1da2076
Device     Boot      Start        End    Sectors   Size Id Type
/dev/sdb1             2048 2294965247 2294963200   1.1T 83 Linux
/dev/sdb2       2294966272 4294965247 1999998976 953.7G  7 HPFS/NTFS/exFAT

Ovviamente, come per la creazione, è parimenti possibile rimuovere una partizione con d seguito dal numero identificativo.

Command (m for help): d
Partition number (1,2, default 2): 1
Partition 1 has been deleted.

Con lo spazio che si sarà liberato andremo a creare una partizione primaria Linux più piccola e una estesa (al prompt n seguito da e) in cui allocheremo una partizione logica (prima n e poi l) di tipo ntfs. Sarà nostra accortezza inserire valori di primo e ultimo settore opportuni per dividere lo spazio libero secondo necessità. Nulla ci vieta, comunque, di popolare questo spazio con più partizioni.

Command (m for help): n
Partition type
   p   primary (2 primary, 0 extended, 2 free)
   e   extended (container for logical partitions)
Select (default p): e
Partition number (3,4, default 3): 3
First sector (2000000001-4294965247, default 2000001024): 
Last sector, +sectors or +size{K,M,G,T,P} (2000001024-2294966271, default 2294966271): 
Created a new partition 3 of type 'Extended' and of size 140.7 GiB.
Command (m for help): n
Partition type
   p   primary (2 primary, 1 extended, 1 free)
   l   logical (numbered from 5)
Select (default p): l
Adding logical partition 5
First sector (2000003072-2294966271, default 2000003072): 
Last sector, +sectors or +size{K,M,G,T,P} (2000003072-2294966271, default 2294966271): 
Created a new partition 5 of type 'Linux' and of size 140.7 GiB.

Attenzione, tutto ciò che non viene salvato sarà perso alla chiusura del prompt di fdisk, quindi salviamo con w.

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
Command (m for help): p
Disk /dev/sdb: 2 TiB, 2199022206976 bytes, 4294965248 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xb1da2076
Device     Boot      Start        End    Sectors   Size Id Type
/dev/sdb1             2048 2000000000 1999997953 953.7G 83 Linux
/dev/sdb2       2294966272 4294965247 1999998976 953.7G  7 HPFS/NTFS/exFAT
/dev/sdb3       2000001024 2294966271  294965248 140.7G  5 Extended
/dev/sdb5       2000003072 2294966271  294963200 140.7G  7 HPFS/NTFS/exFAT

Subito sopra potete osservare il risultato finale di tutte le operazioni sino a ora effettuate. Non riamane che dotare le nostre partizioni di un filesystem e montarle. Ovviamente potremo anche avere un ripensamento e creare, lì dove è già presente un filesystem, un altro filesystem che lo sovrascriva. Per generare un filesystem useremo il comando mkfs nelle varie versioni declinate per i differenti filesystem. Per verificare quali siano presenti sul vostro sistema scivete "mkfs." e premete il tasto di tabuazione “Tab” in modo da ottenere un suggerimento sui possibili modi di completare il comando. Ogni comando mkfs ha le sue opzioni, vi consigliamo di approfondirne l’uso passandole come argomento al comando man. Ad esempio mkfs.fat accetta com argomento -F seguito da 12, 16 o 32 per specificare, appunto, se questa sarà una fat12, fat16 o fat32. Il comando accetta come opzione anche -n per definire il volume label ovvero il nome di undici caratteri con cui di norma vediamo etichettato un filesystem di tipo fat quando esploriamo le risorse di storage disponibili.

fprincipe@html3:~$ sudo mkfs.ext3 /dev/sdb5
mke2fs 1.44.1 (24-Mar-2018)
Creating filesystem with 36870400 4k blocks and 9224192 inodes
Filesystem UUID: 88e438fd-a5a8-4dce-a701-2c7c824aafd5
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424, 20480000, 23887872
Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information: done     
fprincipe@html3:~$ sudo mkfs.ext4 /dev/sdb5
mke2fs 1.44.1 (24-Mar-2018)
/dev/sdb5 contains a ext3 file system
	created on Fri Jun 29 11:43:02 2018
Proceed anyway? (y,N) y
Creating filesystem with 36870400 4k blocks and 9224192 inodes
Filesystem UUID: bde199dd-ce07-4d04-9c7b-28f93bd6c2af
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424, 20480000, 23887872
Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information: done     
fprincipe@html3:~$ sudo mkdir /data
fprincipe@html3:~$ sudo mount -t auto /dev/sdb5 /data
fprincipe@html3:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            464M     0  464M   0% /dev
tmpfs            99M  944K   98M   1% /run
[...]
/dev/sdb5       138G   61M  131G   1% /data

Osservando l'ultimo output potrete constatare che per montare una partizione occorra, innanzi tutto, utilizzare un mountpoint alla bisogna creato ex novo. Questi è una directory del filesystem su cui la risorsa montata verrà innestata in modo da creare un albero coerente. Se, cioè, montiamo una risorsa su una directory da quel momento il contenuto preesistente della directory risulterà “nascosto” ma sarà visualizzato invece il contenuto della risorsa che abbiamo montato come se facesse parte di quella directory. Le opzioni del comando utilizzabile da CLI per effettuare questa operazione, ovvero mount, sono numerose e saranno ulteriormente richiamate in uno dei prossimi capitoli, per il momento vi basti sapere che con mount -t auto /dev/sdb5 /data stiamo montando sulla directory /data il contenuto del filesystem posto all'interno di /dev/sdb5. Facciamo ciò senza specificare il tipo della risorsa da montare poiché con “auto” sarà riconosciuta, se possibile, automaticamente.

Ti consigliamo anche