Quota和RAID

高級文件系統管理


磁盤配額 quota

限制用戶在某個分區的容量,創建數目的多少!
一般實施在家目錄 /home 下來限制用戶的占用空間

  • 限制某一群組所能使用的最大磁盤配額  (使用群組限制):

  • 限制某一用戶的最大磁盤配額  (使用用戶限制):它僅能針對整個文件系統來進行設計,無法針對某個單一的
    目錄來設計它的磁盤配額。

  • 限制某一目錄  (directory, project)  的最大磁盤配額

  • 只對一般身份使用者有效:

實現磁盤配額(/home目錄下)

在下面操作前首先把 /home 目錄下的所有文件都要先移出去(用mv 命令 這樣不會改變文件的屬性),注意此操作最好在單用戶模式下進行,不能有普通用戶使用的狀態下

1、啟用配額掛載選項()
vim /etc/fstab  usrquota,grpquota
Quota和RAID
掛載好以后把家目錄下的數據移動過來

2、創建配額數據庫
quotacheck  -cug /home
setenforce  0 關閉selinux

3、啟用數據庫
quotaon -p /home 查看是否啟用數據庫
quotaon  /home 啟用數據庫

4、配置配額項
edquota qzx
Quota和RAID

  • block 和 inode 下的表示用戶原先占有的大小,不要改動

  • soft警告大小 hard 最大數據大小
    edquota  -p qzx mage
    以qzx的配額指定 mage 的配額

setquota tom 100000 150000 0 0 /home
Quota和RAID

5、測試
quota wang
repquota  /home  查看配額的分區表
Quota和RAID

Quota  的使用限制

在  EXT  文件系統家族僅能針對整個 filesystem
核心必須支持  quota  :


RAID

提高IO能力:

  • 磁盤并行讀寫

提高耐用性;

  • 磁盤冗余來實現

級別:多塊磁盤組織在一起的工作方式有所不同

RAID實現的方式:

  • 外接式磁盤陣列:通過擴展卡提供適配能力

  • 內接式RAID:主板集成RAID控制器

    • 安裝OS前在BIOS里配置

  • Software RAID:

Linux RAID

硬盤設備常見的接口類型:

IDE
SCSI:15000rpm
SATA:6Gbps
SAS:
USB:

SCSI, IDE

RAID:Redundent Array Inexpensive Disks
   廉價冗余磁盤陣列

Independent

性能:將I/O分散至多個設備;
冗余:將同一個數據至少存儲在兩個硬盤上;

異或運算:
    1 1 0  
    0 1 1

RAID Level: 僅用于表明其組合方式的不同

raid0 --------- 條帶式
raid0:把數據塊平均分到各個硬盤上去,個存了一半,提供了擴展能力,耐用性下降,不適合于存儲單個數據,當swap,當臨時文件系統,緩存系統,安全性不大的問題
    讀、寫均有提升;
    無冗余能力;
    n塊硬盤空間提升n倍;
    至少兩塊

raid1 -------------復制每一份
raid1:數據塊在每一個硬盤上都要存一份,如果是2塊硬盤,都是一樣的
    寫性能略有下降,讀性能提升;
    有冗余能力;
    可空間:1*min disk;(取決于最小的那塊硬盤)
    至少兩塊

Quota和RAID

raid4:將三塊以上的硬盤, 組成一個raid,其中有一塊盤做校驗碼的存儲,當有數據塊存儲時,數據平均分散到前兩塊硬盤上,最后一塊存校驗碼(異或值),萬一第二塊數據壞了,可用另一個做異或運算算出來??!壞了后就會降級運行!
    單塊盤做校驗,工作壓力較大,很容易出現性能瓶頸??!
有可能有四快盤,最后一個叫熱備盤
    讀、寫性能提升;
    有冗余能力,但至多壞一塊盤;
    空間:(n-1)*disk;
    至少三塊盤;

raid5:相對于4,校驗輪流存儲,第一塊數據存第一塊盤上,第二塊數據存第二塊盤上,校驗存第三塊盤上,第三塊數據存第二快盤,第四快數據存第三塊盤,校驗存在第一塊盤中 。。。數據會出現左對稱\或右對稱/,一般都是做對稱 \
    比起Raid4而言,無專門校驗盤;
    讀、寫性能提升;
    有冗余能力,但至多一塊盤;
    空間:(n-1)*mindisk;
    至少三塊盤;

raid6:兩塊盤做校驗盤,校驗碼存兩次(很少用)
    有兩個校驗盤,至多允許同時損壞兩塊磁盤;
    讀、寫性能提升;
    有冗余能力;允許壞兩塊 
    空間:(n-2)*mindisk;
    至少四塊盤;

raid10,01:一般用raid10  兩兩一組做成raid1 后做成raid0
        至少需要四個盤;
    至多允許同時損壞半數的磁盤,但同一組鏡像中兩個磁盤不能同時損壞;
    讀、寫性能提升;
    有較好的冗余能力;
    n/2*disk;

raid50:
    至少需要6個盤;
    同組raid5不允許同時壞兩個盤,但不同組可同時各壞一個;
    讀、寫性能提升;
    有冗余能力;空間:

JBOD:將多塊硬盤串聯在一起,當一個設備使用;

實現方式:

硬件raid
軟件raid
    軟件raid不常用!
md: multi disks

mdadm:管理software RAID; 
    模式化的命令:

    -A:裝配模式
    -C:創建模式
    -F:監控模式

    管理模式:-f, -r, a

    -D:顯示指定RAID設備的詳細信息;

    -C:創建模式專用選項
        -n #: 用于創建RAID設備的磁盤設備的個數;
        -l #: 指明RAID級別;
        -a yes|no: 是否為正在創建的raid設備自動創建設備文件;
        -c Chunk_Size:指明CHUNK大??;
        -x #: 對于有冗余能力的RAID級別,此選項為其指定可用的空閑盤的個數;

        md設備的設備文件默認為/dev/md#: #僅設備編號,而與級別無關;

        設備狀態信息輸出:/proc/mdstat

        示例:示例:創建一個大小為10G的RAID5;
            創建時要用fdisk  -t 調成fd  Linux raid auto
mdadm -C /dev/md0 -a yes -n 3 -x 1 -l 5 /dev/sda{7,8,9,10}
    cat /proc/mdstat

    blkid /dev/md0 查看UUID等信息
    mdadm -D 查看更詳細的信息

    recovery 對齊
    注意:不應該使用同一個磁盤上的多個分區創建raid設備;
    標記某個為損壞 mdadm /dev/md0 -f/dev/sda7
watch -n1 'cat /proc/mdstat'    
mdadm /dev/md0 -r /dev/sda7  ---移除一塊硬盤
mdadm /dev/md0 -a /dev/sda7  ----添加sda7

管理命令的使用:

mdadm -D /dev/md#:查看指定設備的詳細信息

mdadm -a /dev/md# /dev/DEVICE: 在指定的md設備添加一個塊設備;

mdadm -r /dev/md# /dev/DEVICE: 在指定的md設備上移除一個塊設備;

mdadm -f /dev/md# /dev/DEVICE: 手動標記指定md設備上的某塊設備為faulty狀態;

停止軟RAID:
mdadm -S /dev/md#:停止指定的RAID設備;將來使用時需要“裝配(-A)”; 

重新裝配指定的軟RAID:
mdadm -A /dev/md# /dev/DEVICES

可能會讀取配置文件:/etc/mdam.conf

watch命令的用法:

watch [-n #] 'COMMAND'
交互式查看,周期性地執行指定的COMMAND;

- -n # : 指明間隔時長;

練習:

創建由三塊硬盤組成的可用空間為4G的RAID5設備留一個做備用,要求其chunk大小為256k,文件系統為ext4,開機可自動掛載至/mydata目錄,

    1、fdisk t fd
    創建4個分區,并用t選項更改每個分區的卷標為fd raid分區

    2、創建raid設備 
    mdadm -C /dev/md0 -a yes -l 5  -n 3 -x1 /dev/sdd{1,2,3,4}
    mdadm -D /dev/md0   查看是否掛載成功
    cat /proc/mdstat

    3、mkfs.ext4 /dev/md0  格式化分區
    4、vim /etc/fstab 改配置文件以下面的把磁盤掛在上
    UUID="3bcbcca9-1e9e-40fb-9d23-b7f4c6a720e9"  /mnt/raid          ext4 defaults   0       0
    用 mount -a 重讀分區表


    5、mdadm  -Ds /dev/md0 > /etc/mdadm.conf 生成配置文件
    mdadm -A /dev/md0 啟動raid

    6、測試
    mdadm /dev/md0 -f /dev/sdd1 模擬損壞
    mdadm /dev/md0 -r /dev/sdd1 刪除成員
    mdadm /dev/md0 -a /dev/sdd1 增加
    mdadm -G /dev/md0 -n 6 -a /dev/sdd4 增加成員

    7、刪除raid
    umount /mnt/raid
    mdadm -S /dev/md0 停止raid
    rm -f /etc/mdadm.conf
    vi /etc/fstab
    fdisk /dev/sda

    8、如果還是清楚不干凈
    mdadm --zero-superblock /dev/sdd1

注意:有冗余能力的RAID僅是為了避免因硬件損壞而導致業務中止,也能避免因硬件損壞而導致數據丟失;它不能取代備份的功能;

原創文章,作者:qzx,如若轉載,請注明出處:http://www.www58058.com/42228

(0)
qzxqzx
上一篇 2016-09-01
下一篇 2016-09-01

相關推薦

  • CentOS6 ELK實現

    1 簡介 我們來介紹Centos6.5基于SSL密碼認證部署ELK(Elasticsearch 1.4.4+Logstash 1.4.2+kibana3),同時為大家介紹如何集合如上組件來收集日志,本章的日志收集主要為大家介紹SYSTEM日志收集. 集中化日志收集主要應用場景是在同一個窗口臨時性或永久性鑒定分析系統,應用等各類日志,對用戶提供極大便…

    Linux干貨 2017-05-17
  • 馬哥Linux第四周作業

    1.復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其他用戶均沒有任何訪問權限 ~]# cp -r /etc/skel/ /home/user1 ~]# chmod -R g0-rwx /home/user1/ 2.編輯/etc/group文件,添加組hadoop 編輯/etc/group 寫入:hado…

    2018-01-07
  • Linux基礎知識——網絡管理基礎

    OSI七層模型與TCP/IP模型的區別 寫一個腳本,使用ping命令探測172.168.250.1-172.168.250.254之間的所有主機的在線狀態,在線的用綠色表示,不在線的使用紅色表示 #!/bin/bash for ((IP=1;IP<=254;IP++))     do  &nb…

    Linux干貨 2016-12-11
  • rsync+inotify實現數據同步——雙向傳輸

    實驗環境:<僅2臺主機之間進行數據雙向傳輸> A主機:10.1.43.102 B主機:10.1.43.103 一、數據從A推向B 配置流程 先在B主機上配置: 1.vi /etc/rsyncd.conf(用戶,目錄,模塊,虛擬用戶及密碼文件) uid = root gid = root port …

    Linux干貨 2016-10-27
  • 馬哥教育網絡班20期+第3周課程練習

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 [root@localhost ~]# who root     pts/0        2016-06-23&nb…

    Linux干貨 2016-06-29
  • 關于大型網站技術演進的思考(十五)–網站靜態化處理—前后端分離—中(7)

    原文出處: 夏天的森林    上篇里我講到了一種前后端分離方案,這套方案放到服務端開發人員面前比放在web前端開發人員面前或許得到的掌聲會更多,我想很多資深前端工程師看到這樣的技術方案可能會有種說不出來的矛盾心情,當我的工作逐漸走向越來越專業化的前端開發后,我就時常被這套前后端分離方案所困惑,最近我終于明白了這個困惑的本源在哪里…

    Linux干貨 2015-03-11

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-01 10:25

    文章對raid的各個級別工作方式整理的較為完整,通過圖片清晰的展示了各個級別的工作模式,生成環境中一般軟raid的不用,但是面試中常常需要我們能講清楚他們之間的關系。

欧美性久久久久