1. 程式人生 > >Linux學習筆記第八周五次課(3月30日)

Linux學習筆記第八周五次課(3月30日)

df du fdisk groupadd mke2fs

復習(今日無答疑,筆記可以不寫)


三、用戶和組管理


3.1 用戶配置文件和密碼配置文件5

/etc/passwd用戶賬號密碼文件,配置文件;第一列,用戶名;第二列,密碼全用X表示;第三列,UID;第四列,GID;第五列,註釋;第六列,用戶家目錄;第七列,用戶shell目錄;

/etc/shadow專門存用戶密碼;第一列,用戶名;第二列,加密的密碼;第三列,密碼從1970年1月1日開始最後修改的天數;第四列,密碼要多少天才能修改第五列,密碼要多少天必須修改;第六列,密碼到期前的警告天數;第七列,密碼已到期,再過幾天賬號失效;第八列,賬號生命周期,距離1970年1月1日;第九列,保留字段;

賬號aming設置密碼,命令為#passwd aming


3.2 用戶組管理

/etc/group用戶組配置文件,與用戶密碼配置文件類似;分別為用戶組名,密碼,GID等;

/etc/gshadow用戶組密碼文件,與用戶密碼文件類似;

用戶及用戶組相關備份文件,文件名加-,為備份文件,使用時去掉-即可;

創建組grp1,命令為#groupadd grp1 ;

創建組grp1並指定GID,命令為#groupadd -g 1005 grp1 ;

查看用戶組配置文件最後一行即新添加組信息,命令為#tail -n1 /etc/group ;

刪除組grp1,前提是組沒有用戶,命令為#groupdel grp1 ;


3.3 用戶管理

創建用戶,命令為#useradd user2 ;

創建用戶,並指定UID和GID,命令為#useradd -u 1004 -g 1005 user2 ;

創建用戶,並指定UID和GID,家目錄,用戶shell目錄,命令為#useradd -u 1004 -g 1005 -d /home/aming111 -s /sbin/nologin user2 ;

創建用戶,不創建家目錄,命令為#useradd -M user2 ;

查看新創建用戶密碼信息,命令為#tail -n2 /etc/passwd ;

刪除用戶,命令為#userdel user2 ,沒有刪出用戶家目錄,再刪除家目錄,#rm -rf /home/user2 ;

刪除用戶,並刪出用戶家目錄,命令為#userdel -r user2 ;

useradd也可以用adduser,功能一樣;


四、Linux磁盤管理


4.1 df命令

df,report file system disk space usage匯報文件系統磁盤空間使用情況;

df命令格式:df [選項]

df -a:all 顯示所有文件系統的磁盤使用情況,包括0塊(block)的文件系統。

df -h:human readable以容易理解的格式輸出文件系統大小,例如124KB、345MB、46GB。

df -i:inodes 顯示i節點使用情況。

df -m:以MB為單位顯示文件系統使用情況;

df -t:type 顯示各指定類型的文件系統的磁盤空間使用情況。

df -x:exclude type 列出不是某一指定類型文件系統的磁盤空間使用情況。

df -T:print type 顯示文件系統類型。

df 以512字節為單位

df –k 以1024字節為單位.

查看內存使用情況,命令為#free ;


4.2 du命令

du,查看文件目錄大小,文件大小;

查看目錄或文件大小常用命令為#du -sh /root;

-s 指目錄;-h,human人類可視化更容易理解的情況顯示;

查看目錄下的所有文件或目錄大小,命令為#du /root;


4.3/4.4 磁盤分區

列出磁盤分區情況#fdisk -l

對新硬盤進行分區,格式化,命令為#fdisk /dev/sdb ;

常用選項,

n,new新建分區;

p,print打印列出來;

w,write寫入保存並退出;

q,quit不保存退出;

d,delete刪除分區;

想要什麽操作,輸入對應字母即可;例如:新建一個擴展分區,如圖命令;

技術分享圖片技術分享圖片

解釋說明:fdisk最多支持2T磁盤,主分區最多4個,擴展分區可以分邏輯分區;主分區數+擴展分區數<=4;邏輯分區,必須要連續;可以對主分區和邏輯分區進行格式化,擴展分區不能直接格式化,擴展分區僅僅是個殼子,裏面包含1個或多個邏輯分區;


4.5/4.6 磁盤格式化

CentOS7以XFS作為默認的文件系統;

mke2fs,mkfs.ext2,mkfs.ext3,mkfs.ext4,mkfs.xfs都是格式化命令;

mke2fs -t ext4 ==mkfs.ext4;其他命令類似,mke2fs暫不支持xfs類型;

mke2fs命令選項如下:

-t指定文件系統類型type;

-b指定塊大小block;

-m指定分區預留的大小百分比;

-i指定多少個字節對應一個inode;

分區格式化,指定文件系統類型ext4,塊大小2048B,預留大小0.1%,命令為#mke2fs -t ext4 -b 2048 -m 0.1 /dev/sdb1 ;

分區格式化為xfs格式,命令為#mkfs.xfs /dev/sdb ;


4.7/4.8 磁盤掛載

查看分區文件系統類型,命令為#blkid /dev/sdb ;

格式化磁盤分區,需掛載才可訪問;掛載點是一個目錄;

掛載命令為#mount 分區 掛載點 ;

例如命令#mount /dev/sdb /mnt/ ;

查看掛載情況,命令為#df -h ;

mount命令常用選項:

defaults默認,rw可讀可寫,suid設置uid,dev設備有關,exec可執行,auto自動掛載,nouser不能普通用戶掛載,async不實時同步,sync實時同步更新;

-o指定掛載的分區有哪些特性,如ro,sync,remount;

/etc/fstab掛載的分區配置文件;查看編輯#vi /etc/fstab ;

技術分享圖片技術分享圖片

具體解釋,可以#man fstab ;

查看UUID,命令為#blkid /dev/sdb ;

卸載磁盤,後跟磁盤分區,命令為#umount /dev/sdb ;

卸載磁盤,後跟掛載點,命令為#umount -l /mnt/ ;


4.9 手動增加swap空間

增加虛擬磁盤的思路為:建立swapfile----格式化為swap格式----啟用該虛擬磁盤;

建立swapfile,命令為#dd if=/dev/zero of=/tmp/newdisk bs=1M count=1024 ;

dd磁盤讀寫命令,if指定源,/dev/zero可以源源不斷地提供“0”,of指定目標文件,bs定義塊大小,count定義塊的數量,目標文件大小=bs * count;

查看文件大小,命令為#du -sh /tmp/newdisk ;

格式化為swap格式,命令為#mkswap -f /tmp/newdisk ;

掛載swap分區,命令為#swapon /tmp/newdisk ;

查看內存使用情況,命令為#free -m ;

free查看內存使用情況命令,m表示以MB為單位顯示;

卸載swap分區,命令為#swapoff /tmp/newdisk ;


4.10/4.11/4.12 lvm講解

LVM是邏輯盤卷管理(LogicalVolumeManager)的簡稱,它是Linux環境下對磁盤分區進行管理的一種機制,LVM是建立在硬盤和 分區之上的一個邏輯層,來提高磁盤分區管理的靈活性。通過LVM系統管理員可以輕松管理磁盤分區,如:將若幹個磁盤分區連接為一個整塊的卷組 (volumegroup),形成一個存儲池。管理員可以在卷組上隨意創建邏輯卷組(logicalvolumes),並進一步在邏輯卷組上創建文件系 統。管理員通過LVM可以方便的調整存儲卷組的大小,並且可以對磁盤存儲按照組的方式進行命名、管理和分配,例如按照使用用途進行定義:“development”和“sales”,而不是使用物理磁盤名“sda”和“sdb”。而且當系統添加了新的磁盤,通過LVM管理員就不必將磁盤的 文件移動到新的磁盤上以充分利用新的存儲空間,而是直接擴展文件系統跨越磁盤即可。

技術分享圖片技術分享圖片

普通的磁盤分區管理方式在邏輯分區劃分好之後就無法改變其大小,當一個邏輯分區存放不下某個文件時,這個文件因為受上層文件系統的限制,也不能跨越多個分區來存放,所以也不能同時放到別的磁盤上。而遇到出現某個分區空間耗盡時,解決的方法通常是使用符號鏈接,或者使用調整分區大小的工具,但這只是暫時解決辦法,沒有從根本上解決問題。隨著Linux的邏輯卷管理功能的出現,這些問題都迎刃而解,用戶在無需停機的情況下可以方便地調整各個分區大小。

(1)準備磁盤分區

fdisk /dev/sdb

n創建三個新分區,分別1G

t改變分區類型為8e,命令為t,輸入Hex代碼:8e;輸入p顯示分區信息,Id為8e,System為linux lvm,改變成功;

(2)準備物理卷

安裝pvcreate命令,#yum install -y lvm

如果知道pvcreate命令,不知道安裝包名,可以用命令搜索#yum provides "/*/pvcreate",之後再安裝;

pvcreate /dev/sdb1,若提示無/dev/sdb1文件,輸入命令自動生成#partprobe

pvcreate /dev/sdb2

pvcreate /dev/sdb3

pvdisplay或pvs列出當前的物理卷

pvremove /dev/sdb3刪除物理卷

(3)創建卷組

vgcreate vg1 /dev/sdb1 /dev/sdb2

vgdisplay或vgs列出當前的卷組

vgremove刪除卷組

(4)創建邏輯卷

lvcreate -L 100M -n lv1 vg1

-L大小,-n名稱,vg1卷組中劃分;

(5)格式化邏輯卷

mkfs.ext4 /dev/vg1/lv1

掛載#mount /dev/vg1/lv1 /mnt/

(6)擴容邏輯卷ext

先卸載umount /mnt/

再擴容lvresize -L 200 /dev/vg1/lv1

查看df -h

檢查磁盤錯誤(ext),#e2fsck -f /dev/vg1/lv1

更新邏輯卷信息(ext),不更新無法掛載 ,#resize2fs /dev/vg1/lv1

xfs文件系統需要執行,#xfs_growfs /dev/vg1/lv1

擴容邏輯卷xfs

不需卸載umount /mnt/

再擴容lvresize -L 300 /dev/vg1/lv1

xfs文件系統需要執行,#xfs_growfs /dev/vg1/lv1

(7)縮減邏輯卷(xfs不支持)

先卸載umount /mnt/

檢查磁盤錯誤(ext),#e2fsck -f /dev/vg1/lv1

更新邏輯卷信息(ext),不更新無法掛載 ,#resize2fs /dev/vg1/lv1 100M

重新設置邏輯卷大小,#lvresize -L 100M /dev/vg1/lv1

查看邏輯卷大小lvdisplay或lvs;

掛載mount /dev/vg1/lv1 /mnt/

(8)擴展卷組

fdisk /dev/sdb 新增/dev/sdb3(邏輯分區8e) 1G

pvcreate /dev/sdb3

vgextend vg1 /dev/sdb3

lvresize -L 100M /dev/vg1/lv1重新設置卷大小


4.13 磁盤故障小案例

問題:由於掛載配置文件錯誤,導致開機錯誤提示

解決:按要求輸入管理員密碼,再修改配置文件vi /etc/fstab,刪除或修改錯誤行;


五、VIM


5.1 vim介紹

vim是vi的升級版本,

vim是帶有顏色高亮顯示,

安裝#yum install -y vim-enhanced;

vim有一般模式、編輯模式、命令模式;

一般模式,dd刪除一行,復制粘貼,gg光標移到文件頭,等等;

編輯模式,按i,a,等等;

命令模式,搜索,:wq保存退出,等等;


5.2 vim顏色顯示和移動光標

相同的文件,在不同的目錄,可能會導致顏色不存在;

復制文件到其他目錄,#cp /etc/passwd /tmp/

編輯查看文件,#vim /tmp/passwd

vim配置文件,#vim /etc/vimrc,了解即可;


5.3 vim一般模式下移動光標

技術分享圖片技術分享圖片


5.4 vim一般模式下復制、剪切和粘貼

技術分享圖片技術分享圖片

ctrl+r 還原下一步操作 ;


5.5 進入編輯模式

進入編輯模式,按i(光標處插入),I(移到行首插入),o(光標行下一行插入),O(光標行上一行插入 ),a(光標處後一個字符插入),A(移到行尾插入);

技術分享圖片技術分享圖片


5.6 vim命令模式

技術分享圖片技術分享圖片

shift+n向上查找;

指定範圍內替換,命令為:n1,n2s/word1/word2/g,s表示替換;g表示全部,global全局;$表示所有,整個文檔;

若替換字符中含/字符,就要在/前,加\脫意;或者以#分隔關鍵詞;

:nohl不高亮顯示字符串no high light;

:x保存退出,不會更改mtime;

:wq保存退出,會更改mtime;


5.7 vim實踐

技術分享圖片技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片


Linux學習筆記第八周五次課(3月30日)