Linux进出命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux进出命令相关的知识,希望对你有一定的参考价值。

一、用户类型

1、rhel7

管理员:root uid=0 ----超级管理员

程序用户:201<uid<999 ----普通权限,但没家不能登录系统

普通用户:1000<uid<60000 ----普通权限,但可以登录系统


2、rhel6 

管理员:root uid=0 ----超级管理员

程序用户:0<uid<499 ----普通权限,但没家不能登录系统

普通用户:500<uid<65535 ----普通权限,但可以登录系统


=============================================================


二、用户的相关文件

1、用户建立的模板:/etc/login.defs  

2、存放组信息:/etc/group   

3、存放用户信息:/etc/passwd  

4、存放密码信息:/etc/shadow  

5、用户的家目录:$HOME ----# $HOME

6、环境变量:.bash_profile

7、bash配置文件:.bashrc 

8、登出脚本:.bash_logout

9、用户配置文件模板:/etc/skel/*


=============================================================


三、用户

1、useradd:新建用户(在红帽7中创建普通用户需要先创建用户组)

先建组 [[email protected] Desktop]# groupadd -g 2000 g01

再建用户 [[email protected] Desktop]# useradd -u 2000 -g g01 u01

查询用户 [[email protected] Desktop]# id u01

uid=2000(u01) gid=2000(g01) groups=2000(g01)


-u ----指定用户的uid                                -g ----指定用户的gid

-c ----指定注释内容                                  -d ----指定用户家目录

-s ----指定使用的shell(普通用户指定/bin/bash ,程序用户/sbin/nologin)

-p ----给用户设置密码(明文)                 -r ----创建一个系统账户(rhel 7)

-m ----创建用户的主目录                          -M ----不创建用户的主目录

-U ----创建与用户同名的组


[[email protected] Desktop]# which useradd

/usr/sbin/useradd ----只有root才能创建用户


[[email protected] Desktop]# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash


root ----用户名称

x ----密码存放在/etc/shadow(如果没有x说明用户无密码登录)

0 ----用户id

0 ----组id

root ----注释(解释说明)

/root ----代表用户家目录

/bin/bash ----该用户使用的shell


练习:

①创建test用户,指定他的家目录为/home/test1 指定uid编号是10086,注释:这是一个移动的普通用户,指定shell为/bin/bash

[[email protected] Desktop]# useradd -d /home/test1 -u 10086 -c "这是一个普通的移动用户" -s /bin/bash test

②创建一个system1用户,不给他创建家目录,指定uid 959 ,该用户为非登录的程序用户,注释:这是一个程序用户

 [[email protected] Desktop]# useradd -u 959 -M -c "这是一个程序用户" -s /sbin/nologin -r system1 


2、usermod:修改用户信息(修改一个已经存在的用户,跟useradd的参数是一样的)

-c ----注释                                -d ----指定家目录

-e ----指定帐号过期时间           -l ----修改用户名称(usermod -l newname oldname)

-g ----gid(只有一个主组)     -G ----辅助组(多个辅助组)

-L ----锁定用户帐号


3、userdel:删除用户

-f ----force 强制

-r ----删除家目录和邮件池$HOME和/var/mail/$USER


练习:

①创建一个普通用户user01,指定家目录为/home/user01,指定uid为10010

[[email protected] Desktop]# useradd -u 10010 -d /home/user01 user01

②将user01用户名称修改为user02,uid为101010,家目录修改为/home/user02

[[email protected] Desktop]# usermod -u 101010 -d /home/user02 -m

[[email protected] Desktop]# usermod -l user02 user01

3、将user02修改为程序用户,测试登录

[[email protected] Desktop]# usermod -s /sbin/nologin -u 958 user02


=============================================================


四、用户组

1、groupadd:创建组

-g ----指定gid

-r ----创建一个系统帐号

-p ----加密码(明文)


2、groupdel:删除组(要求这个组下没有用户以该组作为主组)


3、groupmod:修改组的信息

-n ----修改组名称

-p ----修改组密码


4、gpasswd:设置组密码

-a ----给组添加成员                  -A ----设置组的管理员

-r ----移除组密码                     -d ----将成员从组内删除

-M ----设置组成员列表,例如:[[email protected] Desktop]# gpasswd -M user01,user02,user03 student ------将用户加入student组


=============================================================


五、su:鉴定故障 ----锁定帐号不能登录(即使密码输入正确)

-U ----解锁用户                        -m ----跟-d参数一起使用修改家目录

-u ----指定uid                          su 用户名 ----切换登录账号


=============================================================


六、密码信息:/etc/shadow

[[email protected] Desktop]# vim /etc/shadow ----修改用户的密码信息

[[email protected] Desktop]# cat /etc/shadow ----查看用户的密码信息

root:$6$9QT1u/6XBOof0f0i$OJrKd2ziSy3PHOzgDMzfc8hJK5UqGbgKUxRnw2hhvaXys7YfXBilWthqajOBigvFCqLFlo3psGYm3JxFscdyv0::0:99999:7:::

root ----用户名称

$6$9QT1u/6..v0 ----密码(加密方式SHA512)

md5sum ----$1

SHA256 ----$5

SHA512 ----$6

user1001$1$SefNk95S$OY4g7fMVcRNvcxLJWwW.91:14940:0:99999:7:0:14950: ----每一行9个字段,以冒号分隔,

①user1001 ----用户名

②$1$SefNk95S$OY4g7fMVcRNvcxLJWwW.91 ----md5 加密密码

③14940 ----从 1970-01-01 计算经过天数 (2010-11-27) 

④0 ----用户最后修改密码限期,假如 3 --> 14943 --> 从现在开始到 2010-11-30 才允许修改密码

⑤99999 ----密码修改最大限期,假如15 --> 每 15 天必须改密码一次\--修改 15 后 --> 14940 + 15 = 14955 = 2010-12-12 前必须修改密码

⑥7 ----密码过期前 7 天开始警告

⑦0 ----当密码过期后,拒绝用户登录  (3) 过期后三天内还允许修改密码,过了三天拒绝登录

⑧14500 ----( 1970-01-01 ) 过了 14950 天 (2011-03-01)  --> 从开始用户帐号锁定

----保留标志,目前没有意义


=============================================================


七、修改密码:passwd

[[email protected] Desktop]# vim /etc/passwd ----修改用户的密码信息

[[email protected] Desktop]# cat /etc/passwd ----查看用户的密码信息

root:x:0:0:root:/root:/bin/bash

用户名:密码:uid:gid:注释:家目录:shell  (x:有密码,空:无密码)


passwd ----只有root用户可以给所有用户设置密码,普通用户只能设置自己的密码(数字+字母大小写+特殊符号)

-d ----delete删除已命名帐号的密码(只有根用户才能进行此操作)

-l ----锁定帐号密码lock                            -u ----解锁unlock

-e ----帐号的到期时间                                -f ----force

-x ----99999 最大的密码修改时间              -n ----0 最小的密码修改时间

-w ----7 告警时间                                        -i ----3 帐号到期的保留时间


①passwd test ----设置密码(交互式)

②echo 123 |passwd --stdin test ----test用户设置密码(非交互式)

③passwd -x 3 test2 ----设置密码修改的最大间隔时间

[[email protected] Desktop]# su test2

密码:

您需要立即更改密码(密码过期) ----到3天时间之后需要立即修改密码

为 test2 更改 STRESS 密码。

(当前)UNIX 密码: ----当前密码

新的 密码: ----新密码

重新输入新的 密码: ----确认新密码

④[[email protected] Desktop]# passwd -n 2  test2 ----设置密码修改的最小间隔时间

⑤[[email protected] Desktop]# passwd -w 5 test2 ----设置告警时间。警告:您的密码将在 3 天后过期

⑥[[email protected] Desktop]# passwd -i 3 test2 ----密码到期之后保留3天


=============================================================


八、chage:修改密码(更改用户密码过期信息)

-d ----最近一次密码设置时间 值为“0” 强制要求用户第一次登录即修改密码

-E ----帐号到期时间                                   -I ----帐号到期之后保留时间

-m ----密码最小修改时间                            -M ----密码最大修改时间

-W ----告警时间


①[[email protected] Desktop]# tail -3 /etc/shadow

test01:!!:16812:0:99999:7:::

bin:*:16579:0:99999:7:::

test2:!$6$PCw

* ----代表系统用户

!! ----代表没有设置密码

!密码 ----代表帐号被锁定


=============================================================


九、文件和目录的修改属性和权限

1、chmod:修改权限 -R ----递归

[ugoa]*([-+=]([rwxXst]*|[ugo]))+|[-+=][0-7]+‘

chmod u-w /path/filename

chmod u-w  /root/公共

chmod g+w /root/公共

chmod o=rw /root/公共

chmod a-x /root/公共

chmod 755 /root/公共

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

[[email protected] Desktop]# ll 1.txt 

-rwxr-xr-x. 1 root root 0 Dec 26 21:48 1.txt

[[email protected] Desktop]# ls -l /dev/loop0

brw-rw----. 1 root disk 7, 0 Dec 26 21:24 /dev/loop0

rwx   r-x  r-x

user group other

u    g   o mask

r ----read 读权限   4

w ----write 写权限   2

x ----目录-访问权限   1

----文件-执行权限

- ----没有权限   0

755 公共



2、chown:修改属性 -R ----递归

chown [-R] <username>.<group> /<path>/filename ----修改用户和属组

chown <username>:<group> /<path>/filename ----同上

chown <username> /<path>/filename> ----修改用户

chown :<group> /<path>/filename ----修改属组

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

[[email protected] Desktop]# ll 1.txt 

-rwxr-xr-x. 1 root root 0 Dec 26 21:48 1.txt

root root

所有者 所属组



3、chgrp :修改属组 -R ----递归

chgrp -R groupname /path/filename


=============================================================


十、特殊权限

1、冒险位:针对的用户位设定,临时拥有拥有者的权限

针对命令文件

chmod u+s /path/filename

mask 4000

chmod 4755 /path/filename


2、强制位:针对属组设定,强制新生成的目录或文件拥有父目录的属组

针对的目录

chmod g+s /path/filename

mask 2000

chmod 2755 /path/filename


3、粘滞位:针对其他人设定 在公共目录中,谁创建的文件由谁来管理,其他人只能读,不能修改或删除

chmod o+t /path/filename

mask 1000

chmod 1777 /path/filename



[[email protected] Desktop]# ls -ld /opt/public/

drwxrwxr-T. 3 root root 36 8月   4 02:13 /opt/public/

S ---所在位的x没有

s ---所在为有x

T ---所在位的没有x

t ---所在为有x


本文出自 “菜鸟达人” 博客,请务必保留此出处http://omphy.blog.51cto.com/7921842/1886338

以上是关于Linux进出命令的主要内容,如果未能解决你的问题,请参考以下文章

如何在Linux上从命令行嗅探HTTP流量

iptables命令详解是啥?

Linux系统之iftop的基本使用

linux 如何调出上网历史记录(用IP分类,因为有多个ip)用程序实现

IPtables命令总结

hadoop常用管理员命令