11.. _08_user_manage :
22
3-
43用户管理工具
54====================
65
6+ .. contents :: 目录
77
88用户
99---------------------
1010
1111添加用户
12- ^^^^^^^^^^^^^^^^^^^^^
13- $useradd -m username
12+ ^^^^^^^^^^^^^^^^^^^^
13+
14+ ::
15+
16+ $useradd -m username
1417
1518该命令为用户创建相应的帐号和用户目录/home/username;
1619
1720用户添加之后,设置密码:
18- 密码以交互方式创建:
19- $passwd username
21+
22+ 密码以交互方式创建::
23+
24+ $passwd username
2025
2126
2227删除用户
2328^^^^^^^^^^^^^^^^^^^^
24- $userdel -r username
29+
30+ ::
31+
32+ $userdel -r username
2533不带选项使用 userdel,只会删除用户。用户的家目录将仍会在/home目录下。要完全的删除用户信息,使用-r选项;
2634
2735帐号切换
28- ^^^^^^^^^^^^^^^^^^^^
29- 登录帐号为userA用户状态下,切换到userB用户帐号工作:
30- $su userB
36+ 登录帐号为userA用户状态下,切换到userB用户帐号工作::
37+
38+ $su userB
3139进入交互模型,输入密码授权进入;
3240
3341用户的组
@@ -36,24 +44,30 @@ $su userB
3644将用户加入到组
3745^^^^^^^^^^^^^^^^^^^^
3846默认情况下,添加用户操作也会相应的增加一个同名的组,用户属于同名组;
39- 查看当前用户所属的组:
40- $groups
47+ 查看当前用户所属的组::
48+
49+ $groups
4150
42- 一个用户可以属于多个组,将用户加入到组:
43- $usermod -G groupNmame username
51+ 一个用户可以属于多个组,将用户加入到组::
4452
45- 变更用户所属的根组(将用加入到新的组,并从原有的组中除去):
46- $usermod -g groupName username
53+ $usermod -G groupNmame username
54+
55+ 变更用户所属的根组(将用加入到新的组,并从原有的组中除去)::
56+
57+ $usermod -g groupName username
4758
4859查看系统所有组
4960^^^^^^^^^^^^^^^^^^^^
5061系统的所有用户及所有组信息分别记录在两个文件中:/etc/passwd , /etc/group
5162默认情况下这两个文件对所有用户可读:
52- 查看所有用户及权限
53- $more /etc/passwd
5463
55- 查看所有的用户组及权限
56- $more /etc/group
64+ 查看所有用户及权限::
65+
66+ $more /etc/passwd
67+
68+ 查看所有的用户组及权限::
69+
70+ $more /etc/group
5771
5872用户权限
5973-----------------
@@ -70,47 +84,66 @@ $more /etc/group
7084更改读写权限
7185^^^^^^^^^^^^^^^^^^^^
7286使用chmod命令更改文件的读写权限,更改读写权限有两种方法,一种是字母方式,一种是数字方式
73- 字母方式:
74- $chown userMark(+|-)PermissionsMark
75- userMark取值:u:用户 g:组 o:其它用户 a:所有用户
76- PermissionsMark取值:r:读 w:写 x:执行
77- 例如:
78- $chmod a+x main 对所有用户给文件main增加可执行权限
79- $chmod g+w blogs 对组用户给文件blogs增加可写权限
87+
88+ 字母方式::
89+
90+ $chown userMark(+|-)PermissionsMark
91+ userMark取值:
92+
93+ - u:用户
94+ - g:组
95+ - o:其它用户
96+ - a:所有用户
97+ PermissionsMark取值:
98+
99+ - r:读
100+ - w:写
101+ - x:执行
102+
103+ 例如::
104+
105+ $chmod a+x main 对所有用户给文件main增加可执行权限
106+ $chmod g+w blogs 对组用户给文件blogs增加可写权限
80107
81108数字方式:
109+
82110数字方式直接设置所有权限,相比字母方式,更加简洁方便;
111+
83112使用三位八进制数字的形式来表示权限,第一位指定属主的权限,第二位指定组权限,第三位指定其他用户的权限,每位通过4(读)、2(写)、1(执行)三种数值的和来确定权限。如6(4+2)代表有读写权,7(4+2+1)有读、写和执行的权限。
84- 例如:
85- $chmod 740 main 将main的用户权限设置为rwxr-----
113+
114+ 例如::
115+
116+ $chmod 740 main 将main的用户权限设置为rwxr-----
86117
87118更改文件或目录的拥有者
88119^^^^^^^^^^^^^^^^^^^^^^
89- $chown username dirOrFile
90- 使用-R选项递归更改该目下所有文件的拥有者:
91- eg:
92- $chown -R weber server/
120+ ::
93121
122+ $chown username dirOrFile
123+ 使用-R选项递归更改该目下所有文件的拥有者::
124+
125+ $chown -R weber server/
94126
95127
96128环境变量
97129--------------------
98130bashrc与profile都用于保存用户的环境信息,bashrc用于交互式non-loginshell,而profile用于交互式login shell。
99- /etc/profile,/etc/bashrc 是系统全局环境变量设定
100- ~/.profile,~/.bashrc用户家目录下的私有环境变量设定
101131
102- 当登入系统获得一个shell进程时,其读取环境设置脚本分为三步:
103- 1.首先读入的是全局环境变量设置文件/etc/profile,然后根据其内容读取额外的文档,如
104- /etc/profile.d和/etc/inputrc
105- 2.读取当前登录用户Home目录下的文件~/.bash_profile,其次读取~/.bash_login,最后读取
106- ~/.profile,这三个文档设定基本上是一样的,读取有优先关系
107- 3.读取~/.bashrc
132+ | /etc/profile,/etc/bashrc 是系统全局环境变量设定
133+ | ~/.profile,~/.bashrc用户目录下的私有环境变量设定
134+ |
135+
136+ 当登入系统获得一个shell进程时,其读取环境设置脚本分为三步:
108137
109- 至于~/.profile与~/.bashrc的不区别
138+ 1. 首先读入的是全局环境变量设置文件/etc/profile,然后根据其内容读取额外的文档,如/etc/profile.d和/etc/inputrc
139+ #. 读取当前登录用户Home目录下的文件~/.bash_profile,其次读取~/.bash_login,最后读取~/.profile,这三个文档设定基本上是一样的,读取有优先关系
140+ #. 读取~/.bashrc
110141
111- 这两者都具有个性化定制功能
112- ~/.profile可以设定本用户专有的路径,环境变量,等,它只能登入的时候执行一次
113- ~/.bashrc也是某用户专有设定文档,可以设定路径,命令别名,每次shell script的执行都会使用它一次
142+ ~/.profile与~/.bashrc的区别:
143+
144+ - 这两者都具有个性化定制功能
145+ - ~/.profile可以设定本用户专有的路径,环境变量,等,它只能登入的时候执行一次
146+ - ~/.bashrc也是某用户专有设定文档,可以设定路径,命令别名,每次shell script的执行都会使用它一次
114147
115148例如,我们可以在这些环境变量中设置自己经常进入的文件路径,以及命令的快捷方式:
116149::
@@ -127,8 +160,11 @@ bashrc与profile都用于保存用户的环境信息,bashrc用于交互式non-
127160 unit=/opt/app/unittest/common
128161
129162 .bash_profile
130- . /opt/app/tuxapp/openav/config/setenv.tosf. prod.sh.linux
163+ . /opt/app/tuxapp/openav/config/setenv.prod.sh.linux
131164 export PS1='$PWD#'
132165
133166通过上述设置,我们进入log目录就只需要输入cd $log即可;
134167
168+ 总结
169+ --------------------
170+ useradd passwd userdel usermod chmod chown .bashrc .bash_profile
0 commit comments