天天看點

Linux磁盤及檔案系統管理進階

目錄

<code>1.</code><code>mkfs介紹</code>

<code>2</code><code>.檔案系統的挂載使用(mount)</code>

<code>3</code><code>.練習</code>

<code>4.</code><code>fuser使用</code>

1.mkfs介紹:mkfs.ext2 /dev/sdb1

[root@localhost ~]# mkfs.ext2 /dev/sdb1

mke2fs 1.42.9 (28-Dec-2013)

檔案系統标簽=

OS type: Linux

塊大小=4096 (log=2)

分塊大小=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

655360 inodes, 2621440 blocks

131072 blocks (5.00%) reserved for the super user //為了當分區沾滿時,為管理者留白間去挪資料,實作管理

第一個資料塊=0

Maximum filesystem blocks=2684354560

80 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks:  //超級塊備份的位置

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

Allocating group tables: 完成                            

正在寫入inode表: 完成                            

Writing superblocks and filesystem accounting information: 完成

2.檔案系統的挂載使用

檔案系統的使用:

首先要“挂載”:mount指令和umount指令

根檔案系統之外的其他fs要想能夠被通路,都必須通過“關聯”至根fs上的某個目錄來實作,此關聯操作即為“挂載”

挂載點:用于作為另一個檔案系統的通路入口

(1)實作存在

(2)應該使用未被或不會被其他程序使用的目錄

(3)挂載點下原有的檔案将會隐藏

   mount [-lhV]

   mount -a [-fFnrsvw] [-t vfstype] [-O optlist]

   mount [-fnrsvw] [-o option[,option]...]  device|dir

   mount [-fnrsvw] [-t vfstype] [-o options] device dir

   umount device|dir

//正在被程序通路到的挂載點無法被解除安裝

-l 是預設選項,list

-n -notmab //不寫入/etc/mtab ,挂載點記錄檔案

//預設裝置挂載或解除安裝的操作,會同步更新/etc/mtab

-r read-only //光驅隻能被隻讀挂載

-w read-write //預設

-v verbose

-t 指定fs類型可省略,mount将會通過blkid指令來判斷類型

/etc/filesystems

-L label //以卷标方式挂載

mount -L MYDATA /tmp/test

-U UUID //挂載時以UUID的方式指明裝置

-a //挂載所有 /etc/fstab

不帶參數,顯示所有的已經挂載的fs

cgroup 是什麼

-o options挂載屬性

注:有些選項隻能用在/etc/fstab檔案中

async 異步寫入

sync  同步寫入

-atime/noatime 當一個檔案或目錄被通路的時候立即更新時間戳

//關閉較好

diratime/nodiratime 目錄在被通路時是否更新時間戳

remount 重新挂載

-o acl 支援使用facl功能

//預設挂載是不支援facl的

tune2fs -o acl /dev/sdb1  //對裝置啟用acl,再次mount的時候即使不指定-o,acl也可以使用acl

tune2fs -l /dev/sdb1 //檢視選項

mount /dev/sdb1 /mnt

mount //會顯示,沒有acl

但是setfacl -m u:wolf:rw-- 仍然可以使用

ro 隻讀

rw 讀寫

dev/nodev //此裝置上是否允許建立裝置檔案

exec/noexec //是否允許運作此裝置上的程式檔案

//防止非法程式,自動運作

auto/noatuto //是否允許mount -a自動挂載

user/nouser //是否允許普通使用者挂載此fs

defaults:預設// 

rw,suid,dev,exec,auto,nouser,async,relatime

suid:是否允許程式檔案上的suid和sgid權限生效,nosuid禁止生效

relatime:是否一局mtime和ctime來修改atime

一個使用技巧:

可以實作将目錄綁定在另一個目錄上,作為其臨時通路入口

mount --bind  /etc  /mnt

檢視目前系統已經挂載的裝置

mount

cat /etc/fstab

cat /etc/mtab

cat /proc/mounts

挂載CD光牒裝置

mount -r /dev/cdrom /mnt -o iso9660

/dev/sr0就是cdrom

挂載U盤:實作識别U盤的裝置檔案

強制解除安裝:裝置

lsof /mnt //顯示占用目錄的程序

yum install psmisc 

www.rpmfind.net

rpm -ql psmisc

fuser -km /mnt  //删除該程序即可

fuser -v MOUNT_POINT //檢視誰在占用

挂載本地回環裝置:

mount -o loop /PATH/TO/SOME_LOOP_FILE

img,iso檔案

交換分區:

建立交換分區:mkswap

swapon [OPTION] [DEVICE]

-a //定義在/etc/fstab檔案中的所有的swap裝置

swapoff

設定除根fs意外的其他fs開機自動挂載,使用/etc/fstab檔案

開機的時候運作了一個腳本,該腳本會調用fstab

/dev/mapper/centos-swap  swap   swap    defaults     0 0

1.挂載裝置:

裝置檔案,LABEL,UUID,僞fs:sysfs proc tmpfs

2.挂載點: swap類型的挂載點為swap

3.fs_type:

4.挂載選項:

defaults,使用預設的挂載選項

多個使用,分隔:defaults,acl,noatime

5.轉儲頻率

0 從不備份

1 每天備份一次

2 每隔一天備份一次

6.自檢次序

0 不自檢

1 首先自檢,通常是根fs可用1

2 次級自檢

...

LABEL=MYDATA   /mydata  ext4 defaults 0 0

UUID=.........   //也可以

df和du

df指令

-h 人性化顯示

-l 隻顯示本地fs,否則會顯示所有的包括網絡fs

-i inode使用情況而非blocks

du 顯示檔案大小

-s summary總共大小

-h human-readable

3.練習:

1.建立一個10G的分區,并格式化為ext4的fs

    (1)block大小為2048,預留白間為2%,卷标為MYDATA

    mkfs.ext4 -b 2048 -m 2 -L MYDATA /dev/sdb1

    (2)挂載/mydata目錄,要求挂載時禁止程式自動運作,且不更新檔案的通路時間戳

     mount /dev/sdb1 /tmp/test -o noexec,noatime

     或者使用tune2fs

2.建立一個1G的swap分區,開機自動挂載

vim /etc/fstab 

4.fuser的使用詳解:

-c|-m 用于posix支援

-k 殺掉通路檔案的程序

-i 殺掉程序之前詢問使用者

-u 顯示使用者

-V 顯示詳細資訊

顯示的内容:

本文轉自MT_IT51CTO部落格,原文連結:http://blog.51cto.com/hmtk520/1942910,如需轉載請自行聯系原作者

繼續閱讀