linux基础之用户及权限

来源:互联网 发布:dchp mac地址 租约 编辑:程序博客网 时间:2024/06/05 18:43

权限分为r,w,x


文件:r:可读,可以使用类似cat等命令查看文件内容;w:可写,可以编辑或删除此文件;x: 可执行,eXacutable,可以命令提示符下当作命令提交给内核运行;目录:r: 可以对此目录执行ls以列出内部的所有文件;w: 可以在此目录创建文件;x: 可以使用cd切换进此目录,也可以使用ls -l查看内部文件的详细信息;

一些相关的文件


用户:UID, /etc/passwd
组:GID, /etc/group

passwd 文件每一列的含义

root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologin、、、、、、从左到右依次是:account: 登录名password: 密码UIDGID:基本组IDcomment: 注释HOME DIR:家目录SHELL:用户的默认shell

影子口令:
用户:/etc/shadow
组:/etc/gshadow

shadow文件解析:

root:$6$fb4MIcvV$GHQrWOiY4xv8TnWm9928DonlgMVG1hNZpdLqitOmZMxNvDa3iEcoLNjhkBPBGvjTysJdgGPw8k.IQ1KlWAAId0:16779:0:99999:7:::bin:*:15980:0:99999:7:::daemon:*:15980:0:99999:7:::、、、、、、、、从左到右依次是:用户名:密码:最近一次修改密码的时间:最短使用期限:最长使用期限:警告时间:非活动时间:过期时间:

用户类别:
管理员:0
普通用户: 1-65535
系统用户:1-499
一般用户:500-60000

用户组类别:
私有组:创建用户时,如果没有为其指定所属的组,系统会自动为其创建一个与用户名同名的组
基本组:用户的默认组
附加组,额外组:默认组以外的其它组

useradd


创建用户

 -u:UID -g:GID -G:GID,...(附加组) -c:注释 -d:指定家目录(home directory) -s:指定shell,最好是 /etc/shells下的shell -r:添加为系统用户

userdel


删除用户

userdel USERNAME:默认删除用户时不会删除用户的家目录-r:删除用户的同时删除用户的家目录

id


查看用户的帐号属性信息

-u:查看UID-g:查看GID-G:查看附加组id-n:配合以上命令使用,显示名称而非id号

finger


查看用户账号信息
finger USERNAME

usermod


修改用户账户的属性

-u

修改用户的UID
例:

[root@iZ28g26851kZ etc]# id jianshiuid=502(jianshi) gid=502(jianshi) groups=502(jianshi)[root@iZ28g26851kZ etc]# usermod -u 510 jianshi[root@iZ28g26851kZ etc]# id jianshiuid=510(jianshi) gid=502(jianshi) groups=502(jianshi)[root@iZ28g26851kZ etc]# 

-g

修改用户的基本组,但是改后的基本组应该是事先已经存在的

-a -G

-g设置附加组
设置后之前的附加组就不存在了
要想保留之前的需要再配合-a使用
-ag表示在原有附加组的基础上再添加新的附加组

-c

修改用户注释

-d -m

修改用户家目录
如果只使用-d那么修改家目录后用户将无法访问以前家目录下的文件,
-m的意识是将以前家目录下的文件复制到新的家目录下,所以一般 -d -m一起使用

-L

锁定账号

-U

解锁账号

chfn


修改注释信息
例:

[root@iZ28g26851kZ /]# chfn jianshiChanging finger information for jianshi.Name []: jiuyouOffice []: guangdongOffice Phone []: 123456789Home Phone []: 6325456Finger information changed.[root@iZ28g26851kZ /]# finger jianshiLogin: jianshi                  Name: jiuyouDirectory: /home/jianshi                Shell: /bin/bashOffice: guangdong, 123456789        Home Phone: 632-5456Never logged in.No mail.No Plan.[root@iZ28g26851kZ /]# 

pwck


检查用户账号完成性

groupadd


创建组

-g

指定GID

-r

指定为系统组

groupmod


修改组属性

-g

修改GID

-n

修改组名称
例:

[root@iZ28g26851kZ /]# tail -1 /etc/groupgrouptest:x:503:[root@iZ28g26851kZ /]# groupmod -n grouptest2 grouptest[root@iZ28g26851kZ /]# tail -1 /etc/groupgrouptest2:x:503:[root@iZ28g26851kZ /]# 

groupdel


删除用户组

gpasswd


为用户组设定密码
在临时切换用户组的时候需要输入组密码

newgrp


切换用户组

passwd


设置密码,管理可以给其他用户设置密码,普通用户只能给自己设置密码

-l:是lock的意思,会将/etc/shadow 第二列最前面加上!使密码失效。-u:与lock相对,是unlock的意思-S:列出密码相关参数,即shadow文件内的大部分信息-n:多久不可修改密码天数-x:多久内必须要改动密码-w:密码过期前的警告天数-i:密码失效日期

chown


改变文件属主
例:

[root@iZ28g26851kZ opt]# lltotal 4-rw-r--r--  1 root root    0 May  5 10:48 a b-rw-r--r--  1 root root    0 May  5 10:48 asd-rw-r--r--  1 root root    0 May  5 10:48 gfsddrwxr-xr-x. 2 root root 4096 Nov 22  2013 rh[root@iZ28g26851kZ opt]# chown jianshi asd[root@iZ28g26851kZ opt]# lltotal 4-rw-r--r--  1 root    root    0 May  5 10:48 a b-rw-r--r--  1 jianshi root    0 May  5 10:48 asd-rw-r--r--  1 root    root    0 May  5 10:48 gfsddrwxr-xr-x. 2 root    root 4096 Nov 22  2013 rh[root@iZ28g26851kZ opt]# 

-R

改变目录及其内部文件的属主(递归修改)

--reference

参考一个文件将另一个文件的属主情况改为何参考的文件一样
例:

[root@iZ28g26851kZ opt]# lltotal 4-rw-r--r--  1 root    root    0 May  5 10:48 a b-rw-r--r--  1 jianshi root    0 May  5 10:48 asd-rw-r--r--  1 root    root    0 May  5 10:48 gfsddrwxr-xr-x. 2 root    root 4096 Nov 22  2013 rh[root@iZ28g26851kZ opt]# chown --reference=asd gfsd [root@iZ28g26851kZ opt]# lltotal 4-rw-r--r--  1 root    root    0 May  5 10:48 a b-rw-r--r--  1 jianshi root    0 May  5 10:48 asd-rw-r--r--  1 jianshi root    0 May  5 10:48 gfsddrwxr-xr-x. 2 root    root 4096 Nov 22  2013 rh[root@iZ28g26851kZ opt]# 

chgrp


改变文件属组
参数同chown

chmod


修改三类用户的权限

chmod MODE file,…
-R:递归修改权限
–reference
例:

    chmod 764 test   --意思是将test文件权限设置为 rwx rw- r--

修改某类用户或某些类用户的权限

u,g,o,a
chmod 用户类别=MODE file,…
例:

chmod u=rwx test  --只给所在用户rwx权限chmod go=rw test --只给组合其他rw权限

修改某类用户的某位或某些位权限
chmod 用户类别+|-MODE file,….
例:

chmod u+r test  --给所在用户加上r的权限chmod a+w test  --给所有人加上w的权限

======================================================
站在用户登录的角度来说,SHELL的类型:
登录式shell:
正常通常某终端登录
su - USERNAME
su -l USERNAME

非登录式shell:
su USERNAME
图形终端下打开命令窗口
自动执行的shell脚本

bash的配置文件:
全局配置
/etc/profile, /etc/profile.d/*.sh, /etc/bashrc
个人配置
~/.bash_profile, ~/.bashrc

profile类的文件:
设定环境变量
运行命令或脚本

bashrc类的文件:
设定本地变量
定义命令别名

登录式shell如何读取配置文件?
/etc/profile –> /etc/profile.d/*.sh –> ~/.bash_profile –> ~/.bashrc –> /etc/bashrc

非登录式shell如何配置文件?
~/.bashrc –> /etc/basrc –> /etc/profile.d/*.sh

0 0
原创粉丝点击