1. 用户,组,权限
安全上下文(secure context)
权限:
r,w,x
文件:
r:可读,可以使用类似cat等命令查看文件内容
w:可写,可以编辑或删除此文件
x:可执行,executable,可以命令提示符下当作命令提交给内核运行
目录:
r:可以对此目录执行ls以列出内部所有文件
w:可以在此目录创建文件
x:可以使用cd切换进此目录,也可以使用ls -l查看内部文件的详细信息
2. 权限管理命令
chown # change file owner
chgrp # change file group owner
chmod #change file mode bits
umask #
3. 常用路径
/etc/passwd
用户名:密码:UID:GID:注释:家目录:默认shell
UID:
普通用户:1-65535
系统用户:1-499
一般用户:500-60000
/etc/group
组名:密码:GID:以此组为附加组的用户列表
/etc/shadow
用户名:密码:最近一次修改密码的时间:最短使用期限:最长使用期限:警告时间:非活动时间:过期时间
/etc/shells
指定了当前系统可用的安全shell
4. 用户管理命令
useradd,userdel,usermod,passwd,chah,chfn,finger,id,chage
useradd [options] USERNAME
-u UID #一定是其他用户未使用的ID号,并且大于等于500
-g GID #基本组 (无论是基本组和附加组,一定要事先存在)
-G GID,··· #附加组
-c “comment” #注释
-d #家目录
-s #指定用户shell
-m #强制创建家目录,一般与-k连用
-k #将/etc/skel/目录下的文件复制到家目录中去
-M #强制不给用户创建家目录
-r #添加一个系统用户,userid自动分配一个1-499,不能登陆系统且没有家目录
userdel [options] USERNAME #若删除用户时未指定任何选项,则用户的家目录是默认不会被删除的
-r #删除用户的时候同时删除用户的家目录
id #查看用户的账户属性
-u
-g
-G
-n #显示名称而非ID号
finger USERNAME #查看用户账号信息
usermod #修改用户账号信息,用法与useradd基本相同
-G #直接修改原有附加组。会覆盖原有附加组
-a -G #为用户追加附加组
-d #修改家目录
-d -m #修改家目录的同时,将原有家目录下的文件复制到新的家目录下去
-l #设置登录用户名
-L #锁定账号
-U #解锁账号
-e #指定用户过期时间
-f #指定非活动时间(密码过期了给修改密码的时间)
chsh #修改用户的默认shell
chfn #修改注释信息
passwd USERNAME #修改用户密码
—stdin #标准输入密码
-l #锁定用户账号
-u #解锁用户账号
-d #删除用户密码
-n #最短使用期限
-x #最长使用期限
pwck #检查用户账号完整性
chage
-d:最近一次的修改时间
-E:过期时间
-I:非活动时间
-m:最短使用期限
-M:最长使用期限
-W:警告时间
chown USERNAME file (只有管理员才可以修改文件属主)
-R:递归修改文件属主
—reference=/path/to/somefile file #设定file文件属主和属组与reference一样
chown USERNAME:GRPNAME file…
chown USERNAME.GRPNAME file…
chgrp #修改文件属组,只有管理员才可以修改
chmod #修改用户权限
umask #遮罩码
目录权限 777-umask
文件权限 666-umask
文件默认没有执行权限,如果有,权限加1
5. 用户组类别
管理员组:
普通组:
系统组
一般组
用户:
私有组:创建用户时,如果没有为其指定所属的组,系统会自动为其创建一个与用户名同名的组
基本组:用户的默认组
附加组:额外组,默认组以外的其他组
组管理:groupadd,groupdel,groupmod,gpasswd
groupadd #创建组
-g GID
-r #添加为系统组
groupmod #修改组
-g GID
-n 组名
newgrp #登录一个新组作为临时组
权限管理:chown,chgrp,chmod,umask
登录式shell:
正常通过某终端登录
su - USERNAME
su -l USERNAME
读取配置文件:
/etc/profile —> /etc/profile.d/.sh —> ~/.bash_profile —> ~/.bashrc —> /etc/bashrc
非登录式shell:
su USERNAME(半登录)
图形终端下打开命令窗口
自动执行的shell脚本
读取配置文件
~/.bashrc —> /etc/bashrc —> /etc/profile.d/.sh
bash的配置文件
全局配置:
/etc/profile,/etc/profile.d/*.sh,/etc/bashrc
个人配置:
~/.bash_profile,~/.bashrc
profile类文件:主要用于设定环境变量,运行命令或脚本
bashrc类文件:设定本地变量,定义命令别名