一.用户和用户组
总览
1. Linux是一个真实的、完整的多用户多任务操作系统
2. 多用户多任务:可以在系统上建立多个用户,多个用户可以在同一时间内登录同一个系统执行各自不同的任务,而互不影响
多用户
1. 例如某台linux服务器上有4个用户,分别是root、www、ftp和mysql
2. 在同一时间内,root用户可能在查看系统日志,管理维护系统
3. www用户可能在修改自己的网页程序
4. ftp用户可能在上传软件到服务器
5. mysql用户可能在执行自己的SQL查询,每个用户互不干扰,有条不紊的进行着自己的工作
用户权限
1. 每个用户有对应的权限,互相不能越权访问
2. www用户不能执行mysql用户的SQL查询操作
3. ftp用户也不能修改www用户的网页程序
4. 不同用户具有不同的权限,每个用户是在权限允许的范围内完成不同的任务,linux正是通过这种权限的划分与管理,实现了多用户多任务的运行机制
权限分配与用户组
1.有时多个用户具有相同的权限,比如查看、修改某一个文件的权限,如果有10个用户的话,一种方法是对每个用户进行权限分配,一共授权10次,显然这种方法不太合理
2.另一种方法是建立一个组,将这些用户都加入到这个组内,然后赋予这个组具有查看、修改此文件的权限,那么所有用户就具有了和组一样的权限
3.用户组是Linux系统中对用户进行管理及控制访问权限的一种手段,通过定义用户组,在很大程度上简化了管理工作
二.用户管理与用户组管理
用户
用户组
三.权限控制
ls -l 得到下列信息
第1位:代表该文件的类型,”-”代表文件,”d”代表文件夹,”l”代表链接
一个文件权限信息,每三位为一组:
rwx • 前三位:代表文件所有者的权限
r-x • 中间三位 : 代表该文件拥有者的同组用户(属组用户)的权限
r-x • 后面三位 : 代表其他人的权限
文件权限
读权限
对于文件来说,读权限影响用户是否可以查看文件内容,比如命令 cat more head tail
写权限
对于文件来说,写权限影响用户是否可以编辑文件内容,比如vim echo ,但是不能删除文件
执行权限
对于文件来说,特别脚本文件(如shell脚本),执行权限影响文件是否可以运行
文件夹权限
读权限
对于文件夹来说,读权限影响用户是否能够列出目录结构,比如命令ls ll
写权限
对文件夹来说,具有修改目录结构的权限,比如新建文件和目录,删除此目录下文件和目录,重命名此目录下文件和目录,剪切和复制,比如命令cp mv touch rm
执行权限
对于文件夹来说:执行权限影响用户是否可以执行cd操作对于文件能否删除,首先要对目录具有执行权限,同时对文件也具有执行权限
总结
关键的目录要严格控制写权限,比如根目录“/”,“/usr”目录等
系统权限修改
修改权限
(1)chmod 【用户】【+、-】【权限】 文件名
【用户】 u:表示该文件拥有者 g:文件拥有者属组用户 o:其它用户
【+、-】 +:表示增加权限 -:表示删除权限
【权限】 r:表示可读 w:可写 x:可执行
chmod u+x a.txt 表示给a.txt的拥有者,添加可执行权限。
(2)r:4 w:2 x:1 r+w+x的值表示用户的最终权限
chmod 766 a.txt
表示拥有者满权限、属组读写权限、其它用户读写权限
chwon
chown 将指定文件的拥有者改为指定的用户或组
chown [选项] [所有者]:[组] 文件名
chown a:agroup file1.txt
将文件 file1.txt 的拥有者设为 a,群体的使用者agroup