English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Linux磁盘管理的好坏直接关系到整个系统的性能问题。
Linux磁盘管理常用三个命令为df、du和fdisk。
df:列出文件系统的整体磁盘使用量
du:检查磁盘空间使用量
fdisk:用于磁盘分区
df命令参数功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
Sintassi:
df [-ahikHTm] [目录或文件名]
选项与参数:
-a :列出所有的文件系统,包括系统特有的/proc等文件系统
-k :以KBytes的容量显示各文件系统
-m :以MBytes的容量显示各文件系统
-h :以人们较易阅读的GBytes, MBytes, KBytes等格式自行显示
-H :以M=1000K代替M=1024K的进位方式
-T :显示文件系统类型,包括该partition的filesystem名称(例如ext3)
-i :不使用硬盘容量,而以inode的数量来显示
列出系统内的所有文件系统
[root@www ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/hdc2 9920624 3823112 5585444 41% / /dev/hdc3 4956316 141376 4559108 4% /home /dev/hdc1 101086 11126 84741 12% /boot tmpfs 371332 0 371332 0% /dev/shm
在Linux下,如果没有为df添加任何选项,那么默认会列出系统内的所有 (不包含特殊内存中的文件系统和swap)都以1 Kbytes的容量列出!
显示容量结果为易于阅读的容量格式
[root@www ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/hdc2 9.5G 3.7G 5.4G 41% / /dev/hdc3 4.8G 139M 4.4G 4% /home /dev/hdc1 99M 11M 83M 12% /boot tmpfs 363M 0 363M 0% /dev/shm
Elenca tutti i formati speciali di file e i nomi nel sistema
[root@www ~]# df -aT Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/hdc2 ext3 9920624 3823112 5585444 41% / proc proc 0 0 0 - /proc sysfs sysfs 0 0 0 - /sys devpts devpts 0 0 0 - /dev/pts /dev/hdc3 ext3 4956316 141376 4559108 4% /home /dev/hdc1 ext3 101086 11126 84741 12% /boot tmpfs tmpfs 371332 0 371332 0% /dev/shm none binfmt_misc 0 0 0 - /proc/sys/fs/binfmt_misc sunrpc rpc_pipefs 0 0 0 - /var/lib/nfs/rpc_pipefs
Visualizza la capacità di spazio disponibile sotto /etc in un formato di capacità leggibile
[root@www ~]# df -h /etc Filesystem Size Used Avail Use% Mounted on /dev/hdc2 9.5G 3.7G 5.4G 41% /
Il comando Linux du è anche usato per visualizzare lo spazio utilizzato, ma a differenza del comando df, il comando Linux du visualizza lo spazio utilizzato dai file e dalle directory, quindi ha alcune differenze rispetto al comando df. Ecco una guida al comando Linux du.
Sintassi:
du [-ahskm] nome_file_o_directory
选项与参数:
-a :Elenca la capacità di tutti i file e le directory, poiché il valore predefinito conta solo la capacità dei file nella directory.
-h :Mostra la capacità in un formato di facile lettura (G/M);
-s :Mostra solo il totale, senza elencare la capacità di ciascuna directory individuale;
-S :Escludi il totale delle sottodirectory, diverso da -s.
-k :Mostra la capacità in KBytes;
-m :Mostra la capacità in MBytes;
Elenca solo la capacità di tutte le directory nella directory corrente (inclusi i file nascosti):
[root@www ~]# du 8 ./test4 <==Ogni directory viene elencata 8 ./test2 ....saltati..... 12 ./.gconfd <==Inclusa la directory con file nascosti 220 . <==Questa directory (.) utilizza la capacità complessiva
Inserendo du senza opzioni, du analizzerà lo spazio di disco utilizzato dai file e le directory nella directory corrente.
Elenca anche la capacità dei file
[root@www ~]# du -a 12 ./install.log.syslog <==Ecco la lista dei file 8 ./.bash_logout 8 ./test4 8 ./test2 ....saltati..... 12 ./.gconfd 220 .
Controlla la capacità utilizzata da ogni directory sotto la directory radice
[root@www ~]# du -sm /* 7 /bin 6 /boot .....saltati..... 0 /proc .....saltati..... 1 /tmp 3859 /usr <==Il più grande durante l'inizializzazione del sistema è proprio lui! 77 /var
Il carattere jolly * rappresenta ogni directory.
A differenza di df, il comando du di fatto ricerca direttamente all'interno del file system tutti i dati dei file.
fdisk è uno strumento di gestione delle tabelle di partizione dei dischi di Linux.
Sintassi:
fdisk [-l] nome_dispositivo
选项与参数:
-l :Mostra tutte le partizioni del dispositivo specificato. Se si utilizza solo fdisk -l Il sistema elencherà tutte le partizioni dei dispositivi che può trovare in tutto il sistema.
Elenca tutte le informazioni sulle partizioni
[root@AY120919111755c246621 tmp]# fdisk -l Disco /dev/xvda: 21.5 GB, 21474836480 bytes 255 teste, 63 settori/traccia, 2610 cilindri Unità = cilindri di 16065 * 512 = 8225280 bytes Dimensione settore (logica/fisica): 512 bytes / 512 bytes Dimensione I/O (minima/ottimale): 512 bytes / 512 bytes Identificatore disco: 0x00000000 Dispositivo Boot Inizio Fine Blocchi Id Sistema /dev/xvda1 * 1 2550 20480000 83 Linux /dev/xvda2 2550 2611 490496 82 Linux swap / Solaris Disco /dev/xvdb: 21.5 GB, 21474836480 bytes 255 teste, 63 settori/traccia, 2610 cilindri Unità = cilindri di 16065 * 512 = 8225280 bytes Dimensione settore (logica/fisica): 512 bytes / 512 bytes Dimensione I/O (minima/ottimale): 512 bytes / 512 bytes Identificatore disco: 0x56f40944 Dispositivo Boot Inizio Fine Blocchi Id Sistema /dev/xvdb2 1 2610 20964793+ 83 Linux
Trova il disco in cui si trova la radice del tuo sistema e consulta le informazioni presenti su quell'hard disk
[root@www ~]# df / <== Attenzione: l'importante è trovare il nome del disco Filesystem 1K-blocks Used Available Use% Mounted on /dev/hdc2 9920624 3823168 5585388 41% [root@www ~]# fdisk /dev/hdc <== Presta attenzione, non aggiungere numeri! Il numero di cilindri per questo disco è impostato a 5005. Non c'è nulla di sbagliato in questo, ma è più grande di 1024, e potrebbe causare problemi in alcune configurazioni con: 1) software che si avvia durante il boot (ad esempio, versioni obsolete di LILO) 2) Software di avvio e partizione da altri sistemi operativi (ad esempio, DOS FDISK, OS/2 FDISK) Commando (m per aiuto): <== In attesa del tuo input!
Dopo aver inserito m, vedrai queste descrizioni dei comandi
Commando (m per aiuto): m <== Dopo aver inserito m, vedrai queste descrizioni dei comandi Commando azione a <== Commuta il flag di avvio b <== Modifica l'etichetta disco BSD c <== Commuta il flag di compatibilità DOS d <== Elimina una partizione <== Questo aziona l'eliminazione di una partizione l <== Elenco dei tipi di partizione conosciuti m <== Stampa questo menu n <== Aggiungi una nuova partizione <== Questo aziona l'aggiunta di una nuova partizione o <== Crea una nuova tabella di partizione DOS vuota p <== Stampa la tabella di partizione <== Questo aziona la visualizzazione della tabella di partizione sullo schermo q <== Esci senza salvare le modifiche <== Questo aziona l'uscita dal programma fdisk senza salvare le modifiche s <== Crea una nuova etichetta disco Sun vuota t <== Cambia l'ID di sistema di una partizione u <== Cambia le unità di visualizzazione/inserimento v <== Verifica la tabella di partizione w <== Scrivi la tabella di partizione sul disco e esci <== Questo aziona la scrittura delle modifiche nella tabella di partizione x <== Funzionalità extra (solo per esperti)
Premi q per uscire da fdisk senza salvare le modifiche! Al contrario, premi w per applicare le modifiche.
Commando (m per aiuto): p <== Ecco come visualizzare lo stato attuale del disco Disk /dev/hdc: 41.1 GB, 41174138880 bytes <== 这个磁盘的文件名与容量 255 teste, 63 settori/tracto, 5005 cilindri <== dimensione delle teste, settori e cilindri Unità = cilindri di 16065 * 512 = 8225280 byte <== dimensione di ogni cilindro Dispositivo Boot Inizio Fine Blocchi Id Sistema /dev/hdc1 * 1 13 104391 83 Linux /dev/hdc2 14 1288 10241437+ 83 Linux /dev/hdc3 1289 1925 5116702+ 83 Linux /dev/hdc4 1926 5005 24740100 5 Estesa /dev/hdc5 1926 2052 1020096 82 Linux swap / Solaris # nome del dispositivo partizione di avvio inizio del cilindro fine del cilindro capacità in 1K slot di partizione del disco Commando (m per aiuto): q
Vuoi uscire senza salvare? Premi q! Non premere mai w a caso!
Utilizzando p è possibile elencare le informazioni sulla tabella di partizione del disco attuale, la parte superiore di queste informazioni mostra lo stato complessivo del disco.
Dopo la divisione del disco, naturalmente, è necessario procedere con la formattazione del file system, il comando di formattazione è molto semplice, utilizzare il comando mkfs (make filesystem).
Sintassi:
mkfs [-t formato del file system] nome del dispositivo
选项与参数:
-t :può accettare il formato del file system, ad esempio ext3, ext2, vfat ecc. (ha effetto solo se il sistema lo supporta)
Visualizzare i formati di file supportati da mkfs
[root@www ~]# mkfs[tab][tab] mkfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.msdos mkfs.vfat
Premere due [tab], vedrete che il formato di file supportato da mkfs è come mostrato sopra.
Formattare la partizione /dev/hdc6 (puoi specificare la tua partizione) come file system ext3:
[root@www ~]# mkfs -t ext3 /dev/hdc6 mke2fs 1.39 (29 Maggio 2006) Etichetta del file system= <== qui si riferisce al nome del settore di partizione (label) Tipo di OS: Linux Dimensione del blocco=4096 (log=2) <== la dimensione del blocco è configurata a 4K Dimensione del frammento=4096 (log=2) 251392 inode, 502023 blocchi <== numero di inode/block determinato da questa configurazione 25101 blocchi (5.00%) riservati per l'utente super Primo blocco dati=0 Massimo numero di blocchi del file system=515899392 16 gruppi di blocchi 32768 blocchi per gruppo, 32768 frammenti per gruppo 15712 inode per gruppo Backup dei superblock archiviati nei blocchi: 32768, 98304, 163840, 229376, 294912 Scrittura delle tabelle inode: completato Creazione del journal (8192 blocchi): completato <== con registrazione dei log Scrittura dei superblock e delle informazioni di accounting del file system: completato Questo file system verrà controllato automaticamente ogni 34 mount o 180 giorni, il primo che si verifica. Utilizzare tune2fs -c o -i per sovrascrivere. # Questo crea il file system Ext3 necessario! Semplice e chiaro!
fsck (file system check) viene utilizzato per controllare e mantenere il file system non consistente.
Se il sistema si spegne o si verifica un problema con il disco, è possibile utilizzare il comando fsck per controllare il file system.
Sintassi:
fsck [-t sistema di file] [-ACay] nome dispositivo
选项与参数:
-t: Specifica il tipo di sistema di file, se è già definito in /etc/fstab o supportato dal kernel non è necessario aggiungere questo parametro
-s: Esegue l'ordine fsck uno per uno
-A: Verifica tutte le partizioni elencate in /etc/fstab
-C: Visualizza il progresso completo della verifica
-d: Stampa i risultati di debug di e2fsck
-p: Se sono presenti condizioni -A, si eseguono insieme più verifiche fsck
-R: Se sono presenti condizioni -A, si omette / non si verifica
-V: Modalità di visualizzazione dettagliata
-a: Se la verifica ha degli errori, viene riparato automaticamente
-r: Se la verifica ha degli errori, l'utente risponde se riparare
-y: L'opzione specifica che per ogni file viene automaticamente inserito yes, quando non si è sicuri di quali non siano normali, si può eseguire # fsck -y per verificare e riparare tutto.
Visualizzare quanti file system il comando fsck supporta nel sistema:
[root@www ~]# fsck[tab][tab] fsck fsck.cramfs fsck.ext2 fsck.ext3 fsck.msdos fsck.vfat
Verifica forzata della partizione /dev/hdc6:
[root@www ~]# fsck -C -f -t ext3 /dev/hdc6 fsck 1.39 (29 maggio 2006) e2fsck 1.39 (29 maggio 2006) Passaggio 1: Verifica degli inodes, dei blocchi e delle dimensioni Passaggio 2: Verifica della struttura dei directory Passaggio 3: Verifica della connettività dei directory Passaggio 4: Verifica dei conti di riferimento Passaggio 5: Verifica delle informazioni di riepilogo del gruppo vbird_logical: 11/251968 file (9.1% non contigui), 36926/1004046 blocchi
Se non è stato aggiunto l'opzione -f, la verifica del file system è molto veloce poiché non ha mai avuto problemi! Se si aggiunge -f per verificare forzatamente, il processo viene visualizzato passo per passo.
Linux 的磁盘挂载使用 mount 命令,卸载使用 umount 命令。
语法命令挂载磁盘:
mount [-t 文件系统] [-L Label名] [-o 额外选项] [-n] 装置文件名 挂载点
用默认的方式,将刚刚创建的 /dev/hdc6 挂载到 /mnt/hdc6 上面!
[root@www ~]# mkdir /mnt/hdc6 [root@www ~]# mount /dev/hdc6 /mnt/hdc6 [root@www ~]# df Filesystem 1K-blocks Used Available Use% Mounted on .....中间省略..... /dev/hdc6 1976312 42072 1833836 3% /mnt/hdc6
语法命令卸载磁盘 umount:
umount [-fn] 装置文件名或挂载点
选项与参数:
-f :强制卸除!可用在类似网络文件系统 (NFS) 无法读取到的情况下;
-n :不升级 /etc/mtab 情况下卸除。
卸下/dev/hdc6
[root@www ~]# umount /dev/hdc6