Linux下設備的基本管理

1、系統中磁盤的管理 node

1.本地存儲設備的識別shell

   fdisk -l            ## 真實存在的設備(帶*爲啓動分區) vim

   cat /proc/partition ## 系統識別的設備 bash

   blkid               ## 系統可以使用的設備 app

   df                  ## 系統正在掛載的設備 ide

2.設備的掛載和卸載(設備的管理要用超級用戶) 測試

 【1】設備名稱 :ui

   /dev/xdx    ## /dev/hd0  /dev/hd1  /dev/sda  /dev/sdb1  /dev/sda1(第一塊硬盤下的第一個分區)
this

  注意:hd是並口硬盤 sd爲串口硬盤(普遍使用)加密

   /dev/sr0    ## 光驅

   /dev/mapper/* ##虛擬設別

 【2】設備的掛載(默認是讀寫掛載)

    mount 設備 掛載點          ## 掛載到固定的地方

    mount /dev/sdb1   /mnt    ## 掛載sdb1到mnt

    umount /mnt | /dev/sdb1   ## 卸載

    mount -o ro /dev/sdb1 /mnt/ ## 只讀掛載

    mount 查看掛載的信息

    mount -o remount, rw /dev/sdb1 | /mnt/   ## 從新掛載以讀寫的方式

    eject 彈出光驅

 【3】解決設備正忙狀況(一個shell在mnt目錄下,另外一個shell進行卸載時出現這個問題)

  [root@foundation77 mnt]# umount /dev/sdb1

  umount: /mnt: target is busy.   ## 由程序在使用此設備

  (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))

  解決方法一:fuser -kvm /mnt umount /mnt

  解決方法二:lsof /mnt

  [root@localhost mnt]# lsof /mnt/

  COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
  bash    1188 root  cwd    DIR 253,17        6  128 /mnt
  lsof    3364 root  cwd    DIR 253,17        6  128 /mnt
  lsof    3365 root  cwd    DIR 253,17        6  128 /mnt 

 

   kill  -9   PID    ## 結束進程的佔用

   umount /mnt

3.磁盤分區

 【1】硬盤0磁道1扇區的512個字節中記錄的信息以下:

      512 = 446 + 64 + 2

      446字節爲 mbr(主引導記錄)   64字節爲mpt(主分區表)   2字節爲55aa(硬盤的有效標示)

      硬盤分區表:64字節 一個分區佔16個字節 一塊硬盤上最多能夠劃分4個主分區

 

 【2】分區步驟:

  fdisk -l       ## 查看設備

  fdisk /dev/vdb ## 對/dev/vdb進行操做

 

  Command (m for help): m      ## 查看命令操做信息

  Command action a toggle

  a bootable flag

  b edit bsd disklabel

  c toggle the dos compatibility flag

  d delete a partition      ## 刪除

  g create a new empty GPT partition table

  G create an IRIX (SGI) partition table 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  ##修改分區id

  u change display/entry units v verify the partition table

  w write table to disk and exit   ## 保存分區表信息到硬盤

  x extra functionality (experts only)

 

  Command (m for help): n    ## 創建一個主分區

  Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p   ## 主分區

  Partition number (1-4, default 1):             ## id默認

  First sector (2048-20971519, default 2048):    ## 分區起始位置

  Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +500M    ##分區大小

  Partition 1 of type Linux and of size 500 MiB is set

 

  Command (m for help): p           ## 查看本身分好的空間

  Disk /dev/vdb: 10.7 GB, 10737418240 bytes, 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x0362f010 Device Boot Start End Blocks Id System /dev/vdb1 2048 1026047 512000 83 Linux Command (m for help): wq

  注意:當系統有三個主分區的時候,把剩下的全部空間劃分爲擴展分區 ( 進行邏輯分區新建的時候,不提醒劃分的類型,只能是邏輯分區)。

  partprobe 同步分區表

  cat /proc/partitions

 

 問題1:對剛分區的設備vdb1進行掛載的時候,會提示如下信息

  [root@server ~]# mount /dev/vdb1 /mnt/

  mount: /dev/vdb1 is write-protected, mounting read-only

  mount: unknown filesystem type '(null)'

 注意:軟件和硬件是不能夠進行掛載的,只能在硬件上面安裝軟件filesystem (也叫格式化)

 解決方法:給設備安裝文件系統

  1)系統文件有如下幾種

     ext3   rhel5及以前的版本 最多支持32TB的文件系統和2t文件,實際2tb文件系統,單個文件系統不超過16GB

     ext4   rhel6 1EB 16TB

     xfs    rhel7 18EB 9eb 7G/s(吞吐極限) 4G/s(寫入速度) (系統中默認是xfs)

 2)格式化成 xfs

     mkdf.xfs /dev/vdb1   ## 格式化設備

 

     /dev/vdb1 mount /dev/vdb1 /mnt    ## 把設備掛載在/mnt上(臨時的)

     

     實現永久掛載:/etc/fstab(在硬盤檢測以後,內核啓動以後會進行加載)

     vim   /etc/fstab 

     /dev/vdb1   /mnt xfs defaults 0 0   ## 參數分別爲:設備  掛載點  文件系統  掛載參數  是否備份  是否檢測

  3)測試

     mount -a        ## 讀取文件裏的掛載策略,是沒生效的掛載策略當即生效 df 進行查看

     blkid           ## 用blkid命令進行查看格式化後設備的連接狀況

 

 

 2、swap分區的管理爲

 1)創建:首先建立一個分區/dev/vdb2,修改類型爲82!

    partprobe           ##同步分區表

    mkswap  /dev/vdb2   ##將/dev/vdb2格式化爲swap格式

    swapon  -a   /dev/vdb2   

    swapon -s           ##顯示swap分區的信息

    vim  /etc/fstab ---> /dev/vdb2  swap  swap  defaults 0 0        ##設置swap分區,使其開機自動分區   

    swapon -a          

 2)swap分區的刪除

   vim /etc/fstab   --->刪除裏面SWP分區設置的那行

   swapoff /dev/vdb6  

   swapon -s

 

3、fatab文件寫錯後的解決方法 

步驟:

  1)先輸入超級用戶密碼

  2)vim /etc/fstab

  3)註釋錯誤的那行

  4)再輸入密碼

  5)reboot

4、用戶額度的設定 

  •   配額是針對與分區。用戶能夠使用的最大空間。(對於目錄的權限,先掛設備再改權限)
  •   臨時設定步驟 :

  1)mount -o usrquota /dev/vdb2 /public   ## 把/dec/vdb2設備進行設定並掛載在/public上

  2) chmod 777 /public

  3) edquote -u student  ## 對student 用戶進行大小限定(其中blocks和inodes不能更改,並設定文件大小爲20M)

 

  

 

  •   永久設定步驟: vim /etc/fstab

    /dev/vdb2 /public xfs defaults,usrquota 0 0

  •   用設定配額的用戶進行測試:在student用戶下
   

    超過存儲大小以後結果:

   

5、設備加密

   意思說,首先對設備進行加密,而後對加密設備進行操做。

 1)對設備進行LUKS加密

  [root@localhost mnt]# blkid

  /dev/vda1: UUID="9bf6b9f7-92ad-441b-848e-0257cbb883d1" TYPE="xfs"

  /dev/vdb1: UUID="3134455c-5d33-4fbd-826d-a4123f78ba9d" TYPE="xfs"

  /dev/vdb2: UUID="08d6ec47-da72-4e16-a901-86029b6e4772" TYPE="xfs"

  /dev/vdb3: UUID="3cb27ea9-985c-45fa-9d37-a8ec2d5a58ae" TYPE="xfs"

  /dev/vdb5: UUID="3053bd27-8051-4f9f-b8e5-b2740185bc13" TYPE="xfs"

  [root@localhost mnt]# cryptsetup luksFormat /dev/vdb5   ## 對/dev/vdb5進行加密

  WARNING! ======== This will overwrite data on /dev/vdb5 irrevocably.

  Are you sure? (Type uppercase yes): YES

  Enter passphrase:

  Error reading passphrase from terminal. Enter passphrase: Verify passphrase:

  2)要存文件時,對其解密

  [root@localhost mnt]# cryptsetup open /dev/vdb5 westos  ## 解密,解密設備爲westos

  Enter passphrase for /dev/vdb5:

  [root@localhost mnt]# ll /dev/mapper/westos    ## mapper虛擬設備,westos爲/etc/vdb5解密後的形態

  lrwxrwxrwx. 1 root root 7 Aug 3 10:49 /dev/mapper/westos -> ../dm-0

  3)關閉westos設備,就不能夠該設備進行操做

  [root@localhost mnt]# cryptsetup close westos

  [root@localhost mnt]# ll /dev/mapper/westos

  ls: cannot access /dev/mapper/westos: No such file or directory

  4)若想要進行操做,使用open 進行解密

  [root@localhost mnt]# cryptsetup open /dev/vdb5 westos

  注意:加密、解密要在無掛載的條件的下。

  示例: cryptsetup luksFormat /dev/vdb5

        cryptsetup open /dev/vdb5 westos

        mkfs.xfs /dev/mapper/westos

        mount /dev/mapper/westos /mnt/

        touch /mnt/file{1..2}

        umount /mnt/

        cryptsetup close westos

        cryptsetup open /dev/vdb5 west1

        mount /dev/mapper/west1 /mnt/

相關文章
相關標籤/搜索