Pengurusan cakera Linux


Kualiti pengurusan cakera Linux berkaitan secara langsung dengan prestasi keseluruhan sistem.

Tiga perintah yang biasa digunakan untuk pengurusan cakera Linux ialah df, du dan fdisk.

  • df: Senaraikan keseluruhan penggunaan cakera sistem fail

  • du: Semak penggunaan ruang cakera

  • fdisk: digunakan untuk pembahagian cakera


df

fungsi parameter arahan df: Semak penggunaan ruang cakera sistem fail. Anda boleh menggunakan arahan ini untuk mendapatkan maklumat seperti berapa banyak ruang yang diduduki pada cakera keras dan berapa banyak ruang yang tinggal pada masa ini.

Sintaks:

df [-ahikHTm] [目录或文件名]

Pilihan dan parameter:

  • -a: Senaraikan semua sistem fail, termasuk /proc khusus sistem dan sistem fail lain ;

  • -k : Paparkan setiap sistem fail dalam kapasiti KBytes; 🎜>

  • -h: dipaparkan dalam GBytes, MBytes, KBytes dan format lain yang lebih mudah dibaca oleh orang ramai; =1024K mod bawa;
  • -T: Paparkan jenis sistem fail, bersama-sama dengan nama sistem fail bagi partition (seperti ext3) turut disenaraikan; 🎜>
  • -i: Paparkan bilangan inod dan bukannya kapasiti cakera keras

  • Instance 1

    Senaraikan semua sistem fail dalam sistem!
  • [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
  • Di bawah Linux, jika df tidak menambah sebarang pilihan, semua fail dalam sistem akan (Tidak termasuk sistem fail dan swap dalam memori khas) disenaraikan dengan kapasiti 1 Kbytes!

    Contoh 2
  • Paparkan hasil kapasiti dalam format kapasiti yang mudah dibaca

    [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

    Contoh 3
Paparkan semua format dan nama fail khas dalam sistem Senaraikan kesemuanya

[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

Contoh 4

Paparkan kapasiti cakera yang tersedia di bawah /etc dalam format kapasiti yang mudah dibaca

[root@www ~]# df -h /etc
Filesystem            Size  Used Avail Use% Mounted on
/dev/hdc2             9.5G  3.7G  5.4G  41% /

du

Arahan Linux du juga menyemak ruang yang digunakan, tetapi tidak seperti perintah df, perintah Linux du menyemak ruang yang digunakan oleh fail dan cakera direktori, yang agak berbeza daripada perintah df. Berikut ialah arahan Linux du.

Sintaks:

du [-ahskm] 文件或目录名称

Pilihan dan parameter:

-a: Senaraikan semua kapasiti fail dan direktori, kerana secara lalai hanya mereka di bawah direktori sahaja dikira Hanya jumlah fail.


-h: Paparan dalam format kapasiti (G/M) yang lebih mudah dibaca oleh orang ramai

-s: Hanya senaraikan jumlah amaun , tanpa menyenaraikan kapasiti yang diduduki oleh setiap direktori individu;

  • -k: Paparkan kapasiti dalam KBytes; >

    Contoh 1

  • Senaraikan kapasiti semua fail dalam direktori semasa
  • [root@www ~]# du
    8       ./test4     <==每个目录都会列出来
    8       ./test2
    ....中间省略....
    12      ./.gconfd   <==包括隐藏文件的目录
    220     .           <==这个目录(.)所占用的总量

    Apabila anda memasukkan du terus tanpa menambah sebarang pilihan, du akan menganalisis fail dan direktori dalam direktori semasa Ruang cakera keras yang diduduki.

  • Contoh 2
  • Senaraikan juga kapasiti fail

    [root@www ~]# du -a
    12      ./install.log.syslog   <==有文件的列表了
    8       ./.bash_logout
    8       ./test4
    8       ./test2
    ....中间省略....
    12      ./.gconfd
    220     .
  • Contoh 3
  • Semak kapasiti yang diduduki oleh setiap direktori di bawah direktori akar

    [root@www ~]# du -sm /*
    7       /bin
    6       /boot
    .....中间省略....
    0       /proc
    .....中间省略....
    1       /tmp
    3859    /usr     <==系统初期最大就是他了啦!
    77      /var
  • wildcard * untuk mewakili setiap direktori.
  • Tidak seperti df, arahan du sebenarnya akan mencari semua data fail terus dalam sistem fail.


    fdisk

    fdisk ialah alat operasi jadual partition cakera Linux.

    Sintaks:

    fdisk [-l] 装置名称

    Pilihan dan parameter:

    • -l: Keluarkan semua kandungan partition peranti yang disambungkan. Jika hanya ada fdisk -l, Kemudian sistem akan menyenaraikan semua partition peranti yang boleh dicari dalam keseluruhan sistem.

    Instance 1

    Senaraikan semua maklumat partition

    [root@AY120919111755c246621 tmp]# fdisk -l
    
    Disk /dev/xvda: 21.5 GB, 21474836480 bytes
    255 heads, 63 sectors/track, 2610 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x00000000
    
        Device Boot      Start         End      Blocks   Id  System
    /dev/xvda1   *           1        2550    20480000   83  Linux
    /dev/xvda2            2550        2611      490496   82  Linux swap / Solaris
    
    Disk /dev/xvdb: 21.5 GB, 21474836480 bytes
    255 heads, 63 sectors/track, 2610 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x56f40944
    
        Device Boot      Start         End      Blocks   Id  System
    /dev/xvdb2               1        2610    20964793+  83  Linux

    Instance 2

    Ketahui cakera di mana direktori akar sistem anda terletak , dan semak maklumat yang berkaitan dalam cakera keras

    [root@www ~]# df /            <==注意:重点在找出磁盘文件名而已
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/hdc2              9920624   3823168   5585388  41% /
    
    [root@www ~]# fdisk /dev/hdc  <==仔细看,不要加上数字喔!
    The number of cylinders for this disk is set to 5005.
    There is nothing wrong with that, but this is larger than 1024,
    and could in certain setups cause problems with:
    1) software that runs at boot time (e.g., old versions of LILO)
    2) booting and partitioning software from other OSs
       (e.g., DOS FDISK, OS/2 FDISK)
    
    Command (m for help):     <==等待你的输入!

    Selepas memasukkan m, anda akan melihat pengenalan arahan berikut

    Command (m for help): m   <== 输入 m 后,就会看到底下这些命令介绍
    Command action
       a   toggle a bootable flag
       b   edit bsd disklabel
       c   toggle the dos compatibility flag
       d   delete a partition            <==删除一个partition
       l   list known partition types
       m   print this menu
       n   add a new partition           <==新增一个partition
       o   create a new empty DOS partition table
       p   print the partition table     <==在屏幕上显示分割表
       q   quit without saving changes   <==不储存离开fdisk程序
       s   create a new empty Sun disklabel
       t   change a partition's system id
       u   change display/entry units
       v   verify the partition table
       w   write table to disk and exit  <==将刚刚的动作写入分割表
       x   extra functionality (experts only)

    Tekan q apabila meninggalkan fdisk, maka semua tindakan akan Ia akan berkuat kuasa! Sebaliknya, menekan w bermakna tindakan itu berkuat kuasa.

    Command (m for help): p  <== 这里可以输出目前磁盘的状态
    
    Disk /dev/hdc: 41.1 GB, 41174138880 bytes        <==这个磁盘的文件名与容量
    255 heads, 63 sectors/track, 5005 cylinders      <==磁头、扇区与磁柱大小
    Units = cylinders of 16065 * 512 = 8225280 bytes <==每个磁柱的大小
    
       Device Boot      Start         End      Blocks   Id  System
    /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  Extended
    /dev/hdc5            1926        2052     1020096   82  Linux swap / Solaris
    # 装置文件名 启动区否 开始磁柱    结束磁柱  1K大小容量 磁盘分区槽内的系统
    
    Command (m for help): q

    Nak keluar tanpa menyimpan? Hanya tekan q dan itu sahaja! Jangan tekan w sembarangan!

    Gunakan p untuk menyenaraikan maklumat jadual partition semasa cakera ini Bahagian atas maklumat ini menunjukkan status keseluruhan cakera.


    Pemformatan cakera

    Selepas cakera dibahagikan, adalah wajar untuk memformat sistem fail Arahan pemformatan adalah sangat mudah, gunakan perintah mkfs (buat sistem fail).

    Sintaks:

    mkfs [-t 文件系统格式] 装置文件名

    Pilihan dan parameter:

    • -t: Boleh menyambung ke format sistem fail, seperti ext3, ext2, vfat, dsb. . (sistem mempunyai Sokongan akan berkuat kuasa)

    Instance 1

    Lihat format fail yang disokong oleh mkfs

    [root@www ~]# mkfs[tab][tab]
    mkfs         mkfs.cramfs  mkfs.ext2    mkfs.ext3    mkfs.msdos   mkfs.vfat

    Tekan dua [tab] dan anda akan mendapati bahawa mkfs menyokong Format fail ditunjukkan di atas.

    Contoh 2

    Formatkan partition /dev/hdc6 (anda boleh tentukan partition anda sendiri) ke dalam sistem fail ext3:

    [root@www ~]# mkfs -t ext3 /dev/hdc6
    mke2fs 1.39 (29-May-2006)
    Filesystem label=                <==这里指的是分割槽的名称(label)
    OS type: Linux
    Block size=4096 (log=2)          <==block 的大小配置为 4K 
    Fragment size=4096 (log=2)
    251392 inodes, 502023 blocks     <==由此配置决定的inode/block数量
    25101 blocks (5.00%) reserved for the super user
    First data block=0
    Maximum filesystem blocks=515899392
    16 block groups
    32768 blocks per group, 32768 fragments per group
    15712 inodes per group
    Superblock backups stored on blocks:
            32768, 98304, 163840, 229376, 294912
    
    Writing inode tables: done
    Creating journal (8192 blocks): done <==有日志记录
    Writing superblocks and filesystem accounting information: done
    
    This filesystem will be automatically checked every 34 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
    # 这样就创建起来我们所需要的 Ext3 文件系统了!简单明了!

    Pengesahan Cakera

    fsck (semakan sistem fail) digunakan untuk menyemak dan menyelenggara sistem fail yang tidak konsisten.

    Jika sistem kehilangan kuasa atau masalah cakera berlaku, anda boleh menggunakan arahan fsck untuk menyemak sistem fail.

    Sintaks:

    fsck [-t 文件系统] [-ACay] 装置名称

    Pilihan dan parameter:

    • -t: Jenis sistem fail yang diberikan, jika ia sudah wujud dalam /etc/ fstab Tidak perlu menambah parameter ini jika ia ditakrifkan atau disokong oleh kernel itu sendiri

    • -s: Jalankan arahan fsck satu demi satu dalam urutan untuk menyemak

      <🎜. >
    • -A: Semak semua partition yang disenaraikan dalam /etc/fstab

    • -C: Paparkan kemajuan semakan lengkap

    • -d: Cetak hasil nyahpepijat e2fsck

    • -p: Apabila terdapat keadaan -A pada masa yang sama, berbilang semakan fsck dilaksanakan pada masa yang sama

    • -R: Abaikan/tidak semak apabila -Sesuatu keadaan hadir pada masa yang sama

    • -V: Mod paparan terperinci

    • - a : Jika terdapat ralat dalam semakan, ia akan dibaiki secara automatik

    • -r : Jika terdapat ralat dalam semakan, pengguna akan jawab sama ada untuk membaikinya

    • -y : Pilihan menentukan bahawa setiap fail yang akan dikesan dimasukkan secara automatik sebagai ya Apabila anda tidak pasti yang mana yang tidak normal, anda boleh melaksanakan #fsck -y untuk menyemak dan membaiki semua.

    Contoh 1

    Semak berapa banyak sistem fail yang sistem menyokong perintah fsck:

    [root@www ~]# fsck[tab][tab]
    fsck         fsck.cramfs  fsck.ext2    fsck.ext3    fsck.msdos   fsck.vfat

    Contoh 2

    Kesan secara paksa partition /dev/hdc6:

    [root@www ~]# fsck -C -f -t ext3 /dev/hdc6 
    fsck 1.39 (29-May-2006)
    e2fsck 1.39 (29-May-2006)
    Pass 1: Checking inodes, blocks, and sizes
    Pass 2: Checking directory structure
    Pass 3: Checking directory connectivity
    Pass 4: Checking reference counts
    Pass 5: Checking group summary information
    vbird_logical: 11/251968 files (9.1% non-contiguous), 36926/1004046 blocks

    Jika pilihan -f tidak ditambah, kerana tiada masalah dengan sistem fail ini, semak proses sangat cepat! Jika anda menambah -f untuk menyemak paksa, proses akan dipaparkan satu persatu.


    Memasang dan menyahlekap cakera

    Linux menggunakan perintah mount untuk melekapkan cakera dan perintah umount untuk menyahlekapkannya.

    Sintaks pelekap cakera:

    mount [-t 文件系统] [-L Label名] [-o 额外选项] [-n]  装置文件名  挂载点

    Instance 1

    Gunakan kaedah lalai untuk melekapkan /dev/hdc6 yang baru dibuat pada /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

    Arahan nyahlekap cakera umount Sintaks:

    umount [-fn] 装置文件名或挂载点

    Pilihan dan parameter:

    • -f: Nyahlekap paksa! Boleh digunakan dalam situasi di mana Sistem Fail Rangkaian (NFS) tidak boleh dibaca;

    • Nyahpasang /dev/hdc6

      [root@www ~]# umount /dev/hdc6