標簽:文件系統、分區、掛載
一、Linux的基本原則
1、一切皆文件(包括硬件);這個原則會會在很多方面得到體現; 磁盤在Linux中也表現為文件,即/dev目錄下:IDE,ATA:/dev/hd[a-z] SATA,SCSI,USB,SAS:sd[a-z]。
2、由從多單一目的小程序組成
3、組合小程序完成復雜任務 ;以小聚大,Linux都告訴我們團隊有多重要了。
4、盡可能避免捕獲用戶接口,為了方便腳本編程以實現自動化執行;
5、使用文本文件保存程序的配置數據:使用一個文本編輯器即可完成系統及服務配置工作;
二、機械硬盤
磁道:Track,可以理解為一個圓形盤片由許許多多的同心圓組成,每一個同心圓可以認為是一個磁道。(硬盤是一個高速旋轉的東西,當磁盤旋轉時,磁頭若保持在一個位置上不動,則磁頭會在磁盤表面劃出一個圓形軌跡,這些圓形軌跡就叫做磁道)
扇區:Sector,可以聯想到“扇形區域”,磁盤上的每個磁道被等分為若干個弧段,這些弧段便是磁盤的扇區,每個扇區的大小為512個字節,磁盤驅動器在向磁盤讀取和寫入數據時應該以扇區為單位。扇區并不一定是對齊的,這是因為磁道的同心圓的周長是不同的,而我們的扇區的大小是一樣的,這就造成了最外層了0磁道的扇區要比內層的磁道的扇區要多。
柱面:Cylinder,硬盤通常由重疊的一組盤片構成,每個盤面都被劃分為數目相等的磁道,并從外緣的0開始編號,具有相同編號的磁道形成一個圓柱,稱之為磁盤的柱面。顯然,磁盤的柱面數與一個盤面上的磁道數是相等的。
磁頭:Head,當然是讀取信息用的了。每個盤面都有自己的磁頭,如果盤面的雙面都記錄信息,那么雙面都應該有磁頭。所以,硬盤的容量計算公式如下:硬盤的容量=柱面數×磁頭數×扇區數×512(字節數)
機械硬盤的0磁道0扇區非常重要,它存放著硬盤主引導記錄MBR。也就是說MBR只有512個字節。我們的硬盤是否能夠引導啟動操作系統就靠它了。
MBR由三部分構成:
1.主引導程序代碼,占446字節
2.硬盤分區表DPT,占64字節,沒16字節表示一個分區;每個硬盤上最多有四個主分區或者三個主分區一個擴展分區。擴展分區必須再分區后才能夠使用。分區也無非就是定義了這個分區是從哪個柱面起始到哪個柱面結束。而在一個分區中柱面可能有很多個于是每個分區內又把這些個柱面劃分成一個個的塊組來簡化管理。
3.主引導扇區結束標志AA55H
三、文件是怎樣被存儲的
1、分區創建完成后要再經過高級格式化創建文件系統后才能用來存儲文件,linux常用的文件系統有ext2(不支持日志功能)、ext3、ext4、xfs、swap(交換分區)。因為我們的Linux系統是單根模式的文件目錄樹,所以我們分分區必須經過掛載后才能使用,也就是分區與目錄建立1對1的關聯關系。
2、磁盤提供給我們最小數據單位扇區對于我們的文件系統還是有些較小,于是文件系統在創建的時候就會把扇區組合劃分成一個個的block;大小一般為扇區大小2的N次方大小。常用的塊大小為1024、2048和4096。
3、我們的分區是被分成數據區、元數據區、日志區(如果文件系統支持的話)三個部分的
4、元數據區是存放inode數據信息的
inode內容:文件名,大小,時間戳,權限,屬主、屬組,對應的數據存儲在哪些磁盤塊(組)上 ,就是講我們的文件進行邊界劃分,區分不通的文件內容,防止文件內容交叉。
數據區才是真正存放我們數據的區域。有時候我們的數據很大在元數據上還可能有多級塊組指向、
計算機是對數字的處理速度最快所有我們每個文件都一個inode編號使用ls -i就能查看到
5、每一個文件系統一般都會分為幾個block group,每個中都存放著各自的block和inode bitmap,一般第一個block group上有一個superblock,另外幾個block 上也可能存有備份的superblock。
Superblock內容:總inode數,總block數,空閑的block數;空閑的inode數;預留給管理員的block數;以及這些block的編號和所在block group。
查看超級塊命令示例:
tune2fs -l 設備名稱
dumpe2fs /dev/sda3|less顯示所有block group的信息 –h 顯示超級塊的信息
6、日志系統的含義是在文件文件的inode信息先被寫入到日志區,等到數據寫入結束后inode信息會從日志區挪到元數據區內。這樣我們在對文件系統檢測是的速度會提高很多,但是也讓我們的文件系統的文件寫入增加了一個步驟有可能會寫入速度造成影響,我想我們偉大的程序員工程師一定通過各種優化的算法讓這個影響可以忽略掉了。
7、目錄其實也是個文件,他們里面的內容其實就是我們的文件名
我們的文件存放是先生成inode信息,然后數據寫入到數據區內。
四、Linux的文件目錄樹:
Linux嚴格區分字符大小寫,文件最長命名255個字符,以【/】為分隔符分開各層級文件。是一課倒置的樹 。以根【/】為起點所有的文件和路徑都在根下。
一個目錄:就是一個名稱空間
相對路徑:從非頂級,缺省路徑時從當前路徑開始
絕對路徑:從頂級名稱空間起始標記的路徑 /bin/ls
Linux 是單目錄的,分區是掛在到這些目錄節點上的(可以理解為分區和目錄是綁定的,打開這個目錄就是進入這個分區)。
因為linux的文件眾多繁雜,也是為了統一發行商所發行的Linux系統的文件名保持一定的兼容性就有了FHS:Linux (Filesystem Hierarchy Standard);定義了linux下一些目錄的固定應用范圍。
/boot: 系統啟動相關的文件,如內核、initrd,以及grub(bootloader) /dev: 設備文件 設備文件: 塊設備:隨機訪問,數據塊 字符設備:線性訪問,按字符為單位 設備號:主設備號(major)和次設備號(minor) /etc:配置文件 /home:用戶的家目錄,每一個用戶的家目錄通常默認為 /home/USERNAME /root:管理員的家目錄; /lib:庫文件 靜態庫:.a 動態庫:.dll, .so (shared object) /lib/modules:內核模塊文件 /media:掛載點目錄,移動設備 /mnt:掛載點目錄,額外的臨時文件系統 /opt:可選目錄,第三方程序的安裝目錄 /proc:偽文件系統,內核映射文件 /sys:偽文件系統,跟硬件設備相關的屬性映射文件 /tmp:臨時文件 /var/tmp: /var:可變化的文件 /bin:可執行文件 /sbin:管理命令 /usr:用戶程序
Linux文件的命名規則:
1、長度不能超過255個字符;
2、不能使用/當文件名
3、嚴格區分大小寫
五、硬盤要經過多少坎坷才能存放文件
5.1 分區
5.1.1 命令行中列出分區列表
[root@zhuzw-centos6 ~]# fdisk -l /dev/sdb #列出硬盤上的所有分區 #fdisk –ul 可以列出所有磁盤的分區表
Disk /dev/sdb: 128.8 GB, 128849018880 bytes 255 heads, 63 sectors/track, 15665 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: 0x6acdf85b Device Boot Start End Blocks Id System /dev/sdb1 1 15665 125829081 5 Extended /dev/sdb5 1 15665 125829049+ 8e Linux LVM
5.1.2 fdisk的交互式使用之刪除分區
Fdisk是個交互式的工具
[root@zhuzw-centos6 ~]# fdisk /dev/sdb #fdisk 后面跟上你想進行分區操作的設備文件即可,就會進入一下界面 WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): m #鍵入m就會打印出選項菜單 Command action a toggle a bootable flag #設置引導扇區 b edit bsd disklabel #編輯BSD磁盤 c toggle the dos compatibility flag d delete a partition #刪除分區 l list known partition types #列出已知分區類型 m print this menu #打印菜單 n add a new partition #新建一個分區 o create a new empty DOS partition table p print the partition table #打印分區表 q quit without saving changes #不保存退出 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) #專家模式 我的/dev/sdb上已經有兩個分區了 Device Boot Start End Blocks Id System /dev/sdb1 1 15665 125829081 5 Extended # 5代表的是擴展分區 /dev/sdb5 1 15665 125829049+ 8e Linux LVM 首先把這兩個分區刪除 Command (m for help): d #鍵入d Partition number (1-5): 1 #詢問你要刪除哪個分區,我們這里選擇刪除分區1 Command (m for help): p #鍵入p打印分區表 Disk /dev/sdb: 128.8 GB, 128849018880 bytes 255 heads, 63 sectors/track, 15665 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: 0x6acdf85b Device Boot Start End Blocks Id System Command (m for help): #分區沒有了,這是因為/sdb5是建立在擴展分區上進行分區創建的,直接刪除擴展分區會讓擴展分區上的所有分區全部丟失。在刪除擴展分區時一定要慎重。 5.1.3 fdisk的交互式使用之新建分區 Command (m for help): n #鍵入n創建分區,不區分大小寫 Command action e extended #交互式選擇 e 擴展分區 p primary partition (1-4) #p主分區 p #鍵入p選擇創建主分區,不區分大小寫 Partition number (1-4): 1 #選擇分區號 First cylinder (1-15665, default 1): #選擇起始柱面,有默認值可以直接回車 Using default value 1 Last cylinder, +cylinders or +size{K,M,G} (1-15665, default 15665): +500M #選擇分區大小,可以使用+size{K,M,G} +大小{K M G} 這里區分大小寫 Command (m for help): N Command action e extended p primary partition (1-4) E #鍵入e選擇創建擴展分區,不區分大小寫。注意擴展分區需要在進行創建分區才可以使用 Partition number (1-4): 2 First cylinder (66-15665, default 66): Using default value 66 Last cylinder, +cylinders or +size{K,M,G} (66-15665, default 15665): +20G Command (m for help): N Command action l logical (5 or over) #這是針對擴展分區創建分區的選項 p primary partition (1-4) L First cylinder (66-2677, default 66): Using default value 66 Last cylinder, +cylinders or +size{K,M,G} (66-2677, default 2677): +10G
5.1.3 fdisk的交互式使用之修改分區表示ID
Command (m for help): T #鍵入T修改分區識別ID,這里一定要修改要不然當你的系統損壞或者重裝系統后,有可能會發生原有分區無法正常被識別。如swap lvm RAID Partition number (1-5): 5 #鍵入分區號,這個/dev/sdb5后面的那個數字 Hex code (type L to list codes): L #再次還科技鍵入L查看分區識別ID 0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris 1 FAT12 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT- 2 XENIX root 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT- 3 XENIX usr 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT- 4 FAT16 <32M 41 PPC PReP Boot 85 Linux extended c7 Syrinx 5 Extended 42 SFS 86 NTFS volume set da Non-FS data 6 FAT16 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / . 7 HPFS/NTFS 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility 8 AIX 4f QNX4.x 3rd part 8e Linux LVM df BootIt 9 AIX bootable 50 OnTrack DM 93 Amoeba e1 DOS access a OS/2 Boot Manag 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O b W95 FAT32 52 CP/M 9f BSD/OS e4 SpeedStor c W95 FAT32 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs e W95 FAT16 (LBA) 54 OnTrackDM6 a5 FreeBSD ee GPT f W95 Ext'd (LBA) 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/ 10 OPUS 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b 11 Hidden FAT12 5c Priam Edisk a8 Darwin UFS f1 SpeedStor 12 Compaq diagnost 61 SpeedStor a9 NetBSD f4 SpeedStor 14 Hidden FAT16 <3 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary 16 Hidden FAT16 64 Novell Netware af HFS / HFS+ fb VMware VMFS 17 Hidden HPFS/NTF 65 Novell Netware b7 BSDI fs fc VMware VMKCORE 18 AST SmartSleep 70 DiskSecure Mult b8 BSDI swap fd Linux raid auto 1b Hidden W95 FAT3 75 PC/IX bb Boot Wizard hid fe LANstep 1c Hidden W95 FAT3 80 Old Minix be Solaris boot ff BBT 1e Hidden W95 FAT1 Hex code (type L to list codes): 8e #鍵入相應的分區識別ID Changed system type of partition 5 to 8e (Linux LVM) Command (m for help): p Disk /dev/sdb: 128.8 GB, 128849018880 bytes 255 heads, 63 sectors/track, 15665 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: 0x6acdf85b Device Boot Start End Blocks Id System /dev/sdb1 1 65 522081 83 Linux /dev/sdb2 66 2677 20980890 5 Extended /dev/sdb5 66 1371 10490413+ 8e Linux LVM (1)分區創建好了之后,用 fdisk -l 命令可以查看分區情況,但需要注意的是:雖然fidsk命令列出了所有的分區情況,不代表新分區就可以被操作系統識別了, 文件系統是內核的功能(即軟件能識別新分區但內核并不能識別),可以用" cat /proc/partitions "命令查看,若要內核能識別需要把分區變化情況同步到內核。 [root@zhuzw-centos6 ~]# cat /proc/partitions major minor #blocks name 8 0 31457280 sda 8 1 512000 sda1 8 2 30944256 sda2 8 16 125829120 sdb 8 17 2104483 sdb1 8 18 1 sdb2 8 21 123724566 sdb5 8 32 83886080 sdc 8 33 83883397 sdc1 253 0 28909568 dm-0 253 1 2031616 dm-1
如果內核沒有識別我們新創建的分區可以通過以下命令敲幾遍,讓內核識別我們新創建的分區。
# partx -a [DEVICE]
# kpartx -af [DEVICE]
(2) 要特別注意 :分區及格式化操作會永久地破壞目前存在于該分區上的任何數據,操作時需要特別小心(操作前對原有數據做備份)!
5.2 創建文件系統,也就是高級格式化分區
Linux內核是模塊化的,這些模塊支持動態裝載和卸載;
文件系統可能會被直接打包進內核,也可以被編譯成內核模塊;
也就是說linux支持的文件系統,發行版不一定支持。如果此文件系統在發行版上不被支持而你又想要使用的話可以將此模塊動態加載進linux內核中。
命令 : mkfs mke2fs, mkfs.ext2, mkfs.ext3, mkfs.ext4 mkfs.xfs
5.2.1 mke2fs
mke2fs也非是根據選項來調用mkfs.ext2, mkfs.ext3, mkfs.ext4命令來完成文件分區的格式化操作。
-t {ext2|ext3|ext4}:指定文件系統
-b {1024|2048|4096}:指定塊大小
-L LABEL: 打標
-j: 相當于 -t ext3
-i #: 每多少字節給創建一個inode,此字節數不應該少小塊大小
-N #: 直接指定可用的inode數;
-m #: 指定預留空間占整個分區空間的百分比;默認為5;
-O:指定分區特性
[root@zhuzw-centos6 ~]# mke2fs -L "myzhuzw" -b 2048 -m 1 -t ext4 /dev/sdb5 mke2fs 1.41.12 (17-May-2010) 文件系統標簽=myzhuzw #卷標為myzhuzw 操作系統:Linux 塊大小=2048 (log=1) #-b 2048 將塊大小修為2048 默認是4096 分塊大小=2048 (log=1) Stride=0 blocks, Stripe width=0 blocks 7733248 inodes, 61862282 blocks 618622 blocks (1.00%) reserved for the super user #預留1.00%的空間給超級用戶 第一個數據塊=0 Maximum filesystem blocks=598736896 3776 block groups 16384 blocks per group, 16384 fragments per group 2048 inodes per group Superblock backups stored on blocks: #超級塊備份 16384, 49152, 81920, 114688, 147456, 409600, 442368, 802816, 1327104, 2048000, 3981312, 5619712, 10240000, 11943936, 35831808, 39337984, 51200000 正在寫入inode表: 完成 Creating journal (32768 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 23 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
5.2.2 Mkfs mkfs [-V] [-t fstype] [fs-options] device [size]
Mkfs 也是通過調用mkfs.ext2, mkfs.ext3, mkfs.ext4 mkfs.xfs這幾個命令來實現對分區創建文件系統,默認是ext2的文件系統。通過-t 來調整文件系統
[root@zhuzw-centos6 ~]# mkfs -t ext3 -b 2048 /dev/sdb5 #這里的-b 2048 其實是mkfs.ext3的選項參數 mke2fs 1.41.12 (17-May-2010) 文件系統標簽= 操作系統:Linux 塊大小=2048 (log=1) 分塊大小=2048 (log=1) Stride=0 blocks, Stripe width=0 blocks 7733248 inodes, 61862282 blocks 3093114 blocks (5.00%) reserved for the super user 第一個數據塊=0 Maximum filesystem blocks=598736896 3776 block groups 16384 blocks per group, 16384 fragments per group 2048 inodes per group Superblock backups stored on blocks: 16384, 49152, 81920, 114688, 147456, 409600, 442368, 802816, 1327104, 2048000, 3981312, 5619712, 10240000, 11943936, 35831808, 39337984, 51200000 正在寫入inode表: 完成 Creating journal (32768 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 24 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
5.2.3創建交換分區:
mkswap [-L LABEL] DEVICE
[root@zhuzw-centos6 ~]# mkswap /dev/sdb1 mkswap: /dev/sdb1: warning: don't erase bootbits sectors (dos partition table detected). Use -f to force. Setting up swapspace version 1, size = 2104476 KiB no label, UUID=383b4ec2-9703-46fe-93ac-a4416da0c862
5.2.4 一些常用的查看和修改命令
blkid: 查看指定塊設備的信息
[root@zhuzw-centos6 ~]# blkid #不加參數為產科所有已經創建文件系統的分區參數,包含卷標UUID 文件系統類型 /dev/sda1: UUID="cf945085-4631-4e6f-a250-7a4d7e2b82ce" TYPE="ext4" /dev/sda2: UUID="rpUYLk-vdqY-k5YM-BRFy-x91e-3jzw-6JB99P" TYPE="LVM2_member" /dev/sdb5: UUID="723ef74d-1a19-47f4-b211-5aa90e50c5c1" SEC_TYPE="ext2" TYPE="ext3" /dev/mapper/vg_zhuzwcentos6-lv_root: UUID="42e29e66-1644-4909-8aa9-87d978686751" TYPE="ext4" /dev/mapper/vg_zhuzwcentos6-lv_swap: UUID="e05e3e78-719d-4061-a623-d88ff219fb45" TYPE="swap". [root@zhuzw-centos6 ~]# blkid /dev/sdb5 #加上分區文件為至查看此分區 /dev/sdb5: UUID="723ef74d-1a19-47f4-b211-5aa90e50c5c1" SEC_TYPE="ext2" TYPE="ext3"
e2label:查看或設定卷標
e2label DEVICE [LABEL] #不加卷標參數為查看,加卷標參數為修改稿卷標 [root@zhuzw-centos6 ~]# e2label /dev/sdb5 my [root@zhuzw-centos6 ~]# e2label /dev/sdb5 zhuzw [root@zhuzw-centos6 ~]# e2label /dev/sdb5 zhuzw
查看超級塊信息:
# tune2fs -l DEVICE
# dumpe2fs -h DEVICE
tune2fs :修改分區屬性:
-j: ext2 --> ext3 -L LABEL:修改卷標 -m #: 修改預留空間百分比; -O [^]FEATURE: 啟用指定特性,特性前加^,表示關閉此種特性 -o [^]mount-options: 開啟或關閉指定的掛載選項 塊大小是固定的無法修改
df: disk free 查看看磁盤空間使用情況
-h: human-readable 易讀的顯示方式
-i: 顯示inode的使用信息而非默認的磁盤空間使用信息
[root@zhuzw-centos6 /]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_zhuzwcentos6-lv_root 28G 3.3G 23G 13% / tmpfs 491M 72K 491M 1% /dev/shm /dev/sda1 485M 35M 426M 8% /boot /dev/sdb5 117G 83M 111G 1% /mnt/zhuzw [root@zhuzw-centos6 /]# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/mapper/vg_zhuzwcentos6-lv_root 1806896 93172 1713724 6% / tmpfs 125551 3 125548 1% /dev/shm /dev/sda1 128016 38 127978 1% /boot /dev/sdb5 7733248 11 7733237 1% /mnt/zhuzw
du: disk usage 一般用于查看目錄總大小
-s: 查看目錄大小
-h: 易讀的顯示方式
[root@zhuzw-centos6 /]# du -sh /tmp 265M /tmp
5.2.5 文件系統修復
凡事有意外;因進程意外中止或系統崩潰等情況導入寫入操作非正常中止時,可能會導致文件損壞;此時,應該修復文件系統,需要離線修復,交換分區不能修復。
fsck [options] DEVICE
-t fstype #不指也可以自動識別
-a: 自動修復錯誤
-r: 交互式修復錯誤
[root@zhuzw-centos6 ~]# fsck /dev/sdb5 fsck from util-linux-ng 2.17.2 e2fsck 1.41.12 (17-May-2010) zhuzw: clean, 11/7733248 files, 1017347/61862282 blocks
e2fsck: 專用于修改ext系列文件系統
-y: 對問題自動回答為yes
-f: 強制進行檢測
5.3 文件系統掛載
文件系統掛載:默認只有管理員才有權限,可以通過選項來允許普通用戶對特定的分區操作
掛載就是將已經格式化好的分區與目錄建立1對1的關聯關系。如果這個目錄內有文件,原文件會被隱藏。當新的掛載被卸掉后原文件會再次出現。
5.3.1 掛載
命令:mount DEVICE MOUNT_POINT
Linux系統默認一般用于掛載點兩個目錄:/mnt, /media。當然不是掛載到這另個目錄上,而是在這兩個目錄上新建一個目錄文件后掛載到你所創建的目錄文件上。
mount [option]… [-t fstype] [-o option] 設備 掛載點
掛載點需要事創建并且最好是空閑的目錄。
常用的掛載選項: -t fstype:指定文件系統類型 -r: readonly, 只讀掛載 -w: read and write, 讀寫掛載 -L LABEL:以卷標方式指定設備, mount -L MYDATA 掛載點 -U UUID: 以UUID的方式指定設備,mount UUID='uuid' 掛載點, mount -U uuid 掛載點 -a: 自動掛載所有(/etc/fstab文件中定義的)的支持自動掛載設備 -n: 掛載時,不更新/etc/mtab文件 -o option: 默認選項:為rw, suid, dev, exec, auto, nouser, async, and relatime. async:異步I/O,數據寫操作先于內存完成,而后再根據某種策略同步至持久設備中 sync: 同步I/O, atime/noatime: 文件和目錄被訪問時是更新最近一次的訪問時間戳 auto/noauto:設備是否支持mount的-a選項自動掛載 diratime/nodiratime: 目錄被訪問時是更新最近一次的訪問時間戳 dev/nodev: 是否支持在此設備上使用設備; exec/noexec: 是否允許執行此設備上的二進制程序文件 suid/nosuid: 是否支持在此設備的文件上使用suid remount: 重新掛載,通常用于不卸載的情況下重新指定掛載選項 ro: 只讀 rw: 讀寫 user/nouser: 是否允許普通掛載此文件設備 acl: 在此設備是支持使用facl,默認不支持; 例如:以指定掛載后支持acl為例: [root@zhuzw-centos6 mnt]# pwd /mnt [root@zhuzw-centos6 mnt]# mkdir zhuzw #新建一個zhuzw目錄 [root@zhuzw-centos6 mnt]# cd zhuzw [root@zhuzw-centos6 zhuzw]# ls [root@zhuzw-centos6 zhuzw]# touch a.txt #建一個空文件 [root@zhuzw-centos6 zhuzw]# cd .. #回到父目錄 [root@zhuzw-centos6 mnt]# mount /dev/sdb5 /mnt/zhuzw #掛載 [root@zhuzw-centos6 mnt]# mount #查看掛載信息 /dev/mapper/vg_zhuzwcentos6-lv_root on / type ext4 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0") /dev/sda1 on /boot type ext4 (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) vmware-vmblock on /var/run/vmblock-fuse type fuse.vmware-vmblock (rw,nosuid,nodev,default_permissions,allow_other) /dev/sdb5 on /mnt/zhuzw type ext3 (rw) #我們剛才掛載的文件 [root@zhuzw-centos6 mnt]# mount -o remount -o acl -o ro /dev/sdb5 /mnt/zhuzw #這個-0 多選項要這么用
5.3.2 卸載
卸載時必須沒有用戶在使用此目錄才可以
查看哪些進程正在訪問掛載的設備:
fuser -v 掛載點
中止正在此掛載點的進程:
fuser -km 掛載點
卸載命令:umount
umount DEVICE #umount /dev/sdb5
umount MOUNT_POINT #umount /mnt/zhuzw
5.3.3 掛卸載交換分區
[root@zhuzw-centos6 ~]# swapon /dev/sdb1 #掛載交換分區 [root@zhuzw-centos6 ~]# free total used free shared buffers cached Mem: 1004412 244448 759964 0 33540 38948 -/+ buffers/cache: 171960 832452 Swap: 4136080 0 4136080 [root@zhuzw-centos6 ~]# swapoff /dev/sdb1 #卸載交換分區 [root@zhuzw-centos6 ~]# free total used free shared buffers cached Mem: 1004412 243332 761080 0 33540 38956 -/+ buffers/cache: 170836 833576 Swap: 2031608 0 2031608
5.3.4查看所有已經掛載的設備:
# mount [root@zhuzw-centos6 mnt]# mount #查看掛載信息 /dev/mapper/vg_zhuzwcentos6-lv_root on / type ext4 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0") /dev/sda1 on /boot type ext4 (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) vmware-vmblock on /var/run/vmblock-fuse type fuse.vmware-vmblock (rw,nosuid,nodev,default_permissions,allow_other) /dev/sdb5 on /mnt/zhuzw type ext3 (rw) #我們剛才掛載的文件 # cat /proc/mounts [root@zhuzw-centos6 mnt]# cat /proc/mounts rootfs / rootfs rw 0 0 proc /proc proc rw,relatime 0 0 sysfs /sys sysfs rw,seclabel,relatime 0 0 devtmpfs /dev devtmpfs rw,seclabel,relatime,size=491792k,nr_inodes=122948,mode=755 0 0 devpts /dev/pts devpts rw,seclabel,relatime,gid=5,mode=620,ptmxmode=000 0 0 tmpfs /dev/shm tmpfs rw,seclabel,relatime 0 0 /dev/mapper/vg_zhuzwcentos6-lv_root / ext4 rw,seclabel,relatime,barrier=1,data=ordered 0 0 none /selinux selinuxfs rw,relatime 0 0 devtmpfs /dev devtmpfs rw,seclabel,relatime,size=491792k,nr_inodes=122948,mode=755 0 0 /proc/bus/usb /proc/bus/usb usbfs rw,relatime 0 0 /dev/sda1 /boot ext4 rw,seclabel,relatime,barrier=1,data=ordered 0 0 none /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0 vmware-vmblock /var/run/vmblock-fuse fuse.vmware-vmblock rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other 0 0 /etc/auto.misc /misc autofs rw,relatime,fd=7,pgrp=1911,timeout=300,minproto=5,maxproto=5,indirect 0 0 -hosts /net autofs rw,relatime,fd=13,pgrp=1911,timeout=300,minproto=5,maxproto=5,indirect 0 0 /dev/sdb5 /mnt/zhuzw ext3 ro,seclabel,relatime,errors=continue,acl,barrier=1,data=ordered 0 0 # cat /etc/mtab [root@zhuzw-centos6 mnt]# cat /etc/mtab /dev/mapper/vg_zhuzwcentos6-lv_root / ext4 rw 0 0 proc /proc proc rw 0 0 sysfs /sys sysfs rw 0 0 devpts /dev/pts devpts rw,gid=5,mode=620 0 0 tmpfs /dev/shm tmpfs rw,rootcontext="system_u:object_r:tmpfs_t:s0" 0 0 /dev/sda1 /boot ext4 rw 0 0 none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0 vmware-vmblock /var/run/vmblock-fuse fuse.vmware-vmblock rw,nosuid,nodev,default_permissions,allow_other 0 0 /dev/sdb5 /mnt/zhuzw ext3 ro,acl 0 0
原創文章,作者:東郭先生,如若轉載,請注明出處:http://www.www58058.com/4383