首页 > 系统相关 >Linux常用命令-权限相关

Linux常用命令-权限相关

时间:2023-02-10 11:11:41浏览次数:43  
标签:表示 文件 用户组 常用命令 用户 Linux 权限 所属

Linux权限简单点说就是:谁拥有文件/文件夹的什么权限。

首先说一下基本概念:

Linux里面文件权限身份有三种:owner、group、others,分别表示文件所属者,文件所属用户组,其他用户。

权限分为三种:r 、w 、x,分别是读、写和执行权限,对应的数值分别是4、2、1。举例7=4+2+1表示拥有所有权限,6=4+2表示拥有读和写得权限,3=2+1表示拥有写和执行的权限。777表示这个文件,其所属者、所属用户组和其他用户都拥有所有权限。

一般ls -l 查看文件的详细信息,显示如下:

  • 第1列为权限
  • 第2列为链接,表示有多少文件名链接到此节点(i-node)
  • 第3列为owner
  • 第4列为group
  • 第5列为文件大小
  • 第6,7,8列为文件修改日期
  • 第9列为文件名

权限列需要讲一下含义:

  • d则是目录
  • -则是文件
  • l则表示为链接文件
  • b则表示为设备文件里面的可供储存的周边设备(可随机存取设备);
  • c则表示为设备文件里面的序列埠设备,例如键盘、鼠标(一次性读取设备)。

1、用户、用户组相关

  • 查看所有用户

所有的用户信息存在于/etc/passwd下,可以通过cat命令查看

cat /etc/passwd

  • 查看单个用户信息

id userName

  • 切换用户

 比较常用的就是切换到超级管理员:su root

su userName

  • 创建用户

-m表示在home目录下,为用户创建一个同名文件夹,初始创建的用户没有密码,需要用到passwd命名设置/修改密码。

useradd -m username

  • 设置/修改密码

新增的用户需要输入密码,然后确认密码即可。

passwd username

  • 删除用户

删除用户,-r表示删除用户创建的文件(注意使用防止误删)

userdel username

  • 查看用户组

用户组信息存在于/etc/group,通过cat查看

一般格式如下:X:Y:Z:M

X表示用户组名称,Y表示密码位,Z表示组ID(gid),M表示属于这个组的用户

  • 增加用户组

通过cat /etc/group查看所有的用户组,-g(gid)指定组的ID

groupadd groupName

  

  • 删除用户组

用来删除用户组,-f表示强制

groupdel groupName

  • 修改用户所属用户组

1、usermod,-G(groups)是将用户附加到其他组,同时附加到多个组可以通过英文逗号隔开,组名称或者组ID都可以;-g(gid)表示将用户附加到主组,一个用户只能属于一个主组。

usermod -G group1,group2 userName

usermod -g group userName

2、gpasswd,一次只能操作单个组,只能是组名称,不能是组ID

把用户添加到组中

gpasswd -a userName groupName

把用户从组中移除

gpasswd -d userName groupName

2、文件、文件夹权限相关

  • 修改文件所属用户、用户组

1、chown修改文件所属用户和用户组,一般需要采用sudo,或者切换到root用户修改,-R表示递归将下面所有的文件和文件夹的所属者修改。

如果sudo提示 "xxx is not in the sudoers file",需要切换到root,然后vim /etc/sudoers,找到“root ALL=(ALL) ALL”一行,在下面插入新的一行,内容是“userName ALL=(ALL) ALL”,然后在vim键入命令“:wq!”保存并退出。

chown userName fileName

chown -R userName:groupName fileName

2、chgrp只修改文件所属用户组,-R表示递归修改子文件和子文件夹的所属组

chgrp groupName fileName

  • 修改文件的所属用户、用户组的权限

chmod修改文件的权限,从上面知道文件权限有三种:r(read)、w(write)、x(execute),表示读、写和执行;文件权限身份有三种:所属者、所属组和其他组,分别由u(user)、g(group)、o(others)、a(all))表示。-R表示递归修改子文件和子文件夹的文件权限。

1、同时处理所有身份的权限:7表示给文件所属者赋予所有的权限,5表示给所属用户组赋予读和执行的权限,4表示给其他组赋予读的权限,-R表示处理子文件和子文件夹

chmod -R 754 fileName

2、处理单独身份的权限:-表示删除权限,+表示增加权限,其中u-x表示删除文件所属者的执行权限,u+r表示增加所属者读的权限,g-w表示删除所属组得写权限。

chmod -R u-x fileName

标签:表示,文件,用户组,常用命令,用户,Linux,权限,所属
From: https://www.cnblogs.com/zhaodalei/p/17100796.html

相关文章

  • Linux系统查看内存型号、主板、硬盘等信息
    1.Linux查看内存的插槽数,已经使用多少插槽.每条内存多大:[root@mxh~]#dmidecode|grep-A5"MemoryDevice"|grepSize|grep-vRangeSize:4096MBSize:4096MBSiz......
  • Linux线程编程(3)
    1.线程简介线程(英语:thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以......
  • linux 防火墙 firewalld
    1、查看firewalld服务状态systemctlstatusfirewalld出现Active:active(running)高亮显示则表示是启动状态。出现Active:inactive(dead)灰色表示停止,看单词也行。2、......
  • Linux查看网络带宽使用情况 (端口显示)
    Linux系统下如果服务器带宽跑满了,查看跟哪个ip通信占用带宽比较多,还可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等,详细的将会在后面的使用参数中说......
  • Linux 命令大全:2万字实现Linux自由
    文章很长,而且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录博客园版为您奉上珍贵的学习资源:免费赠送:《尼恩Java面试宝典》持续更新+史上最全+面试必备2000页+面......
  • linux 基础(7)账号和群组的管理
    了解账号和群组的基本信息账号使用如何查看linux计算机上有哪些账号呢?账号的信息储存在/etc/passwd中,打开就可以看到:less/etc/passwdroot:x:0:0:root:/root:/bin/ba......
  • maven常用命令
    假设现有项目结构如下dailylog-parent|-dailylog-common|-dailylog-web三个文件夹处在同级目录中dailylog-web依赖dailylog-commondailylog-parent管理dailylog-com......
  • Linux 编译报错 /bin/sh: 1: flex: not found 和 /bin/sh: 1: bison: not found 解决
      配置内核菜单报错1、报错(1):/bin/sh:1:flex:notfound解决方案(1) sudoapt-getinstallflex2、报错(2):/bin/sh:1:bison:not......
  • Linux 编译报错 fatal error: openssl/bio.h: No such file or directory 解决方法
    问题描述虚拟机VMWare重新安装的ubuntu22.04,在编译Linux内核时,报【编译错误】,提示 openssl/bio.h:Nosuchfileordirectory 解决方法使用 sudoaptin......
  • Linux 命令
    #查看进程状态psaux#查看系统内核信息uname-a#查看系统版本信息cat/etc/redhat-release#查看系统登录记录last#执行历史命令!history编码#返回上一次......