linux和windows互傳文件、用戶配置文件和密碼配置文件、用戶組管理、用戶管理

linux和windows互傳文件

一、lrzsz包

lrzsz,只能用xshell或者securecrt,才支持,putty不支持。linux

安裝lrzsz軟件包。shell

[root@colinlinux ~]# yum install -y lrzsz

二、使用方法

2.一、sz命令

功    能:用來把linux上的文件傳輸到Windows上面。windows

語    法:sz [文件名]centos

說    明:sz只能傳輸文件,不能傳輸文件夾。文件名能夠是帶路徑的,只要是一個文件便可。安全

 

彈出傳送完畢對話框說明栓送完成;bash

sz命令只能傳文件不能傳文件夾,下面是傳送文件夾失敗代碼;ssh

[root@colinlinux test1]# mkdir dir_t
[root@colinlinux test1]# ls
a.txt  b.txt  dir_t
[root@colinlinux test1]# sz dir_t/
sz: is not a file: dir_t/
                          
Can't open any requested files.                                                [root@colinlinux test1]# 
**01000000039a32^C
[root@colinlinux test1]#

2.二、rz命令

功    能:用來接收Windows上面的文件。post

語    法:rz測試

說    明:不能指定接收到linux的哪一個目錄,默認接收到當前目錄。只能接收文件,不能接收文件夾。ui

 

一、rz命令使用案例

直接輸入rz,而後回車,在彈出對話框中選擇要接收到當前文件夾的文件。

 

接收完成點擊關閉,再回到查看當前目錄發現剛剛接收的文件在當前目錄了已經;

二、測試不能指定接收目錄

不能指定接收目錄,默認接收到當前目錄

[root@colinlinux dir_t]# rz /tmp/test1/
rz: garbage on commandline
Try `rz --help' for more information.
[root@colinlinux dir_t]#

 

                                                                                                                                                                

 

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

一、/etc/passwd密碼配置文件

功    能:/etc/passwd文件是用戶的密碼配置文件。

補 充:每建立一個用戶都會在最後面增長一行新加用戶的相關配置信息。

每一個用戶有一行,內容被冒號:分割成7段,7段內容以下表;

1

2

3

4

5

6

7

用戶名

x

(舊版本密碼位置)

uid

gid

註釋說明

(通常記錄用戶屬性,無實際意義)

用戶家目錄

用戶的shell

[root@colinlinux ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x:997:995::/var/lib/chrony:/sbin/nologin
colin:x:1000:1000::/home/colin:/bin/bash

 

(1)、用戶名

        如第一行的root,就是用戶名。用戶名能夠是大小寫字母、數字、減號(減號不能出如今首位)、點及下劃線,其餘字符是不合法的。雖然用戶名中能夠出現點,和減號,可是不建議使用,尤爲是在首位的時候,容易形成混淆。

 

(2)、x

        早期的Unix和舊版本的Linux此處存放用戶密碼,可是爲了安全如今所有用x填充,並把密碼放到/etc/shadow中。

 

(3)、uid

            這個數字表明用戶標識號,也叫作uid。系統個識別用戶身份就是經過這個數字來的,0就是root,若是把一個用戶(加入是test)的uid改成0,系統就會認爲root和test是同一個帳戶。

            centOS7中0-999由系統保留,0是超級用戶(root)的標識號,新添加的用戶uid從1000開始;

(4)、gid

            表示用戶所屬組的標識號,也叫gid。這個地段對應着/etc/group中的一條記錄,其實/etc/group和/etc/passwd基本上相似。

(5)、註釋說明

            註釋說明,該字段沒有實際意義,通常記錄用戶一些信息屬性,例如姓名、電話等等,通常沒什麼實際意義。

(6)、用戶家目錄,能夠修改。

            說明用戶的家目錄是哪裏。

            root用戶的家目錄是/root/

            普通用戶(以colin爲例)的家目錄是/home/colin/,可是用戶的家目錄是能夠自定義的。好比,創建一個普通的用戶test1,要想讓test1的家目錄在/data目錄下,只要修改/etc/passwd文件中對應該用戶行的這個字段爲/data目錄就能夠了。

(7)、用戶的shell

 

            用戶登陸後要啓動一個進程,用來給內核下達指令,輸入命令的窗口就是個shell。linux的shell有不少,如sh、csh、ksh、tcsh、bash等,centos的shell是bash。

            /sbin/nologin表示不容許該賬號登陸。默認是/bin/bash

            若是創建一個賬號不讓他登陸,那就能夠把這個字段改成/sbin/nologin

二、etc/shadow用戶密碼文件

功 能:專門用來存放用戶的密碼。

補 充:內容和用戶一 一對應,每一行對應一個用戶,次序和/etc/passwd中的用戶次序保持相同。

每一個用戶有一行,內容被冒號:分割成9段;

 

1

2

3

4

5

6

7

8

9

用戶名

用戶密碼

上一次更改

密碼的日期

過多少天后

才能修改密碼

密碼多少

天后到期

密碼到期前

的警告期限

賬號失

效期限

賬號的

生命週期

保留

 

[root@colinlinux ~]# cat /etc/shadow
root:$6$l.bqkql0cZmLP58q$bSU4fqmy9t1GfF5BfHGu3ju7rzaEs1zJrnp/igpiiYYcT4BwhfY4p9/NERTVrsWUMpzD.DyFYv2PY8P/b7qbi1::0:99999:7:::
bin:*:17110:0:99999:7:::
daemon:*:17110:0:99999:7:::
adm:*:17110:0:99999:7:::
lp:*:17110:0:99999:7:::
sync:*:17110:0:99999:7:::
shutdown:*:17110:0:99999:7:::
halt:*:17110:0:99999:7:::
mail:*:17110:0:99999:7:::
operator:*:17110:0:99999:7:::
games:*:17110:0:99999:7:::
ftp:*:17110:0:99999:7:::
nobody:*:17110:0:99999:7:::
systemd-bus-proxy:!!:17457::::::
systemd-network:!!:17457::::::
dbus:!!:17457::::::
polkitd:!!:17457::::::
tss:!!:17457::::::
postfix:!!:17457::::::
sshd:!!:17457::::::
chrony:!!:17457::::::
colin:!!:17464:0:99999:7:::
[root@colinlinux ~]#

在shadow所在目錄系統會自動備份一個帶-的文件,用於備份。備份有些區別,有可能新的操做沒有被更新進去還。

 

[root@colinlinux ~]# ls /etc/passwd*
/etc/passwd  /etc/passwd-
[root@colinlinux ~]# ls /etc/shadow*
/etc/shadow  /etc/shadow-

(1)、用戶名

            和/etc/passwd一 一 對應。

(2)、用戶密碼

            這個纔是改賬號的真正密碼。密碼是加密過的。文件權限是000,可是root用戶能夠訪問和更改。

[root@colinlinux ~]# ls -l /etc/shadow
----------. 1 root root 665 10月 26 07:01 /etc/shadow

 

用# head -n 1 /etc/shadow; tail -n 2 /etc/shadow(一行使用多個命令,中間用分號隔開便可)查看/etc/shadow中root用戶和colin用戶的密碼一段,兩個是不同的。

# passwd [用戶名](更改用戶密碼)

# passwd colin更改用戶colin的密碼爲和root用戶的密碼同樣。

再查看/etc/shadow中的密碼段,結果兩個用戶的密碼段加密的字符串任然是不同的。說明這個加密的字符串是隨機的。

(3)、上次更改密碼的日期到UTC時間的第一天的天數。

起始日期是UTC時間的1970年1月1日,計算時候注意閏年有366天。

例如:若是上次更改密碼的日期是2012年1月1日,則這個日期是365*(2012-1970)+(2012-1970)/4+1=15341。

(4)、再過多少天才能更改密碼。

設定這個值後,密碼在設定的天數內不能更改。默認是0,表示不作限制。

(5)、密碼多少天后失效。

這裏設置的天數表示密碼在設置天數後會失效,也就是在設置天數內必須更改,對普通用戶來講就意味着在設定天數內必須把密碼更改了,不然密碼就不能用了,帳戶也就登陸不上了。

默認是99999,表示永遠不須要更改。

(6)、密碼到期前的警告期限。

若是設置成7,那表示距離密碼過時還有7天時候會發出提醒,提醒用戶密碼還有7天到期。

圖中colin用戶的到期前提早警告期限是7,可是由於失效天數是99999永不失效,因此colin永遠接不到提醒了。

(7)、賬號失效期限。

這個值在密碼已經到期後,用於設置到期後再過幾天賬號會失效。

若是設置爲3,而且密碼到期前用戶沒有修改密碼,那到期後再過3天,這個帳戶就失效被鎖定了。

(8)、賬號失效日期。

日期的記錄方式和第三段相同,按照距離UTC起始時間1970年1月1日計算,在這麼多天內可使用。過時做廢。默認空表示永不做廢。

(9)、保留,無實際意義。

 

                                                                                                                                                                

 

用戶組管理

一、/etc/group用戶組配置文件

功 能:用戶組配置文件。

補 充:基本和/etc/passwd內的內用對應。

默認建立用戶會建立一個和用戶名同樣的組;

二、/etc/gshadow用戶組密碼配置文件

功 能:用戶組密碼配置文件。

補 充:和/etc/shadow類似。基本不用。

三、groupadd命令

功能:增長一個用戶組。

語法:groupadd [-g gid ] [用戶組名]

3.一、添加一個用戶組,gid默認

# groupadd group1

增長用戶組,用戶組編號gid默認。

[root@colinlinux ~]# groupadd group1
[root@colinlinux ~]# tail -n 4 /etc/group
chrony:x:995:
colin:x:1000:
slocate:x:21:
group1:x:1001:
[root@colinlinux ~]#

3.二、建立用戶組,指定gid

# groupadd -g 1005 group2

建立gid爲1005的用戶組group2,centos7默認0-999給系統預留,其餘人不能使用。

[root@colinlinux ~]# groupadd -g 1005 group2
[root@colinlinux ~]# tail -n 4 /etc/group
colin:x:1000:
slocate:x:21:
group1:x:1001:
group2:x:1005:
[root@colinlinux ~]#

3.三、刪除用戶組

# groupdel group1

用來刪除用戶組;#groupdel group1,刪除group1用戶組;

[root@colinlinux ~]# tail -n 4 /etc/group
colin:x:1000:
slocate:x:21:
group1:x:1001:
group2:x:1005:
[root@colinlinux ~]# groupdel group1
[root@colinlinux ~]# tail -n 4 /etc/group
chrony:x:995:
colin:x:1000:
slocate:x:21:
group2:x:1005:
[root@colinlinux ~]#

刪除用戶組的時候,用戶組必須是空的才能刪除用戶組,若是用戶組裏有用戶,則沒法刪除,須要先刪空用戶才能刪除用戶組。

[root@colinlinux ~]# groupdel colin
groupdel:不能移除用戶「colin」的主組
[root@colinlinux ~]#

 

                                                                                                                                                             

 

用戶管理

一、/etc/passwd

用戶管理的主要針對的是/etc/passwd文件,添加和刪除用戶主要改動的也是這裏;

二、useradd添加用戶

功能:添加一個用戶。

語法:groupadd [-u UID ] [-g GID ] [-d HOME(用戶家目錄)] [-s xxx(用戶的shell)] [-M] [用戶名]

補充:

參數:

        -u:UID,設置用戶的UID;

        -g:GID,設置用戶的GID;

        -d:家目錄,設置用戶的家目錄;

        -s:用戶SHELL,設置用戶使用的shell;

        -M:不建立家目錄;

 

2.一、簡單添加一個用戶

# useradd user2

簡單建立用戶,默認UID會自動增長;

 

[root@colinlinux ~]# tail -n 4 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x:997:995::/var/lib/chrony:/sbin/nologin
colin:x:1000:1000::/home/colin:/bin/bash
[root@colinlinux ~]# useradd user2
[root@colinlinux ~]# tail -n 4 /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x:997:995::/var/lib/chrony:/sbin/nologin
colin:x:1000:1000::/home/colin:/bin/bash
user2:x:1001:1001::/home/user2:/bin/bash
[root@colinlinux ~]#

2.二、添加用戶時指定UID和GID

# useradd -u 1004 -g group2 user3

建立用戶時指定用戶UID和GID(即指定用戶組)

 

[root@colinlinux ~]# tail -n 4 /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x:997:995::/var/lib/chrony:/sbin/nologin
colin:x:1000:1000::/home/colin:/bin/bash
user2:x:1001:1001::/home/user2:/bin/bash
[root@colinlinux ~]# tail -n 4 /etc/group
colin:x:1000:
slocate:x:21:
group2:x:1005:
user2:x:1001:
[root@colinlinux ~]# useradd -u 1004 -g group2 user3
[root@colinlinux ~]# tail -n 4 /etc/passwd
chrony:x:997:995::/var/lib/chrony:/sbin/nologin
colin:x:1000:1000::/home/colin:/bin/bash
user2:x:1001:1001::/home/user2:/bin/bash
user3:x:1004:1005::/home/user3:/bin/bash
[root@colinlinux ~]#

過程分析:

# tail -n 4 /etc/passwd,能夠看到當前用戶沒有user3,也沒有屬於GID=1005的用戶;
# tail -n 4 /etc/group,能夠看到有一個GID=1005的用戶組;
# useradd -u 1004 -g group2 user3,添加一個UID=1004,GID=1005即用戶組group2的用戶user3;
# tail -n 4 /etc/passwd,查看是否添加成功;

2.三、添加用戶時指定用戶UID、GID、家目錄和shell

# useradd -u 1006 -g group2 -d /home/aming111 -s /sbin/nologin user4

命令分析:

-u 1006,指定用戶UID=1006;

-g group2,GID=group2;

-d /home/aming111,指定用戶家目錄/home/aming111;

-s /sbin/nologin,指定shell;

user4,添加用戶用戶名是user4;

[root@colinlinux ~]# tail -n 4 /etc/passwd
chrony:x:997:995::/var/lib/chrony:/sbin/nologin
colin:x:1000:1000::/home/colin:/bin/bash
user2:x:1001:1001::/home/user2:/bin/bash
user3:x:1004:1005::/home/user3:/bin/bash
[root@colinlinux ~]# useradd -u 1006 -g group2 -s /sbin/nologin user4
[root@colinlinux ~]# tail -n 4 /etc/passwd
colin:x:1000:1000::/home/colin:/bin/bash
user2:x:1001:1001::/home/user2:/bin/bash
user3:x:1004:1005::/home/user3:/bin/bash
user4:x:1006:1005::/home/user4:/sbin/nologin
[root@colinlinux ~]#

2.四、添加用戶但不添加家目錄

# useradd -M user5

建立用戶的同時不建立家目錄,雖然/etc/passwd中顯示家目錄是/home/user5,可是實際/home/中沒有建立用戶家目錄。

三、UID和GID的增長

不指定的狀況下uid自動從當前最大值增長;

不指定的狀況下gid自動從同uid相同的值開始增長(若是此gid值沒有被佔用),若是和uid相同的gid被佔用,則gid從當前gid最大值增長。

 

 

[root@colinlinux ~]# tail -n 6 /etc/passwd
chrony:x:997:995::/var/lib/chrony:/sbin/nologin
colin:x:1000:1000::/home/colin:/bin/bash
user2:x:1001:1001::/home/user2:/bin/bash
user3:x:1004:1005::/home/user3:/bin/bash
user4:x:1006:1005::/home/user4:/sbin/nologin
user5:x:1007:1007::/home/user5:/bin/bash

//首先查看一下當前的用戶uid和gid狀況,uid最大1007,gidzz最大1007;

[root@colinlinux ~]# groupadd -g 1010 group3
[root@colinlinux ~]# tail -n 2 /etc/group
user5:x:1007:
group3:x:1010:

//增長一個用戶組group3,gid=1010,tail命令查看一下/etc/group結果顯示添加成功;

[root@colinlinux ~]# useradd -g group3 user6
[root@colinlinux ~]# tail -n 3 /etc/passwd
user4:x:1006:1005::/home/user4:/sbin/nologin
user5:x:1007:1007::/home/user5:/bin/bash
user6:x:1008:1010::/home/user6:/bin/bash

//增長一個用戶user6,指定用戶gid=group3,即1010;

[root@colinlinux ~]# useradd user7
[root@colinlinux ~]# tail -n 6 /etc/passwd
user2:x:1001:1001::/home/user2:/bin/bash
user3:x:1004:1005::/home/user3:/bin/bash
user4:x:1006:1005::/home/user4:/sbin/nologin
user5:x:1007:1007::/home/user5:/bin/bash
user6:x:1008:1010::/home/user6:/bin/bash
user7:x:1009:1009::/home/user7:/bin/bash

/*
再增長一個用戶user7,不作任何設置;發現uid從1008直接變爲了1009,但其實1005還空缺,因此說uid不指定的狀況下uid自動從當前最大值增長;而gid沒有從當前最大值1010增長,而是保持和uid一致;
*/

[root@colinlinux ~]# useradd user8
[root@colinlinux ~]# tail -n 3 /etc/passwd
user6:x:1008:1010::/home/user6:/bin/bash
user7:x:1009:1009::/home/user7:/bin/bash
user8:x:1010:1011::/home/user8:/bin/bash
[root@colinlinux ~]# 

/*
再增長一個用戶user8,不作任何設置;uid從1009直接變爲了1010,自動從當前最大值增長;而gid由於1010已經被佔用,而且當前最大是1010,因此變爲了1011;
*/
[root@colinlinux ~]# tail -n 6 /etc/passwd
user3:x:1004:1005::/home/user3:/bin/bash
user4:x:1006:1005::/home/user4:/sbin/nologin
user5:x:1007:1007::/home/user5:/bin/bash
user6:x:1008:1010::/home/user6:/bin/bash
user7:x:1009:1009::/home/user7:/bin/bash
user8:x:1010:1011::/home/user8:/bin/bash
[root@colinlinux ~]# useradd -u 1005 user9 
[root@colinlinux ~]# tail -n 6 /etc/passwd
user4:x:1006:1005::/home/user4:/sbin/nologin
user5:x:1007:1007::/home/user5:/bin/bash
user6:x:1008:1010::/home/user6:/bin/bash
user7:x:1009:1009::/home/user7:/bin/bash
user8:x:1010:1011::/home/user8:/bin/bash
user9:x:1005:1012::/home/user9:/bin/bash

/*
再天津愛一個用戶user9,指定uid=1005,添加以前uid1005空缺,可是gid1005已經被佔用,添加後發現user9的gid=1012,說明gid被佔用的時候從當前最大值增長;
*/

三、userdel命令刪除用戶

功能:刪除一個用戶。

語法:userdel [-r] [用戶名]

參數:

        -r:不加-r選項,默認只刪除用戶,不刪除用戶家目錄和家目錄裏的文件,加-r則刪除和用戶相關的家目錄及文件。

 

3.一、刪除用戶不刪除相關目錄和文件

# userdel user7

只刪除用戶user7,不刪除用戶家目錄和家目錄裏的文件。

[root@colinlinux ~]# tail -n 3 /etc/passwd
user7:x:1009:1009::/home/user7:/bin/bash
user8:x:1010:1011::/home/user8:/bin/bash
user9:x:1005:1012::/home/user9:/bin/bash
[root@colinlinux ~]# userdel user7
[root@colinlinux ~]# tail -n 3 /etc/passwd
user6:x:1008:1010::/home/user6:/bin/bash
user8:x:1010:1011::/home/user8:/bin/bash
user9:x:1005:1012::/home/user9:/bin/bash
[root@colinlinux ~]# ls /home/
colin  user2  user3  user4  user6  user7  user8  user9
[root@colinlinux ~]#

3.一、刪除用戶同時刪除相關目錄和文件

# userdel -r user6

刪除user6用戶同時刪除用戶相關的家目錄及文件。

[root@colinlinux ~]# ls /home/
colin  user2  user3  user4  user6  user7  user8  user9
[root@colinlinux ~]# tail -n 3 /etc/passwd
user6:x:1008:1010::/home/user6:/bin/bash
user8:x:1010:1011::/home/user8:/bin/bash
user9:x:1005:1012::/home/user9:/bin/bash
[root@colinlinux ~]# userdel -r user6
[root@colinlinux ~]# tail -n 3 /etc/passwd
user5:x:1007:1007::/home/user5:/bin/bash
user8:x:1010:1011::/home/user8:/bin/bash
user9:x:1005:1012::/home/user9:/bin/bash
[root@colinlinux ~]# ls /home/
colin  user2  user3  user4  user7  user8  user9
[root@colinlinux ~]#
相關文章
相關標籤/搜索