Linux磁盤管理常用三個命令為df、du、fdisk。
創(chuàng)新互聯(lián)主營肥鄉(xiāng)網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,APP應(yīng)用開發(fā),肥鄉(xiāng)h5微信平臺小程序開發(fā)搭建,肥鄉(xiāng)網(wǎng)站營銷推廣歡迎肥鄉(xiāng)等地區(qū)企業(yè)咨詢
df,全稱:disk full,列出文件系統(tǒng)的整體磁盤使用量
du,全稱:disk used,檢查磁盤空間使用量
fdisk,用于磁盤分區(qū)。
1、df命令
檢查文件系統(tǒng)的磁盤空間占用情況,可以利用該命令獲取磁盤被占用了多少空間,目前還剩下多少空間等信息。
語法:df[-ahikHTm][目錄或文件名]
參數(shù):
-a 列出所有文件系統(tǒng),包括系統(tǒng)特有的/proc等文件系統(tǒng);
-k 以KBytes的容量顯示各文件系統(tǒng);
-m 以MBytes的容量顯示各文件系統(tǒng);
-h 以較易閱讀的格式自行顯示,比如:GBytes、MBytes、KBytes;
-H 以M=1000K取代M=1024K的進位方式;
-T 顯示文件系統(tǒng)類型;
-i 不用磁盤容量,以inode的數(shù)量來顯示。
2、du命令
也是查看使用空間的,但是與df命令不同的是,Linux du命令是對文件和目錄磁盤使用的空間進行查看,和df命令有一定的區(qū)別。
語法:du[-ahskm]文件或目錄名稱
參數(shù):
-a 列出所有的文件與目錄容量;
-h 以較易閱讀的格式顯示;
-s 列出總量而已,而不列出每個各別的目錄占用容量;
-S 不包括子目錄下的統(tǒng)計,與-s存在差別;
-k 以KBytes列出容量顯示;
-m 以MBytes列出容量顯示。
3、fdisk命令
fdisk是Linux的磁盤分區(qū)表操作工具。
語法:fdisk[-l]裝置名稱
參數(shù):
-l 輸出后面接的裝置所有的分區(qū)內(nèi)容。若僅有fdisk -l時,則系統(tǒng)將會把整個系統(tǒng)內(nèi)能夠搜尋到的裝置的分區(qū)均列出來。
一、 su 、sudo 、限制root遠程登陸
su- username
帶用戶環(huán)境切換用戶
su- -c"touch /tmp/123.txt"user1
以user1用戶創(chuàng)建/tmp/123.txt 文件
沒有家目錄的用戶可以用模板新建家目錄
mkdir-p /home/user4chownuser4:user4? /home/user4cp /etc/skel/.bash*/home/user4chown-R user4:user4 /home/user4/
普通用戶臨時授權(quán)root用戶權(quán)限去執(zhí)行一條命令
visudo
可以查看sudo配置文件
在命令前加入NOPASSWD: 執(zhí)行sudo時就不需要再輸入用戶的密碼
例子:
User_Alias USER=chen1,chen2
Cmnd_Alias SU=/usr/bin/su
USER ALL=(ALL) NOPASSWD:SU
禁止root用戶遠程登陸
vi/etc/ssh/sshd_configPermitRootLoginno//修改此處systemctl restart sshd.service
二、df命令、du命令、磁盤分區(qū)
df-h
自動適應(yīng)文件大小的單位,查看磁盤使用情況
free
可以查看swap的使用情況
df-i
查看各個分區(qū)inode的使用情況
有的時候明明磁盤的內(nèi)存還有剩余,但是卻無法寫入新文件,這時候就可能是inode用完了。
du-sh
自動適應(yīng)單位顯示文件或文件夾大小
du不加后綴的時候和du -l 一樣,顯示文件夾下文件的大小
du-lh
自動適應(yīng)單位顯示文件夾下文件的大小
fdisk-l
列出linux 的磁盤信息
fdisk/dev/sdb
m幫助,直接按p是查看分區(qū)情況 n新建分區(qū) p建立主分區(qū) e擴展分區(qū) d刪除分區(qū),起始扇區(qū)默認2048就可以啦,last 扇區(qū) +2G 就是將分區(qū)一的大小設(shè)置為2G;輸錯命令用ctrl +u清除
BLOCKS是分區(qū)的大小,system是分區(qū)的類型,主分區(qū)和邏輯分區(qū)都是linux,擴展分區(qū)是extended
主分區(qū)的分區(qū)號可以為空,而邏輯分區(qū)的分區(qū)號必須連續(xù);邏輯分區(qū)以sdb5開始,分區(qū)之后輸入w可以保存分區(qū),q則不保存操作直接退出
三、磁盤格式化、磁盤掛載、手動增加swap空間
1.磁盤格式化
cat/etc/filesystems? //查看系統(tǒng)支持的文件格式,centos7默認xfs,centos6默認ext4
mount//查看系統(tǒng)的文件格式
mke2fs
-t指定文件格式 ext4 、ext3
-b指定塊大小,文件都比較大時,塊可以大一點,比如視頻、高清圖片
比較小時可以將塊設(shè)置小一點,加快讀取速度
-m指定給root用戶預(yù)留的空間大小,1就是1%,0.1就是0.1%
-i指定多少字節(jié)占一個inode號
如果不指定-t文件格式,則默認為ext2格式
mkfs.ext4/dev/sdb1? //將分區(qū)格式化為ext4格式mkfs.xfs? -f/dev/sdb1? //將分區(qū)格式化為xfs格式\
分區(qū)只有掛載了才可以使用mount查詢到,沒有掛載的分區(qū)可以用
blkid/dev/sdb1
mkfs.ext4 == mke2fs -t ext4
mkfs.ext4與mke2fs支持的選項相同
xfs格式只能用mkfs.xfs 創(chuàng)建
2.磁盤掛載
mount/dev/sdb? /mnt///將 /dev/sdb掛載到mnt下 mount UUID="2d8e7749-f2f7-4de5-b1b9-b6bf758d2f37"/mnt///這里的uuid是用blkid /dev/sdb 查到的
卸載磁盤
umount/dev/sdb
如果當前目錄在/dev/sdb下則需要退出當前分區(qū)
也可以直接用
umount-l/dev/sdb? umount-l/mnt/
mount
man mount 可以查看mount的具體用法
/defaults 可以查找默認用法
找到下面這一行
Use default options: rw, suid, dev, exec, auto, nouser, and async.
rw讀寫權(quán)限
suid可以設(shè)置suid權(quán)限
dev,系統(tǒng)默認不用管
exec可執(zhí)行
auto自動掛載
nouser是否允許普通用戶掛載,默認不允許
async 不實時同步內(nèi)存的東西到磁盤(減輕磁盤壓力)
mount -o remount,rw/dev/sdb? //重新掛載
vi/etc/fstab? //系統(tǒng)開機都掛載哪些文件
四、手動增加虛擬內(nèi)存
ddif=/dev/zeroof=/tmp/newdisk? bs=1M count=100//創(chuàng)建虛擬磁盤
if指定源,一般寫/dev/zero,它是unix系統(tǒng)特有的一個文件,可以源源不斷的提供'0',of指定目標文件,bs指定塊大小,count指定塊的數(shù)量
mkswap -f /tmp/newdisk//格式化為swapswapon? /tmp/newdisk//將新建的swap加載free-m//顯示內(nèi)存使用大小,-m指定單位為mswapoff? /tmp/newdisk//將虛擬內(nèi)存卸載
五、lvm
lvm創(chuàng)建過程
創(chuàng)建物理卷創(chuàng)建卷組創(chuàng)建邏輯分區(qū)格式化為需要的格式掛載分區(qū)
具體介紹日志
fdisk /dev/sdb
t 選擇分區(qū),8e //將分區(qū)轉(zhuǎn)換為lvm格式 ,w退出
創(chuàng)建物理卷
1.
yumprovides"/*/pvcreate"
通配查詢pvcreate命令的軟件包名
yum install -y lvm2//安裝lvm
partprobe //生成分區(qū)文件
2.
pvcreate/dev/sdb1pvcreate? /dev/sdb2pvcreate? /dev/sdb3
pvdisplay查看已經(jīng)創(chuàng)建的物理卷
創(chuàng)建卷組
1.pvs
可以直觀的查看物理卷有哪些
2.創(chuàng)建卷組,將sdb1和sdb2設(shè)置為一個卷組
vgcreatevg1 /dev/sdb1 /dev/sdb2
vgdisplay可以查看卷組信息
創(chuàng)建邏輯分區(qū)
lvcreate-L100M-n lv1 vg1
從vg1卷組中創(chuàng)建名字為lv1大小100M的邏輯分區(qū)
-L指定分區(qū)大小
-n指定分區(qū)名字
將分區(qū)格式化為ext4格式
mkfs.ext4 /dev/vg1/lv1
然后將文件掛載
mount/dev/vg1/lv1 /mnt
ext4擴容邏輯分區(qū)
umount/mnt///卸載分區(qū)lvresize -L200M/dev/vg1/lv1? //擴展分區(qū)e2fsck -f/dev/vg1/lv1? //檢查磁盤是否有錯誤resize2fs/dev/vg1/lv1? //更新邏輯分區(qū)大小,不然重新掛載會無法識別擴容的大小
ext4縮容
umount/mnt///卸載分區(qū)e2fsck -f/dev/vg1/lv1? ? //檢查磁盤是否有錯誤resize2fs/dev/vg1/lv1 100M? //將分區(qū)縮小為100Mlvresize -L100M/dev/vg1/lv1? ? //重新設(shè)置卷大小
xfs擴容
1.擴容與縮容不會更改分區(qū)中的文件,xfs只可以擴容不可以縮容;
2.如果磁盤已經(jīng)掛載要先umount 卸載
然后格式化為xfs.
mkfs.xfs-f/dev/vg1/lv1
XFS的擴容不需要先卸載,直接擴容即可
lvresize -L200M /dev/vg1/lv1? xfs_growfs/dev/vg1/lv1? //更新分區(qū)大小
關(guān)于擴容縮容的總結(jié)
ext4可以擴容和縮容而且需要卸載后操作,xfs只可以擴容,不需要卸載
ext4擴容
lvresize -L 100M /dev/vg1/lv1e2fsck-f/dev/vg1/lv1resize2fs /dev/vg1/lv1
縮容
e2fsck-f/dev/vg1/lv1resize2fs /dev/vg1/lv1 100Mlvresize -L 100M /dev/vg1/lv1
xfs擴容
lvresize-L100M/dev/vg1/lv1xfs_growfs /dev/vg1/lv1
在分區(qū)空間用完之后就需要擴容卷組,然后再擴容
卷組擴容
vgextendvg1 /dev/sdb3
將 /dev/sdb3加入到vg1卷組
不同于windows,linux查看硬盤剩余多少空間,是通過命令查看。
Linux磁盤管理常用三個命令為df、du和fdisk。
df:列出文件系統(tǒng)的整體磁盤使用量
du:檢查磁盤空間使用量
fdisk:用于磁盤分區(qū)
常用的命令有:
查看系統(tǒng)整體空間剩余情況,將系統(tǒng)內(nèi)所有的 文件系統(tǒng) 列出來!
在命令行中輸入 du -sh * 可以查看每個文件夾的大小,使用該方法可以快速定位 大文件 所存在的位置,
如下面,usr,var 直接可以定義為大文件!
選項與參數(shù):
選項與參數(shù):
1,兩者區(qū)別
du,disk usage,是通過搜索文件來計算每個文件的大小然后累加,du能看到的文件只是一些當前存在
的,沒有被刪除的。他計算的大小就是當前他認為存在的所有文件大小的累加和。
df,disk free,通過文件系統(tǒng)來快速獲取空間大小的信息,當我們刪除一個文件的時候,這個文件不
是馬上就在文件系統(tǒng)當中消失了,而是暫時消失了,當所有程序都不用時,才會根據(jù)OS的規(guī)則釋放掉已
經(jīng)刪除的文件, df記錄的是通過文件系統(tǒng)獲取到的文件的大小,他比du強的地方就是能夠看到已經(jīng)刪除
的文件,而且計算大小的時候,把這一部分的空間也加上了,更精確了。
當文件系統(tǒng)也確定刪除了該文件后,這時候du與df就一致了。
2,du查看目錄大小,df查看磁盤使用情況。
我常使用的命令(必要時,sudo使用root權(quán)限),
1).查看某個目錄的大?。篸u -hs /home/master/documents
查看目錄下所有目錄的大小并按大小降序排列:sudo du -sm /etc/* | sort -nr | less
2).查看磁盤使用情況(文件系統(tǒng)的使用情況):sudo df -h
df --block-size=GB
-h是使輸出結(jié)果更易于人類閱讀;du -s只展示目錄的使用總量(不分別展示各個子目錄情況),-m是以
MB為單位展示目錄的大?。ó斎?k/-g就是KB/GB了)。
Linux磁盤管理常用三個命令為df、du、fdisk。
df,全稱:disk full,列出文件系統(tǒng)的整體磁盤使用量
du,全稱:disk used,檢查磁盤空間使用量
fdisk,用于磁盤分區(qū)。
接下來我們看看詳細的內(nèi)容介紹:
df命令參數(shù)功能:檢查文件系統(tǒng)的磁盤空間占用情況,可以利用該命令獲取磁盤被占用了多少空間,目前還剩下多少空間等信息。
語法:df [-ahikHTm] [目錄或文件名]
參數(shù):
-a:列出所有文件系統(tǒng),包括系統(tǒng)特有的/proc等文件系統(tǒng);
-k:以KBytes的容量顯示各文件系統(tǒng);
-m:以MBytes的容量顯示各文件系統(tǒng);
-h:以較易閱讀的格式自行顯示,比如:GBytes、MBytes、KBytes;
-H:以M=1000K取代M=1024K的進位方式;
-T:顯示文件系統(tǒng)類型;
-i:不用磁盤容量,以inode的數(shù)量來顯示。
du命令也是查看使用空間的,但是與df命令不同的是,Linux du命令是對文件和目錄磁盤使用的空間進行查看,還是和df命令有一些區(qū)別的。
語法:du[-ahskm]文件或目錄名稱
參數(shù):
-a:列出所有的文件與目錄容量;
-h:以較易閱讀的格式顯示;
-s:列出總量而已,而不列出每個各別的目錄占用容量;
-S:不包括子目錄下的統(tǒng)計,與-s存在差別;
-k:以KBytes列出容量顯示;
-m:以MBytes列出容量顯示。
fdisk命令fdisk是Linux的磁盤分區(qū)表操作工具。
語法:fdisk[-l]裝置名稱
參數(shù):
-l:輸出后面接的裝置所有的分區(qū)內(nèi)容。若僅有fdisk -l時,則系統(tǒng)將會把整個系統(tǒng)內(nèi)能夠搜尋到的裝置的分區(qū)均列出來。