磁盤分區與格式化掛載,創建邏輯卷與raid組建和快照。

#fdisk -l:查看當前擁有的磁盤和新添加的磁盤名稱
#我新添加了一塊磁盤,然後重啓虛擬機,登入後用fdisk -l 查看新的磁盤名稱,發現其爲/dev/sdb 然後我使用命令fdisk /dev/sdb 進入這個新的磁盤進行分區,新的磁盤裏沒有一個分區
,所以我先在創建了3個主分區(最多隻能識別4個主分區.如果創建完4個主分區將不能創建擴>展分區,所以需要將一個主分區名額創建成擴展分區)前3個我創建成主分區,過程:先使用fdisk /dev/sdb進入新磁盤sdb的分區管理,然後使用n 進行分區類別選項使用p
#選擇創建主分區,分區號爲1,然後選擇分佈的開頭數值,2048之前要留給系統,所以我選擇>第一個分區以2048開始,然後選擇主第一個磁盤的大小我選擇了從2048之後+3G,也就是說主磁>盤1的大小爲3G然後使用p查看一下,發現1主盤的分區爲2048到2440,隨後建立組盤2,步驟與>上述一樣,不過2磁盤的起始開頭需要與主磁盤1的結尾數值相接,所以我選擇了開頭爲2441,>然後下一步選擇了+3G,主3也一樣,到第4塊分區時我選擇了e將第4個主分區創建成了擴展分區
從主3分區的結尾的數值開始我選擇了4140之後+10G
#
#軟raid
#命令:mdadm:模式化的工具
#模式:創建: -c 裝配:-A 監控:-F 管理:-f -r -a
#mdadm支持的級別:LINEAR(JBOD) RAIDO,RAID1,RAID4,RAID5,RAID5,RAID6,RAID10
#當磁盤分區後運行使用2次:partx -a /dev/sdb:來刷新出新創建的分區。
#mount命令:
#  mount [-fnrsvw] [-t vfstype] [-o options] device dir
#(1)事先存在的目錄,如果沒有則創建。
#(2)應該使用未被使用或不會被其他進程使用到的目錄
#(3)如果掛載點目錄下有文件,那麼掛載點下原有的文件將會被覆蓋


#   -r:只讀掛載:比如光盤設備
#[root@localhost ~]# umount /media/
#[root@localhost ~]# mount -r /dev/sdb3 /media/
#[root@localhost ~]# cp /etc/issue /media/
#cp: cannot create regular file `/media/issue': Read-only file system
#由此可見使用-r選項後,創建了只讀掛載,就成了只讀文件系統,在這下面是無法創建普>通文件的
#   -w:讀寫掛載:默認的就是讀寫掛載
# 系統的掛載和卸載信息都會被寫入/etc/mtab下:cat /etc/mtab
#   -n:默認情況下,設備掛載或卸載的操作會同步跟新至/etc/mtab中;-n禁止此特性:
#   -t:指明要掛載的設備上的文件系統的類型;多數情況下可省略,此時mount會通過blkid來判斷要掛載的設備的文件系統類型:
#   -L:掛載時以卷標的方式指明設備
#[root@localhost ~]# umount /media
#[root@localhost ~]# mke2fs -L MYDATA /dev/sdb3
#         mke2fs 1.41.12 (17-May-2010)
#         Filesystem label=MYDATA
#[root@localhost ~]# mount -L MYDATA /media/
#[root@localhost ~]# mount
#          /dev/sdb3 on /media type ext2 (rw)
#由此可見指明設備的卷標也可以將該設備掛載到掛載點
#   -U:指明UUID來掛載
#   -o:掛載選項
#          sync/async:同步/異步操作:
#          atime/noatime:文件或目錄在被訪問時是否跟新時間戳;
#          diratime/nodiratime:目錄在被訪問時是否跟新其訪問時間戳
#          remount:重新掛載
#          acl:支持使用facl功能:也就是支持訪問列表
#注centos默認facl是不支持的,需要我們手動啓動起來:
#[root@localhost ~]# mount /dev/sdb3 /mnt
#[root@localhost ~]# cd mnt
#-bash: cd: mnt: No such file or directory
#[root@localhost ~]# cd /mnt
#[root@localhost mnt]# ls
#lost+found
#[root@localhost mnt]# cp /etc/fstab ./
#[root@localhost mnt]# pwd
#/mnt
#[root@localhost mnt]# getfacl fstab
# file: fstab
# owner: root
# group: root
#user::rw-
#group::r--
#other::r--
#[root@localhost mnt]# useradd centos
#[root@localhost mnt]# setfacl -m u:centos:rw- fstab
#setfacl: fstab: Operation not supported
#[root@localhost mnt]# cd
#[root@localhost ~]# mount
#/dev/sda3 on / type ext4 (rw)
#proc on /proc type proc (rw)
#sysfs on /sys type sysfs (rw)
#devpts on /dev/pts type devpts (rw,gid=5,mode=620)
#tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
#/dev/sda1 on /boot type ext4 (rw)
#proc on /proc type proc (rw)
#sysfs on /sys type sysfs (rw)
#devpts on /dev/pts type devpts (rw,gid=5,mode=620)
#tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
#/dev/sda1 on /boot type ext4 (rw)
#none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
#gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)
#/dev/sdb3 on /mnt type ext2 (rw)
#由此可見默認不支持設定文件的訪問控制功能
#[root@localhost ~]# mount -o remount,acl /dev/adb3 /mnt
#[root@localhost mnt]# !setf
#setfacl -m u:centos:rw- fstab
#[root@localhost mnt]# getfacl fstab
# file: fstab
# owner: root
# group: root
#user::rw-
#user:centos:rw-
#group::r--
#mask::rw-
#other::r--
#這樣就完成了手動啓動facl,但每次掛載都手動啓動太麻煩了,下面來學一個簡單的方法
#[root@localhost ~]# tune2fs -o acl /dev/sdb3
#tune2fs 1.41.12 (17-May-2010)
#[root@localhost ~]# tune2fs -l /dev/sdb3
#然後看是否有Default mount options:    acl 有則表示啓動了
#[root@localhost ~]# mount /dev/sdb3 /mnt
#[root@localhost ~]# useradd fedora
#[root@localhost ~]# cd /mnt
#[root@localhost mnt]# setfacl -m u:fedora:rw- fstab
#[root@localhost mnt]# getfacl fstab
# file: fstab
# owner: root
# group: root
#user::rw-
#user:centos:rw-
#user:fedora:rw-
#group::r--
#mask::rw-
#other::r--
#這樣fedora就有了讀寫權限!
#  dev /nodev:此設備上是否允創建文件設備:
#  exec/noexec:是否允許運行此設備上的程序文件:
#  user/nouser:是否允許普通用戶掛載此文件系統:
#  suid/nosuid:是否允許suid和sgid特殊權限生效:
#由下面可看出來當sdb3掛載到/mnt目錄上後,複製到/mnt/目錄上的文件其實是複製到了sdb3的磁盤分區上,當把其從掛載點去掉後,/mnt掛載點下就沒有了該文件,當把磁盤從新掛
#載該目錄上後,該目錄下重新擁有了文件.
#[root@localhost ~]# mount /dev/sdb3 /mnt
#[root@localhost ~]# mount
#/dev/sda3 on / type ext4 (rw)
#proc on /proc type proc (rw)
#sysfs on /sys type sysfs (rw)
#devpts on /dev/pts type devpts (rw,gid=5,mode=620)
#tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
#/dev/sda1 on /boot type ext4 (rw)
#none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
#gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)
#/dev/sdb3 on /mnt type xfs (rw)
#[root@localhost ~]# cp /etc/fstab /mnt
#[root@localhost ~]# ls /mnt
#fstab
#[root@localhost ~]# umount /mnt
#[root@localhost ~]# ls /mnt
#[root@localhost ~]# mount /dev/sdb3 /mnt
#[root@localhost ~]# ls /mnt
#fstab
#由下面可知,想用哪個目錄當訪問入口就把它掛載在哪個目錄下
#[root@localhost ~]# umount /mnt
#[root@localhost ~]# mount /dev/sdb3 /media/
#[root@localhost ~]# ls /media/
#fstab
#一個使用技巧:可以實現將目錄綁定至另一個目錄上,作爲其臨時訪問入口:
#[root@localhost ~]# mount --bind /etc /mnt
#這樣ls /mnt 就可以看/etc 而且不妨礙ls /etc 的查看結果
#不用了就是用umount /mnt 卸載
#查看當前系統所有已經掛載的設備:
#mount
#cat /etc/mtab
#cat /proc/mounts
#掛載光盤:
#  mount -r /dev/cdrom mount_point
#  光盤設備文件:/dev/cdrom或者是/dev/dvd
#掛載U盤:
#    事先識別U盤的設備文件:
#掛載本地的迴環設備:
#  mount -o loop /PATH/TO/SOME_LOOP_FILE MOUNI_POINT
#[root@localhost ~]# lftp 172.16.0.1
#lftp 172.16.0.1:~> ls
#drwx------    2 0        0           16384 Jul 04  1980 lost+found
#drwxr-xr-x   21 0        0            4096 Apr 30 06:51 pub
#lftp 172.16.0.1:/> cd pub
#lftp 172.16.0.1:/pub> ls
#drwxr-xr-x   38 500      500         12288 Feb 28 04:03 Books
#drwxr-x---    6 500      500          4096 Apr 03  2015 Docs
#drwxr-xr-x    3 500      500          4096 May 09 05:34 ISOs
#drwxr-xr-x    2 500      500          4096 Aug 10  2011 LFS
#-rw-r--r--    1 0        0         3056537 May 20  2012 Linux Distribution Timeline.png
#drwxr-xr-x    2 500      500          4096 Dec 28  2010 Oracle
#drwxr-xr-x    2 500      500          4096 Feb 19  2011 RHCE
#lftp 172.16.0.1:/pub> cd ISOs/
#lftp 172.16.0.1:/pub/ISOs> ls
#-rwxr--r--    1 500      500      3895459840 Sep 10  2015 CentOS-6.7-x86_64-bin-DVD1.iso
-DVD1.iso
#-rwxr--r--    1 500      500      2154524672 Sep 19  2015 CentOS-6.7-x86_64-bin-DVD2.iso
#-rw-r--r--    1 0        0        7591690240 Aug 16  2015 CentOS-7-x86_64-Everything-1503-01.iso
#-rwxr--r--    1 500      500      7769948160 Jan 14 14:11 CentOS-7-x86_64-Everything-1511.iso
#-rw-r--r--    1 0        0        210894848 May 22  2014 Fedora-i386-20-20131211
#lftp 172.16.0.1:/pub/ISOs> mget ttylinux-i686-14.1.iso cirros-no_cloud-0.3.0-x86_64-disk.img
#70606848 bytes transferred in 20 seconds (3.39M/s)
#Total 2 files transferred
#lftp 172.16.0.1:/pub/ISOs> bye
#[root@localhost ~]# ls
#anaconda-ks.cfg                        ttylinux-i686-14.1.iso  峽谷酒吧
#cirros-no_cloud-0.3.0-x86_64-disk.img  wanmeishijie
#[root@localhost ~]# mount -o loop /root/ttylinux-i686-14.1.iso /media/
#[root@localhost ~]# ls /media/
#AUTHORS  boot  config  COPYING  doc  LABEL  logs  packages  qemu-i686.sh


#卸載命令:umount
#[root@localhost ~]# cd /media
#[root@localhost media]# umount /media
#umount: /media: device is busy.
#        (In some cases useful info about processes that use
#由上可知,當掛載點繁忙時,將無法被卸載
#[root@localhost ~]# lsof /mnt
#COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
#bash    4587 root  cwd    DIR   8,19     4096    2 /mnt
#由上可知lsof /mnt可以查看哪些進程或用戶在使用/mnt掛載點
#或者使用fuser -v /mnt
#將所有進程或者用戶踢出該掛載點:
#[root@localhost ~]# fuser -km /mnt
#/mnt:                 4587c
#創建分區:mkswap
# 啓用:swapon
#free 命令顯示磁盤內存使用情況,包括物理的。-m -g:表示以M和G的方式顯示
#[root@localhost ~]# mkswap /dev/sdb7
#Setting up swapspace version 1, size = 2104476 KiB
#no label, UUID=04904d01-d7c6-4aef-8f42-4066444bde45
#[root@localhost ~]# free -m
#Swap:         7455          0       7455
#[root@localhost ~]# swapon /dev/sdb7
#[root@localhost ~]# free -m
#Swap:         9511          0       9511
#[root@localhost ~]# swapoff /dev/sdb7
#[root@localhost ~]# free -m
#Swap:         7455          0       7455
#  -a:啓動定義在/etc/fstab文件中的所有swap設備;
#禁用:swapoff
#設定除根文件系統外的其它文件系統能夠開機時自動掛載:/etc/fstab文件
#定義:每行定義一個要掛載的文件系統及相關屬性:
#6個字段:
#  1:要掛載的設備;設備文件;LABEL;UUID;僞文件系統:如sysfs,pro,tmpfs等
#  2: 掛載點:swap類型的設備的掛載點爲swap:
#  3: 文件系統類型:
#  4:掛載選項:defaults:使用默認掛載選項:如果需要同時指明多個掛載選項,彼此間>以事情分隔;defaults.cal.noatime.noexec
#  5: 轉儲頻率:0:從不備份 1:每天備份 2:每隔一天備份:
#  6:自檢次序: 0:從不自檢; 1:首先自檢,通常只能是根文件系統: 2:次級自檢
#[root@localhost ~]# vim /etc/fstab
#在文件的最後一行輸入/dev/sdb3               /mydata                 ext2    defaults        0 0
#[root@localhost ~]# mkdir /mydata
#[root@localhost ~]# mount -a  注意:這個命令作用是/fstab文件中所以支持自動掛載>的進行掛載,已經掛載的不管,沒掛載的全部掛載。
#[root@localhost ~]# mount
#/dev/sdb3 on /mydata type ext2 (rw)
#以卷標來指明掛載並使其支持使用acl
#[root@localhost ~]# vim /etc/fstab
#LABEL=MYDATA            /mydata                 ext2    defaults,acl    0 0
#[root@localhost ~]# mount -a
#[root@localhost ~]# mount
#/dev/sdb3 on /mydata type ext2 (rw,acl)
#兩個命令:df和du
# df:查看掛載後個磁盤分區使用狀態
#   -l:僅顯示本地文件的相關信息
#   -h:換算單位
#   -i: 顯示iNode的使用狀態而非blocks
# du:顯示文件大小
#   -s:顯示目錄下所有文件大小之和
#比如:[root@localhost ~]# du -s /etc
#39704   /etc
#   -h: 換算單位
#軟raid
#mdadm:模式化的工具
#模式;創建:-c 裝配 -A 監控:-F 管理:-f(人爲損壞) -r(移除) -a(添加)
#支持的級別:LINEAR (JBOD)RAID0,1,4,5,6,10,
#-C
#  -n:#使用#個設備來創建此RAID
#  -l:#指定要創建的RAID級別
#  -a:(yes|no)自動創建目標RAID設備文件
#  -C:指定塊大小
#  -x: #指定空閒盤數
#  -D:顯示RAID的詳細信息
#“mdadm /dev/md0 -f /dev/sdaq"人爲損壞一個磁盤
#mdadm -C /dev/md0 -n 4 -l 5 -a yes -c 1M -x 1 /dev/sdb{5,6,7,8};表示初次創建個
raid設備,使用4塊磁盤分區創建一個raid5,然後表是自動創建設備目標RAID設備文件,然後
指明串口大小也表示塊每次存儲的時候沒塊磁盤寫個數據時塊寫多大,然後指定空閒盤的個
數這裏指的1塊,然後指明使用那些設備
#mdadm -D /dev/md0
#mkfs.ext4 /dev/dm0
#mkdir /raid
#cd /raid
#創建一個LVM,首先:fdisk /dev/sdb:進去後劃分幾個新分區,然後就新分區的類型改爲LVM型:8e,  然後如下操作:
#[root@localhost ~]# pvcreate /dev/sdb9
#  Physical volume "/dev/sdb9" successfully created
#[root@localhost ~]# pvcreate /dev/sdb10
#  Physical volume "/dev/sdb10" successfully created
#[root@localhost ~]# pvcreate /dev/sdb11
#  Physical volume "/dev/sdb11" successfully created
#上面的操作是把劃分出來的分區轉化爲物理分區
#[root@localhost ~]# pvs
#  PV         VG   Fmt  Attr PSize  PFree
#  /dev/sdb10      lvm2 ---   5.01g  5.01g
#  /dev/sdb11      lvm2 ---   3.01g  3.01g
#  /dev/sdb9       lvm2 ---  10.00g 10.00g
#[root@localhost ~]# vgcreate zheng /dev/sdb9 /dev/sdb10 /dev/sdb11
#  Volume group "zheng" successfully created
#上面操作是將物理分區劃分爲卷組:zheng
#[root@localhost ~]# lvcreate -L 4G -n zheng-lvm zheng
#  Logical volume "zheng-lvm" created.
#上面操作是將卷組的一部分劃分成邏輯分區:zheng-lvm
#[root@localhost ~]# mkfs.ext4 /dev/zheng/zheng-lvm
#[root@localhost ~]# lvs
#  LV        VG    Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
#  zheng-lvm zheng -wi-a----- 4.00g                                             #[root@localhost ~]# mkdir /data-zheng
#[root@localhost ~]# mount /dev/zheng/zheng-lvm /data-zeng
#mount: mount point /data-zeng does not exist
#[root@localhost ~]# mount /dev/zheng/zheng-lvm /data-zheng
#上面操作是將邏輯分區格式化爲EXT4文件類型,並將其掛載到了/data-zheng目錄下
#查看邏輯分區的基本信息:lvdiplay /dev/zheng/zheng-lvm /dev/zheng/pei-lvm
#擴展已經分好的邏輯分區的方法:
#[root@localhost data-zheng]# lvextend -L +1G /dev/zheng/zheng-lvm
#  Size of logical volume zheng/zheng-lvm changed from 4.00 GiB (1024 extents) to 5.00 GiB (1280 extents).
#  Logical volume zheng-lvm successfully resized
#擴展玩邏輯分區後需要告訴文件系統我已經擴展了分區,請讀取新的數據:
#[root@localhost data-zheng]# resize2fs /dev/zheng/zheng-lvm
#resize2fs 1.41.12 (17-May-2010)
#Filesystem at /dev/zheng/zheng-lvm is mounted on /data-zheng; on-line resizing r                                                                                                                                  equired
#old desc_blocks = 1, new_desc_blocks = 1
#Performing an on-line resize of /dev/zheng/zheng-lvm to 1310720 (4k) blocks.
#The filesystem on /dev/zheng/zheng-lvm is now 1310720 blocks long.
#df -lh:查看數據
#如何減邏輯分區:
#[root@localhost ~]# umount /data-zheng:先卸載掛載點
#[root@localhost ~]# e2fsck -f /dev/zheng/zheng-lvm:然後檢測一下:
#[root@localhost ~]# resize2fs /dev/zheng/zheng-lvm 1G:先把文件系統減一下
#[root@localhost ~]# lvreduce -L -1G /dev/zheng/zheng-lvm:然後在邏輯分區上減
#  WARNING: Reducing active logical volume to 4.00 GiB
#  THIS MAY DESTROY YOUR DATA (filesystem etc.)
#Do you really want to reduce zheng-lvm? [y/n]: y
#  Size of logical volume zheng/zheng-lvm changed from 5.00 GiB (1280 extents) to 4.00 GiB (1024 extents).
#  Logical volume zheng-lvm successfully resized
#創建快照;lvcreate -L 1G -s -n zhang_snap /dev/mapper/zheng-zheng--lvm
#dd命令:
#dd if=/path/from/src of=/path/to/dest
#    bs=# 複製單元
#    count=多少個
#[root@localhost ~]# cd /data-zheng
#[root@localhost data-zheng]# dd if=/dev/zero of=./zheng count=10 bs=10M
#10+0 records in
#10+0 records out
#104857600 bytes (105 MB) copied, 0.115554 s, 907 MB/s
#[root@localhost data-zheng]# ls
#lost+found  test  test1  zheng
#[root@localhost data-zheng]# ll
#total 102420
#drwx------. 2 root root     16384 May 15 09:31 lost+found
#-rw-r--r--. 1 root root         0 May 15 09:38 test
#-rw-r--r--. 1 root root         3 May 15 11:13 test1
#-rw-r--r--. 1 root root 104857600 May 15 12:25 zheng
#[root@localhost data-zheng]# ll -lh
#-rw-r--r--. 1 root root 100M May 15 12:25 zheng


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章