日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux 文件系统及磁盘管理

發布時間:2025/3/15 linux 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux 文件系统及磁盘管理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一個新的磁盤盤需要經過分區、格式化(創建文件系統),掛載之后才能正常使用。關于磁盤的分區表有兩種格式:MBR(Master Boot Record)和GPT(GUID Partition Table)

????MBR:?

????也稱為主引導扇區,是計算機開機后訪問硬盤時必須讀取的首個扇區,也就是0柱面0磁頭1扇區,MBR由bootload(446字節)、分區表(64字節)、MBR結束標志(2字節)共512字節組成。最大支持2TB的分區。MBR格式的分區表支持3個主分區和1個擴展分區。


????GPT:

????為了支持容量大于2TB的分區,引入了GPT分區表格式,最大支持18EB

????

  • fdisk?: 磁盤分區工具

  • ??????fdisk <disk>

    ????????d: 刪除一個分區

    ????????l: 列出系統支持的分區類型

    ????????m:?打印幫助

    ????????n: 增加一個新分區?

    ????????p: 打印分區表

    ????????q: 不保存退出

    ????????w:?保存退出

    ????????t: 改變分區ID

    ????

    2.??partprobe(centos 5),kpartx,partx(centos 6):

    ????? ? partprobe <disk> :????通知OS系統磁盤分區表改變

    ????????partx -a <disk> :????? ?增加磁盤分區或讀取所有磁盤分區 ??

    ????????partx -l <disk>:????? ? ?列出磁盤所有分區?

    ? ? ????kpartx -af <disk> :????強制增加磁盤分區映射

    ????????kpartx -l <disk> :??????列出增加的磁盤分區映射? ?


    3. ?mke2fs , mkfs?: ? 格式化磁盤(創建文件系統ext2,ext3,ext4)

    ????????mke2fs的配置文件/etc/mke2fs.conf,使用用此命令加載的默認參數。

    ????????mke2fs = mkfs -t ext2 = mkfs.ext2

    ????????mke2fs:

    ????????????????-t : ?文件系統類型(ext2 ?| ?ext3 ?| ?ext4 )

    ????????????????-j : ?相當于 -t ext3

    ????????????????-L Label: 設置卷標

    ????????????????-b ( 1024 | 2048 | 4096): 指定塊大小

    ????????????????-i num: num個字節預留一個inode

    ????????????????-N num:? 直接指定預留多少個inode

    ????????????????-n:????不創建文件系統,但是顯示創建過程中執行的操作

    ????????????????-I num:????Inode大小

    ????????????????-m num:? 預留管理員的空間的百分比,默認為5

    ????????????????-U UUID: ??使用自定義的UUID

    ????????????????-c:????在創建文件系統之前,檢查磁盤上壞的block

    ????????????????-F:????強制創建文件系統

    ????????????????-g:????自定義每個block-group有多少個blocks

    ????????????????-G:????自定義block-group的數量

    ? ? ? ? ? ? ? ? -O [^]feature:????指定分區特性

    ????????????????????? ? feature:(默認sparse_super,filetype,resize_inode,dir_index,ext_attr)

    ????????????????????????????dir_index:????使用b-trees hash加速大目錄查詢速度。

    ????????????????????????????extend:????加速大文件系統訪問(large file)

    ????????????????????????????filetype:????存儲文件類型信息

    ????????????????????????????flex_bg:????允許block-group信息放置在block的任意位置

    ????????????????????????????has_journal:????創建ext3日志(同-j)

    ????????????????????????????journal_dev:????創建外部的ext3日志替代ext2文件系統

    ????????????????????????????large_file:????文件系統支持大于2G的文件

    ????????????????????????????resize_inode:????為block-group增長提供預留空間

    ????????????????????????????sparse_super:????創建包含super-block備份的文件系統

    ????????????????????????????uninit_bg:????加速文件系統創建(僅在ext4下支持)

    ? ??????????????-q:????用于在腳本中靜默執行格式化


    ????? # mke2fs /dev/sdb1

    ????mke2fs 1.41.12 (17-May-2010)

    ????warning: 252 blocks unused.


    ????Filesystem label=

    ????OS type: Linux

    ????Block size=4096 (log=2)

    ????Fragment size=4096 (log=2)

    ????Stride=0 blocks, Stripe width=0 blocks

    ????328320 inodes, 1310720 blocks

    ????65548 blocks (5.00%) reserved for the super user

    ????First data block=0

    ????Maximum filesystem blocks=1342177280

    ????40 block groups

    ????32768 blocks per group, 32768 fragments per group

    ????8208 inodes per group

    ????Superblock backups stored on blocks:?

    ????? ? ? ? 32768, 98304, 163840, 229376, 294912, 819200, 884736

    ????

    ????Writing inode tables: done ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    ????Writing superblocks and filesystem accounting information: done

    ????

    ????This filesystem will be automatically checked every 39 mounts or

    ????180 days, whichever comes first. ?Use tune2fs -c or -i to override.



    ????????????????

    4. ?e2label

    ????????e2label ?<partition>: 查看卷標

    ????????e2label ?<partition> Label: ?設置定卷標

    ????????# e2label /dev/sdb1 data


    5. ?blkid?

    ????????blkid <partition>:????查看分區類型和UUID

    ????# blkid /dev/sdb1

    ????/dev/sdb1: UUID="85ea6a34-0de2-47e8-83ee-589f79adb88a" TYPE="ext2"?

    ????


    6. ?dumpe2fs?: 查看文件系統(ext2 , ext3 , ext4)信息

    ????????-h:????僅顯示super-block信息?

    ????? #dumpe2fs -h /dev/sdb1

    ????dumpe2fs 1.41.12 (17-May-2010)

    ????Usage: dumpe2fs [-bfhixV] [-o superblock=<num>] [-o blocksize=<num>] device

    ????[root@test ~]# dumpe2fs -h /dev/sdb1

    ????dumpe2fs 1.41.12 (17-May-2010)

    ????Filesystem volume name: ? <none>

    ????Last mounted on: ? ? ? ? ?<not available>

    ????Filesystem UUID: ? ? ? ? ?a9771ea8-9719-4ecf-a6f2-c8b417a4878f

    ????Filesystem magic number: ?0xEF53

    ????Filesystem revision #: ? ?1 (dynamic)

    ????Filesystem features: ? ? ?ext_attr resize_inode dir_index filetype sparse_super ????large_file

    ????Filesystem flags: ? ? ? ? signed_directory_hash?

    ????Default mount options: ? ?(none)

    ????Filesystem state: ? ? ? ? clean

    ????Errors behavior: ? ? ? ? ?Continue

    ????Filesystem OS type: ? ? ? Linux

    ????Inode count: ? ? ? ? ? ? ?328320

    ????Block count: ? ? ? ? ? ? ?1310720

    ????Reserved block count: ? ? 65548

    ????Free blocks: ? ? ? ? ? ? ?1287546

    ????Free inodes: ? ? ? ? ? ? ?328309

    ????First block: ? ? ? ? ? ? ?0

    ????Block size: ? ? ? ? ? ? ? 4096

    ????Fragment size: ? ? ? ? ? ?4096

    ????Reserved GDT blocks: ? ? ?319

    ????Blocks per group: ? ? ? ? 32768

    ????Fragments per group: ? ? ?32768

    ????Inodes per group: ? ? ? ? 8208

    ????Inode blocks per group: ? 513

    ????Filesystem created: ? ? ? Fri Aug 22 13:35:10 2014

    ????Last mount time: ? ? ? ? ?n/a

    ????Last write time: ? ? ? ? ?Fri Aug 22 13:35:11 2014

    ????Mount count: ? ? ? ? ? ? ?0

    ????Maximum mount count: ? ? ?20

    ????Last checked: ? ? ? ? ? ? Fri Aug 22 13:35:10 2014

    ????Check interval: ? ? ? ? ? 15552000 (6 months)

    ????Next check after: ? ? ? ? Wed Feb 18 13:35:10 2015

    ????Reserved blocks uid: ? ? ?0 (user root)

    ????Reserved blocks gid: ? ? ?0 (group root)

    ????First inode: ? ? ? ? ? ? ?11

    ????Inode size: ? ? ? ? ? ? ? 256

    ????Required extra isize: ? ? 28

    ????Desired extra isize: ? ? ?28

    ????Default directory hash: ? half_md4

    ????Directory Hash Seed: ? ? ?a46fce3a-c1f4-417c-941b-c23c01a3f555


    7.?tune2fs:調整文件系統參數(針對ext2,ext3,ext4)

    ? ??????-f:????強制tune2fs完成操作,即使有錯誤出現。

    ????????-l:????列出super-block信息

    ????????-L label:????設定卷標

    ????????-m:????預留管理員的空間百分比,默認為5%

    ????????-j:????如果原來的文件系統類型為ext2,可以通過-j提升為ext3

    ????????-o [^]mount-options[...]: 設定其默認掛載選項

    ????????????mount-options:(tune2fs支持的mout-options)

    ????????????????debug:????????對文件系統啟用debug code.

    ????????????????bsdgroups:?? ?

    ????????????????user_xattr:? ?啟用用戶定義的擴展屬性

    ????????????????acl:????????? 啟用POSIX訪問控制列表

    ????????????????uid16:????????禁用32位UID和GID,用于兼容老的內核?

    ????????????????journal_data:? 在啟用了日志的分區上,元數據寫入日志區優先于數據寫入文件系統

    ????????????????journal_data_ordered: 在啟用了日志的分區上,數據寫入文件系統優先于元寫??????????????????????????????????????????入日志區

    ????????????????journal_data_writeback: ? 在啟用了日志的分區上,當元數據寫入日志區后,數據 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?可能被寫入文件系統,it may allow old data to ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?appear in ?files after a crash and journal recovery

    ????????????????nobarrier:????僅ext4分區支持

    ????????????????block_validity: ?讀寫文件系統時,額外的檢查被執行,僅ext4分區支持

    ????????????????discard: ?僅ext4分區支持

    ????????????????nodelalloc:? ?僅ext4分區支持

    ????????-O [^]feature[...]:?????? 調整分區特性,同mke2fs -O選項


    8.?fsck:?用于檢查和修復linux文件系統

    ????-t:? 要檢查的文件系統類型

    ????-A: 嘗試檢查所有/etc/fstab文件中所有文件系統

    ????-C:? 顯示檢查和修復進度條

    ????-M: ?不檢查已掛載的文件系統

    ????-N:?不執行,只顯示將要做什么

    ????-P:? 當使用了-A時,同時檢查根文件系統和其它文件系統

    ????-R:?當使用了-A時,跳過根文件系統檢查

    ????-a:? 自動修復文件系統

    ????-r:? 交互式修復文件系統

    ????

    9.?e2fsck:?用于檢查ext2,ext3,ext4文件系統

    ?????-f:????強制檢查

    ?????-F:? ? 在開始檢查之前,刷新分區的buffer cache

    ?????-y:????自動回答yes


    10.?mount:?掛載文件系統

    ????-r:????只讀掛載

    ????-w:????讀寫掛載

    ????-L: ? 掛載有些卷標的分區

    ????-u:????掛載有些uuid的分區

    ????-t:????掛載的文件系統類型

    ????-a:????自動掛載所有

    ? ? -n: ? ?不更新/etc/mtab文件

    ????--bind dir1 dir2: 綁定dir1到dir2,可以從dir2訪問dir1的文件

    ????-o options: 指定掛載選項

    ????????async: 異步I/O

    ????????sync:? 同步I/O

    ????????atime/noatime: 更新訪問時間

    ????????auto/noauto: 可以使用-a選項

    ????????defaults: 默認選項包括(rw,suid,dev,exec,auto,nouser,aysnc,relatime)

    ????????dev/nodev: 允許使用字符和塊設備

    ????????diratime/nodiratime: 更新目錄inode訪問次數

    ????????dirsync:

    ????????exec/noexec: 允許執行二進制文件

    ????????group:? ?允許普通用戶掛載文件系統,如果這個用戶屬于group

    ????????user/nouser: 允許普通用戶掛載文件系統,此選項隱含(noexec,nodev,nosuid)

    ????????users: 允許每個用戶掛載文件系統,此選項隱含(noexec,nodev,nosuid)

    ????????iversion/noiversion: 每次inode被修改,i_version域被增加

    ????????mand/nomand: 允許強制鎖

    ????????_netdev: 阻止系統嘗試掛載網絡文件系統,直到系統的網絡準備就緒

    ????????nofail: 如果設備不存在,不報告錯誤

    ????????relatime/norelatime: 類似于atime/noatime

    ????????strictatime/nostrictatime:

    ????????suid/nosuid: 允許設置suid sgid

    ????????owner: ?如果用戶是設備的owner,允許他掛載文件系統

    ????????remount: 重新掛載文件系統

    ????????ro: 只讀掛載

    ????????_rnewdev:和_netdev一樣,除了在執行rc.sysinit時通過“fsck -a"檢查文件系統

    ????????rw: 讀寫掛載

    ????mount執行后的退出狀態碼:

    ????????0: success

    ????????1:?incorrect invocation or permission

    ????????2:?system error(out of memory,cannot fork,no more loop devices)

    ????????4:?internal mount bug

    ????????8:?user interrupt

    ????????16:problems writing or locking /etc/mtab

    ????????32:mount failure

    ????????64:some mount succeeded

    ????

    ????umount /dev/sdb1卸載文件系統

    ????umount /media?

    ????????

    11.?fuser:?查看占用文件或socket的進程:

    ? ? # fuser -v /media

    ? ? ? ? ? ? ? ? ? ? ?????USER ? ? ? ?PID ACCESS COMMAND

    ????/media: ? ? ? ? ? ? ?root ? ? ?13156 ..c.. bash

    ????

    ????ACCESS列:表示訪問此進程的類型

    ????????c: 當前目錄

    ????????e: 可執行程序正在執行

    ????????f: 打開文件

    ????????F: 打開文件寫模式

    ????????r: root目錄

    ????????m: mmap'ed file or shared library

    ????# fuser -km /media ? 殺死占用/media的進程


    12.?df:?查看文件系統空間使用率

    ????-h: 以K,M,G形式顯示

    ????-i:?顯示inode使用率

    ????-P:以POSIX格式顯示

    ????# df -h?

    ????Filesystem ? ? ? ? ? ? ? ? ?Size ?Used Avail Use% Mounted on

    ????/dev/mapper/vg_test-lv_root ?36G ?1.8G ? 32G ? 6% /

    ????? ? ? ? ? ? ? ? ? ? ? ? ? ? ?36G ?1.8G ? 32G ? 6% /

    ????tmpfs ? ? ? ? ? ? ? ? ? ? ? 939M ? ? 0 ?939M ? 0% /dev/shm

    ????/dev/sda1 ? ? ? ? ? ? ? ? ? 485M ? 37M ?423M ? 9% /boot

    ????/dev/sdb1 ? ? ? ? ? ? ? ? ? 5.0G ? 10M ?4.7G ? 1% /media


    13.?du:?評估文件文件占用的磁盤空間

    ? ? # du -hs /root

    ? ? 55M ? ? /var


    14.?開機自動掛載文件/etc/fstab

    ????# /etc/fstab

    ????# Created by anaconda on Wed Jul 23 15:22:36 2014

    ????#

    ????# Accessible filesystems, by reference, are maintained under '/dev/disk'

    ????# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

    ????#

    ????/dev/mapper/vg_test-lv_root / ? ? ? ? ? ? ? ? ? ? ? ext4 ? ?defaults ? ? ? ?1 1

    ????UUID=590c416b-9d27-4fe1-af01-fc802a7a200c /boot ? ? ext4 ? ?defaults ? ? ? ?1 2

    ????/dev/mapper/vg_test-lv_swap swap ? ? ? ? ? ? ? ? ? ?swap ? ?defaults ? ? ? ?0 0

    ????tmpfs ? ? ? ? ? ? ? ? ? ? ? /dev/shm ? ? ? ? ? ? ? ?tmpfs ? defaults ? ? ? ?0 0

    ????devpts ? ? ? ? ? ? ? ? ? ? ?/dev/pts ? ? ? ? ? ? ? ?devpts ?gid=5,mode=620 ?0 0

    ????sysfs ? ? ? ? ? ? ? ? ? ? ? /sys ? ? ? ? ? ? ? ? ? ?sysfs ? defaults ? ? ? ?0 0

    ????proc ? ? ? ? ? ? ? ? ? ? ? ?/proc ? ? ? ? ? ? ? ? ? proc ? ?defaults ? ? ? ?0 0

    ????

    ????第一列:要掛載的設備(設備文件,卷標,UUID)

    ????第二列:掛載點

    ????第三列:文件系統類型

    ????第四列:掛載選項

    ????第五列:轉儲頻率

    ????????????0:從不備份

    ????????????1:每日備份

    ????????????2:每隔一日備份

    ????第六列:自檢次序

    ????????????0:不自檢

    ????????????1: 首先自檢,通常只被/使用

    ????????????2:/自檢之后自檢

    ? ??

    15. ?dd: convert and copy a file

    ????dd if=input_file of=output_file

    ????dd if=input_file of=output_file bs=#[b|k|m|g] count=#


    ????dd if=/dev/cdrom of=/tmp/centos.iso

    ????制作ISO文件


    ????dd if=/dev/sdb of=/tmp/outfile bs=512 count=1

    ????復制整個硬盤

    ????

    ????dd if=/dev/zero of=/dev/sdb bs=500 count=1

    ????刪除磁盤前500個字節


    16. ?ln: 創建鏈接文件

    ????????硬鏈接:

    ????????????不能跨分區

    ????????????不能對目錄創建硬鏈接

    ????????????會改變文件被鏈接的次數

    ????????????與原文件指向同一個inode

    ????????符號鏈接:

    ????????????可以跨分區

    ????????????可以和原文件不同一個inode

    ????????????可以對目錄創建符號鏈接

    ????????????不會改變文件的被鏈接次數


    17. ?壓縮工具: zip/unzip , gzip/gunzip , bzip2/bunzip2 , xz/unxz

    ? ? ?zip: zip用于壓縮文件、節省磁盤空間、把目錄打包成.zip文件;對于文本文件壓縮比例為2:1到3:1,zip默認使用的壓縮算法是deflation

    ?????命令格式:

    ?????zip options archive inpath inpath ...

    ???? archive:壓縮之后的目的文件,格式為xxx.zip

    ???? inpath: 目錄或是文件路徑

    ? ? ?options:

    ????????-r: 遞歸查找子目錄

    ????????-u: 更新archive中已存在的文件,增加新的文件

    ????????-f:?更新archive中已存在的文件,但是不增加新文件

    ????????-d: 刪除已存在的archive,創建新的archive文件

    ????????-U: 創建新的archive文件,結合-O選項,復制老的archive文件作為副本

    ????????-z: 增加備注信息

    ????????

    ?????zip結合管道使用:

    ????????find /root/ -name "*.sh" -print | zip -r bash.zip -@?

    ????????查找/root目錄下所有以sh為后綴的文件,歸檔為bash.zip文件(-@代表inpath)


    ????????zip -r - . | ls -l

    ????????-作為代替archive文件用于將archive文件寫到標準輸出stdout


    ????????tar cf - . | zip backup -

    ????????-也可以作為inpath,tar備份當前目錄,把輸出結果傳遞給zip作歸檔


    ????????tar cf - . | zip | dd of=/dev/nrst0 obs=16k

    ????????等同于

    ????????tar cf - . | zip - - | dd of=/dev/nrst0 obs=16k

    ????????tar歸檔當前目錄,zip使用tar歸檔之的文件作為輸入,然后把壓縮結果寫入到磁帶


    ???? unzip :解壓縮zip格式的文件

    ????????-d: 指定解縮目錄

    ????????-l: 列出archive文件中的所有文件清單

    ????????-v: 類似于-l,顯示更詳細的信息

    ????????-f: 僅解壓比磁盤上的文件更新的文件

    ? ? ????-u: 類似于-f,并創建磁盤上沒有文件

    ????????-p:?解壓文件作為標準輸出stdout

    ????????-t: 解壓縮文件測試

    ????????-z: 查看壓縮文件備注信息


    ???? gzip:壓縮文件之后會刪除原文件,壓縮后的格式為xx.gz

    ????????-c: 壓縮文件作為標準輸出stdout,可以使用重定向保留原文件

    ????????-d: 相當于gunzip,zcat解壓

    ????????-f: 強制壓縮和解壓

    ????????-l: 查看壓縮文件列表

    ????????-q: 靜默模式,常用于腳本

    ????????-t: 檢查壓縮文件的完整性

    ????????-#: 1-9指定壓縮比


    ???? bzip2: 壓縮文件之后會刪除原來的文件,壓縮后的格式為xx.bz2

    ????????-c: 壓縮或解壓縮到標準輸出stdout

    ????????-d: 相當于bunzip2,bzcat

    ????????-t: 檢查壓縮文件的完整性

    ????????-f: 強制覆蓋輸出文件

    ????????-k:壓縮后保留原文件

    ????????-s: 壓縮、解壓縮、檢查完整性時減少內存使用率

    ????????

    ???? xz:?

    ????????-z: 缺省選項,壓縮

    ????????-d: 相當于unxz,xzcat解壓

    ????????-t: 檢查壓縮文件完整性

    ????????-l: 查看壓縮文件列表

    ????????-k: 壓縮后保留原文件

    ????????-c: 壓縮或解壓到標準輸出stdout

    ????????-#: 0-9指定壓縮比例


    18.?歸檔工具: tar

    ????tar命令格式:

    ????tar [options] [file]

    ????????options:

    ????????????-c: 創建歸檔文件

    ????????????-x: 提取歸檔文件

    ????????????-t: 列出歸檔文件內容

    ????????????-C: 改變目錄

    ????????????-f: 指定歸檔文件名

    ????????????-j: 使用bzip2

    ????????????-J:使用xz

    ????????????-z: 使用gzip

    ????

    ?????tar -jcf file.tar.bz2 file?

    ?????把文件file歸檔成bz2格式

    ?????tar -jxf file.tar.bz2

    ?????展開bz2文件


    ?????tar -Jcf file.tar.xz file

    ? ? ?把文件file歸檔成xz格式

    ???? tar -Jxf file.tar.xz

    ? ? ?展開xz文件


    ?????tar -zcf file.tar.gz file

    ? ? ?把文件file歸檔成gz格式

    ???? tar -zxf file.tar.gz

    ?????展開gz文件

    總結

    以上是生活随笔為你收集整理的linux 文件系统及磁盘管理的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。