几个linux命令之用户权限相关命令

2018-01-30 19:37:18 Linux 阅读 (2456) 评论(0)

一.基本概念

  1.用户是Linux系统工作中重要的一环,用户管理包括用户,在LINUX系统中可以给不同的用户或组针对某一文件或目录设定不同的操作权限,其中这些权限包括读(r,数字代号是4),写(w,数字代号是2),运行(x,数字代号是1)。

  2.Linux天生就是多用户的操作系统,而为了方便用户的管理,就有了“组”概念。可以把用户添加到不同的组中(另有主组和附属组之分),设定不同的组具有针对不同的文件/目录的操作权限,就不用依次设置每一个用户的权限了。

二.用户权限命令

 1.查看文件或目录的权限

    在终端输入

ls -alh

查看当前文件夹的文件/目录的详细信息,如下图

blob.png

其中002_权限示意图002_权限示意图从左到右依次为权限,硬链接数,拥有者,组,大小,时间,名称。

其中权限的表述由10个字符组成,分成4个部分,如下图所示(r->读权限,w->写权限,x->运行权限):

blob.png

  2.chmod命令

   chmod命令可以修改 用户/组 对 文件/目录 的操作权限。chmod有几种修改权限的用法。

   2.1 一次性修改拥有者,组,其他用户的所有权限

chmod +/- rwx  文件名/目录名

   2.2 给用户组,组,其他用户设定不同的权限

chmod u=rwx,g=rw,o=rx 文件名/目录

    其中u表示user,即为当前拥有者;g表示组,即为同组的;o表示others,即为其他用户

   2.3 用数字设定权限

    前面说到,每个权限可由不同的数字表示

    

blob.png

常见数字组合有(u表示用户/g表示组/o表示其他):

  • 777 ===> u=rwx,g=rwx,o=rwx

  • 755 ===> u=rwx,g=rx,o=rx

  • 644 ===> u=rw,g=r,o=r

所以,设定权限时,就直接可以这样写

chmod 777 文件名/目录名
chmod -R 777 文件名/目录名 //-R表示递归修改目录里所有的文件权限

 3.chown命令

    chown命令可以修改文件/目录的所有者

chown 用户名 文件名/目录名

三.组管理命令

    实际应用中,可以先给组设置好权限,然后把不同的用户添加到对应的组中,从而实现不同的用户拥有对应的权限

sudo groupadd 组名  //添加组
sudo groupdel 组名  //删除组
cat /etc/group      //查看组信息
chgrp -R 组名 文件名/目录  //递归修改文件/目录的所属组

四.用户管理命令

useradd -m -g 组名 新建用户名 //添加新用户,-m自动建立用户家目录,-g指定用户所在的组,否则会建立一个和用户名同名的组
passwd 用户名 //设置用户密码
userdel -r 用户名 //删除用户,-r会自动删除该用户的家目录
cat /etc/passwd | grep 用户名 //查看用户信息,用户信息保存在/etc/passwd文件中
usermod -g 组名 用户名 //设置用户的主组
usermod -G 组名 用户名 //设置用户附属组


评论