Linux學習筆記第八周五次課(3月30日)
三、用戶和組管理
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日)