linux磁碟管理

来源:http://www.cnblogs.com/andreking/archive/2016/08/21/5793026.html
-Advertisement-
Play Games

摘自:http://www.apelearn.com/bbs/forum.php?mod=viewthread&tid=7621&extra=page%3D1%26filter%3Dtypeid%26typeid%3D36 1. 查看磁碟或者目錄的容量 df 查看磁碟各分區使用情況 不加參數以k為單 ...


摘自:http://www.apelearn.com/bbs/forum.php?mod=viewthread&tid=7621&extra=page%3D1%26filter%3Dtypeid%26typeid%3D36

1. 查看磁碟或者目錄的容量
df 查看磁碟各分區使用情況
不加參數以k為單位
df -i inode數,df -h 以G或者T或者M
df -m 以M單位顯示

du 查看目錄或者文件的容量
不加參數 以k為單位顯示
-s 列出總和 -a 列出所有文件和目錄
-k 以k為單位 -m 以M為單位
-h 最合適的單位 最常用組合 -sh
擴展 ls -lh 看到的大小和du相比

2. 磁碟的分區和格式化
fdisk -l 查看磁碟和分區,大於2T用GPT
fdisk 設備名 m 列出常用命令,常用的有‘p’, ‘n’, ‘d’, ‘w’, ‘q’.
mke2fs, mkfs.ext2, mkfs.ext3, mkfs.ext4
-t 文件系統格式 ext3 ext4
-b 指定每個數據塊大小,目前支持1024, 2048 及4096
-L 分區標簽
格式化時預設blocks (5.00%) reserved for the super user //給超級用戶預留的一部分空間,用來作為特殊用途
-m 可以更改這個比例,如 mke2fs -m 0.1 /dev/sdb1 //意思是,只預留出0.1%

3. 掛載、卸載磁碟分區
mount 不加任何選項和參數,查看已經掛載情況
mount 格式 mount -t type /dev/sda5 /mnt
mount -t 指定掛載分區格式,如 -t ext3
umount /dev/sda5 或者 umount /mnt
umount -l 強制卸載
mount -o 後面跟各種選項,比如remount,ro,noatime等,具體選項如下:

“async/sync” : async表示和磁碟和記憶體不同步,系統每隔一段時間把記憶體數據寫入磁碟中,而sync則會時時同步記憶體和磁碟中數據;
“auto/noauto” : 開機自動掛載/不自動掛載;
“default” : 按照大多數永久文件系統的預設值設置掛載定義,它包含了rw, suid, dev, exec, auto, nouser, async
“ro” : 按只讀許可權掛載 ;
“rw” : 按可讀可寫許可權掛載 ;

“exec/noexec” : 允許/不允許可執行文件執行,但千萬不要把根分區掛載為noexec,那就無法使用系統了,連mount命令都無法使用了,這時只有重新做系統了;
“user/nouser” : 允許/不允許root外的其他用戶掛載分區,為了安全考慮,請用nouser ;
“suid/nosuid” : 允許/不允許分區有suid屬性,一般設置nosuid ;
“usrquota” : 啟動使用者磁碟配額模式,磁碟配額相關內容在後續章節會做介紹;
“grquota” : 啟動群組磁碟配額模式;

特殊用法:mount -o loop 1.iso /mnt #掛載鏡像文件
mount --bind /dir1 /dir2 #掛載目錄

mount -a 會根據/etc/fstab 掛載所有分區
UUID是如何來的,使用命令 blkid
blkid命令 後可以不跟設備名,列出所有
mount UUID=“……” /mnt
使用UUID的好處是,多塊磁碟,如果在伺服器上換了插槽位置,設備名會變,但UUID是唯一的

4. 配置文件 /etc/fstab
第一列就是分區的標識,可以LABEL,也可以UUID,當然也可以 (/dev/sda1);
第二列是掛載點;
第三列是分區的格式;
第四列則是mount的一些掛載參數,一般情況下,直接寫defaults即可;
第五列的數字表示是否被dump備份,是的話這裡就是1,否則就是0;第六列是開機時是否自檢磁碟。1,2都表示檢測,0表示不檢測,
/ 分區必須設為1,而且整個fstab中只允許出現一個1,1比2優先順序高,所以先檢測1,然後再檢測2,如果有多個分區需要開機檢測那麼都設置成2吧,
1檢測完了後會同時去檢測2。

lvm配置 (參考內容,大家自行實踐)
LVM是Linux環境中對磁碟分區進行管理的一種機制,是建立在硬碟和分區之上、文件系統之下的一個邏輯層,可提高磁碟分區管理的靈活性。支持動態擴充磁碟空間。
首先從空的硬碟sdb上創建兩個分區sdb1 1G, sdb2 2G。
1)創建邏輯捲
pvcreate /dev/sdb1 /dev/sdb2 //創建物理捲
pvdisplay //可以列出已經創建的物理捲
vgcreate vgdata /dev/sdb1 /dev/sdb2 //創建捲組 vgdata ,並將剛纔創建好的兩個物理捲加入該捲組
vgdisplay //可以列出已經建好的捲組
#預設PE大小為4MB,PE是捲組的最小存儲單元.可以通過 –s參數修改大小。

lvcreate -L 500M -n lvdata1 vgdata //分割500M給新的邏輯捲lvdata1
lvdisplay //列出當前的邏輯捲

mkfs.ext4 /dev/vgdata/lvdata1 //格式化邏輯捲
mount /dev/vgdata/lvdata1 /aming //掛載邏輯捲

2)擴展邏輯捲
邏輯捲lvdata1不夠用了,我們如何給他增加空間呢?
lvextend –L +500M /dev/vgdata/lvdata1 //給lvdata1增加500M空間。
resize2fs /dev/vgdata/lvdata1 //同步文件系統

3)擴展卷組
當捲組不夠用的情況下,我們也是可以擴展卷組的。我們再創建一個新的分區叫做/dev/sdb3.
vgextend vgdata /dev/sdb3 //把sdb3加入到捲組vgdata中

4)減少邏輯捲大小
卸載 --> e2fsck 檢測剩餘空間 --> resize2fs 同步文件系統 --> 使用lvreduce命令將邏輯捲減少
註意:文件系統大小和邏輯捲大小一定要保持一致才行。如果邏輯捲大於文件系統,由於部分區域未格式化成文件系統會造成空間的浪費。

umount /data1
e2fsck -f /dev/mapper/vgdata-lvdata1
resize2fs /dev/mapper/vgdata-lvdata1 700M
lvreduce -L 700M /dev/vgdata/lvdata1
mount /dev/vgdata/lvdata1 /data1

5) 當磁碟或分區損壞時,如何轉移數據
pvmove 轉移空間數據 --> vgreduce命令將即將壞的磁碟或者分區從捲組vgdata裡面移除除去 --> pvremove命令將即將壞的磁碟或者分區從系統中刪除掉 --> 拆除或修複磁碟
pvmove /dev/sdb1
vgreduce vgdata /dev/sdb1
pvremove /dev/sdb1

6) 刪除整個邏輯捲
umount卸載邏輯捲 --> 修改配置文件/etc/fstab(若是之前更改過) --> lvremove 刪除邏輯捲lvdata1 --> vgremove 刪除捲組vgdata --> pvremove 將物理捲轉化成普通分區
umount /dev/vgdata/lvdata1
lvremove /dev/vgdata/lvdata1
vgremove vgdata
pvremove /dev/sdb2
pvremove /dev/sdb3


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 這篇介紹使用Logminer時遇到ORA-01336: specified dictionary file cannot be opened錯誤的各種場景 1:dictionary_location參數的路徑最後多了一個/符號。 SQL> show parameter utl_file_dir; N... ...
  • 1、什麼是JDBC?有什麼作用? Java Data Base Connectivity Java資料庫連接協議 是一種用於執行SQL語句的Java API,可以為多種關係資料庫提供統一訪問。 他提供了一種基準,據此可以構建更高級的工具和介面,使開發人員能夠編寫資料庫應用程式 有了JDBC, 向各種 ...
  • 摘自:http://www.360doc.com/content/11/0218/15/4171006_94080041.shtml 配置yum保留已經下載的rpm包,供以後升級或重新安裝時使用。修改/etc/yum.conf[main]cachedir=/home/soft1/yumcacheke ...
  • 摘自:http://www.apelearn.com/bbs/forum.php?mod=viewthread&tid=7677&extra=page%3D1%26filter%3Dtypeid%26typeid%3D36 1. rpm工具rpm Redhat Package Manager, 設計 ...
  • 摘自:http://www.apelearn.com/bbs/forum.php?mod=viewthread&tid=7660&extra=page%3D1%26filter%3Dtypeid%26typeid%3D36 1. gzip工具語法: gzip [-d#] filename 其中#為1 ...
  • Linux系統的基本原則: 1.由目的單一的小程式組成;組合小程式完成複雜任務; 2.一切皆文件; 3.儘量避免捕獲用戶介面;(儘量不與用戶交互) 4.配置文件保存為純文本格式。 shell:人機交互介面 GUI介面:圖形用戶界面介面 X-Window Gnome:C KDE:C++ XFace C ...
  • 摘自:http://www.apelearn.com/bbs/thread-7146-1-1.html ":x" 和 ":wq" 的區別如下:(1) :wq 強制性寫入文件並退出(存檔並退出 write and quite)。即使文件沒有被修改也強制寫入,並更新文件的修改時間。(2) :x 寫入文件 ...
  • static在C中主要有兩個作用: 1、修飾變數 (局部變數、全局變數 都存在記憶體的靜態區) 靜態全局變數: 作用域僅限於變數被定義的文件中,其中文件即使用extern聲明也無法使用它。 靜態局部變數: 2、修飾函數 函數前加static使得函數成為靜態函數。 函數的作用域僅限於本文件(所以又稱內部 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...