2018.4.2 三周第一次課
如何實現linux和Windows互傳文件,在這裏介紹一個插件,**lrzsz**
putty不支持
先使用yum按照一個插件 yum install -y lrzsz
[root@zhangzhen-01 ~]# yum install -y lrzsz
[root@zhangzhen-01 ~]# sz a.txt #r表示遠程註:sz 把linux上的文件傳送到Windows上
[root@zhangzhen-01 ~]# rz (在哪個目錄下就傳到了哪個目錄)
註:rz 把Windows上的文件傳送到linux上
用戶配置文件和密碼配置文件
/etc/passwd含義
/etc/passwd是由 “ :” 分割7個字段,每個字段的含義如下: 第1個字段為用戶名; 第2個字段為該賬號的口令,存儲的是密碼; 第3個字段為一個數字,這個數字代表用戶標識號,也稱為“uid”,在這裏,用戶標識號是從1000開始,如果我們創建一個普通用戶,該賬號的uid是從1000以後往下排序的; 第4個字段也是數字,該字段標識組標識號,稱gid,這個字段對應著/etc/group中的一條記錄,其實/etc/group和/etc/passwd相似; 第5個字段標識註釋信息; 第6個字段為普通用戶的家目錄,root的家目錄就是/root,普通用戶的家目錄則/home/username,用戶的家目錄也是可以修改的,在/etc/passwd配置文件中修改; 第7個字段為用戶的shell,用戶登錄後,要啟動一個進程們用來將用戶下達的命令傳給內核,實現一個交互的作用,這就是shell。
[root@zhangzhen-01 ~]# cat /etc/passwd #以下是創建了3個普通用戶的信息
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
…………
zhangzhen-03:x:1000:1000::/home/zhangzhen-03:/bin/bash
user1:x:1001:1001::/home/user1:/bin/bash
zhang-02:x:1002:1002::/home/zhang-02:/bin/bash
/etc/shadow含義,專門放用戶的密碼的配置文件
/etc/shadow和/etc/passwd類似,由9個字段,示例如下:
我們看一下現在默認的配置:
[root@zhangzhen-01 ~]# head -n1 /etc/shadow ; tail -n3 /etc/shadow #head -n1 表示查看文件的第一行(在這裏root的密碼是用密文編寫制成的,我們不可以反密文進行破解)。 “:”分割,如果你想同時打兩個命令的時候,用“:”進行分割。tail -n3 表示查看這個文件的最後三行。
root:$6$kN7rrKxW$9MRsf3mtd8CDdgZp25SCTdFp7ciymhS06FZe3z4oomxyxPrBMniWCktpqNlYmhmBGcWc8HSklX6b1ihRLKSfM1:17612:0:99999:7:::
zhangzhen-03:!!:17613:0:99999:7:::
user1:!!:17618:0:99999:7:::
zhang-02:!!:17619:0:99999:7:::
接下來我們給user1配置個密碼:
[root@zhangzhen-01 ~]# passwd user1 #選擇一個用戶創建密碼
passwd user1
更改用戶 user1 的密碼 。
新的 密碼:
重新輸入新的 密碼:
passwd:所有的身份驗證令牌已經成功更新。
接下來我們查看一下剛才的配置,user1生成的密碼也是以密文形式顯示出來的:
[root@zhangzhen-01 ~]# head -n1 /etc/shadow ;tail -n3 /etc/shadow
root:$6$kN7rrKxW$9MRsf3mtd8CDdgZp25SCTdFp7ciymhS06FZe3z4oomxyxPrBMniWCktpqNlYmhmBGcWc8HSklX6b1ihRLKSfM1:17612:0:99999:7:::
zhangzhen-03:!!:17613:0:99999:7:::
user1:$6$gTcyr2nl$szsXaszsSj02hc1deEHB5sPYmENFOU1I1ydpB1H8Erjgv5Zf15zqP5P/k8CZfJH/2WtGuuI5dDCYbzAHLJctK0:17623:0:99999:7:::
zhang-02:!!:17619:0:99999:7:::
我們可以看一下/etc/shadow的使用說明:
[root@zhangzhen-01 ~]# man shadow
每個字段的含義是:
· sp_namp - 指向以 null 結束的用戶名的指針
· sp_pwdp - 指向 null 結束的密碼的指針
· sp_lstchg - 最近更改密碼的日期(日期計算方法是從1970年1月1日開始的天數)
· sp_min - days before which password may not be changed
· sp_max - days after which password must be changed
· sp_warn - days before password is to expire that user is warned of pending password expiration
· sp_inact - days after password expires that account is considered inactive and disabled
· sp_expire - days since Jan 1, 1970 when account will be disabled
· sp_flag - reserved for future use
這裏作為一個了解就好。
用戶組管理
配置文件在 /etc/group, 我們可以用 cat /etc/group查看一下全部配置信息。
用戶組密碼配置文件在 /etc/gshadow下,在這裏我們可以看見每個組的配置密碼
命令格式:grouadd 後面跟想創建的組名,例:grouadd grp
創建制定Gid組格式:groupadd [-g GID] grp1,例:groupadd -g 1008 grp1
每一個配置文件下,都會有一個 “-什麽什麽的文件”,這個是系統自動生成的備份,如下:
[root@zhangzhen-01 ~]# ls /etc/shadow #在這裏我們可以看見,每一個配置文件後面系統會幫我們自動生成一個配置文件
shadow shadow-
[root@zhangzhen-01 ~]# ls /etc/gshadow
gshadow gshadow-
[root@zhangzhen-01 ~]# ls /etc/passwd
passwd passwd-
[root@zhangzhen-01 ~]# ls /etc/group
group group-
如何創建一個用戶組(不指定GID,系統默認從1000起開始創建)
[root@zhangzhen-01 ~]# groupadd grp1
[root@zhangzhen-01 ~]# tail -n1 /etc/group
grp1:x:1004:
如何創建一個用戶組且制定GID,測試GID為1008.。
[root@zhangzhen-01 ~]# groupadd -g 1008 grp2
[root@zhangzhen-01 ~]# !tail
tail -n1 /etc/group
grp2:x:1008:
如何刪除一個組? groudel 後面跟組名
[root@zhangzhen-01 ~]# tail -n5 /etc/group
user1:x:1001:
zhang-02:x:1002:
grp:x:1003:
grp1:x:1004:
grp2:x:1008:
[root@zhangzhen-01 ~]# groupdel grp
註:這裏groudel是刪除,如果組面有用戶,則刪除不了。
用戶管理
命令介紹:
useradd 增加用戶 格式 : useradd 後面跟想創建的用戶名
還有一種給創建的用戶,增加組名及家目錄什麽的;
格式如下:useradd [-u UID] [-g GID] [-d HOME] [-M] [-s] ,
-u 表示自定義UID
-g 表示使新增用戶屬於已經存在的某個組,後面可以跟組的id,也可以跟組名
-d 表示自定義目錄的家目錄
-M 表示不建立家目錄
-s 表示自定義shell
下面先來新建一個用戶user5,示例命令如下:(在這裏,useradd不加任何選項,直接跟用戶名,可以創建一個跟用戶名同名的組)
[root@zhangzhen-01 ~]# useradd user5
[root@zhangzhen-01 ~]# tail -n1 /etc/passwd
user5:x:1003:1003::/home/user5:/bin/bash
現在自定義一個uid,gid和所屬組用戶的示例:
[root@zhangzhen-01 ~]# useradd -u1006 -g 1008 -M -s /sbin/nologin user6 # -u1006表示自定義的UID且沒有的情況下,
-g 1008表示自定義組且有的情況下,如果組沒有的話,會提示報錯,
-M不創建用戶的家目錄,但是在/etc/passwd下可以看見這個字段,如果使用ls /home/user6查看的話,目錄是不存在的。
這裏nologin表示不可登錄。
[root@zhangzhen-01 ~]# tail -n3 /etc/passwd
zhang-02:x:1002:1002::/home/zhang-02:/bin/bash
user5:x:1003:1003::/home/user5:/bin/bash
user6:x:1006:1008::/home/user6:/sbin/nologin
刪除賬戶的命令userdel
格式:userdel [-r] username
其中-r選項的作用是,當刪除用戶時,一並刪除用戶的家目錄。
不刪除家目錄的同時去刪除用戶test3,保留家目錄:
[root@zhangzhen-01 ~]# ls /home/test3/
[root@zhangzhen-01 ~]# ls -ld /home/test3/
drwx------. 2 test3 grp3 62 4月 3 00:25 /home/test3/
[root@zhangzhen-01 ~]# userdel test3
[root@zhangzhen-01 ~]# ls -ld /home/test3/
drwx------. 2 1011 grp3 62 4月 3 00:25 /home/test3/註:只刪除用戶,並沒有刪除這個用戶下的家目錄。
我們再來試試刪除test2試試,使用-r命令,並刪除用戶下的家目錄
[root@zhangzhen-01 ~]# ls -ld /home/test2/
drwx------. 2 test2 test2 62 4月 3 00:24 /home/test2/
[root@zhangzhen-01 ~]# userdel -r test2
[root@zhangzhen-01 ~]# !ls
ls -ld /home/test2/
ls: 無法訪問/home/test2/: 沒有那個文件或目錄註:在這裏添加-r選項,刪除用戶並且刪除用戶下的家目錄。
此時已經刪除成功,test2的家目錄已經不存在了
2018.4.2 三周第一次課