首页 > 系统相关 >linux基础命令(六)

linux基础命令(六)

时间:2024-02-23 15:55:39浏览次数:25  
标签:ld nsd01 基础 server0 命令 ls linux 权限 root

#################################################

权限和归属

基本权限

• 访问方式(权限) 

– 读取:允许查看内容-read                  	r        4
– 写入:允许修改内容-write              	w        2
– 可执行:允许运行和切换-execute          	x        1 

 
对文本文件:
r: cat less head tail
w: vim 保存 > >>
x: 书写Shell脚本或Python脚本

• 权限适用对象(归属)

– 所有者(属主):拥有此文件/目录的用户-user               u
– 所属组(属组):拥有此文件/目录的组-group                g
– 其他用户:除所有者、所属组以外的用户-other              o

####################################################

查看权限

• 使用 ls -l 命令
– ls -ld 文件或目录...
以d开头:目录
以-开头:文件
以l开头:快捷方式

[root@server0 ~]# ls -ld /etc/
[root@server0 ~]# ls -l /etc/passwd

[root@server0 ~]# ls -l /etc/shadow
[root@server0 ~]# ls -ld /home/student
[root@server0 ~]# ls -ld /tmp

####################################################

设置基本权限

• 使用 chmod 命令
– chmod 归属关系+-=权限类别 文档...

[root@server0 ~]# mkdir /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod g+w /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod u-w /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod o=--- /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod u=rwx,g=rx,o=rx /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod ugo=rwx /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# mkdir -p /opt/aa/bb/cc
[root@server0 ~]# ls -ld /opt/aa
[root@server0 ~]# ls -ld /opt/aa/bb/
[root@server0 ~]# ls -ld /opt/aa/bb/cc/

[root@server0 ~]# chmod -R o=--- /opt/aa
[root@server0 ~]# ls -ld /opt/aa

##################################################
Linux判定用户具备的权限 匹配及停止
1.判定用户对该文档的身份 所有者>所属组>其他人
2.查看相应身份 权限位的权限

Permission denied :权限不足

目录的 r 权限:能够 ls 浏览此目录内容
目录的 w 权限:能够执行 rm/mv/cp/mkdir/touch/等更改目录内容的操作
目录的 x 权限:能够 cd 切换到此目录

以root用户新建/nsddir目录,在此目录下新建readme.txt文件
并进一步完成下列操作
 1)使用户lisi能够在此目录下创建子目录     切换用户 su  -  lisi
	 chmod o+w  /nsddir/
 2)使用户lisi不能够在此目录下创建子目录
	 chmod o-w  /nsddir/
 3)使用户lisi能够修改readme.txt文件内容
	 chmod o+w  /nsddir/readme.txt
 4)调整此目录的权限,使所有用户都不能cd进入此目录
	 chmod u-x,g-x,o-x  /nsddir/
 5)为此目录及其下所有文档设置权限 rwxr-x---
	 chmod -R  u=rwx,g=rx,o=---  /nsddir/
   -R:递归设置权限,目录下及目录下所有

#################################################

设置文档归属

• 使用 chown 命令

– chown -R 属主 文档...
– chown -R :属组 文档...
– chown -R 属主:属组 文档...

[root@server0 ~]# groupadd tedu
[root@server0 ~]# mkdir /nsd03
[root@server0 ~]# ls -ld /nsd03

[root@server0 ~]# chown lisi:tedu /nsd03
[root@server0 ~]# ls -ld /nsd03

[root@server0 ~]# chown zhangsan /nsd03
[root@server0 ~]# ls -ld /nsd03

[root@server0 ~]# chown :root  /nsd03
[root@server0 ~]# ls -ld /nsd03

###################################################

附加权限(特殊权限)

Set GID

• 附加在属组的 x 位上
属组的权限标识会变为 s
适用于目录,Set GID可以使目录下新增的文档自动设置与父目录相同的属组
让父目录下,新增的子文档继承父目录的所属组身份

[root@server0 ~]# mkdir /nsd07
[root@server0 ~]# chown :tedu /nsd07   #修改所属组
[root@server0 ~]# ls -ld /nsd07

[root@server0 ~]# mkdir /nsd07/abc
[root@server0 ~]# ls -ld /nsd07/abc
[root@server0 ~]# chmod g+s /nsd07/    #设置Set GID权限
[root@server0 ~]# ls -ld /nsd07/

[root@server0 ~]# mkdir /nsd07/test
[root@server0 ~]# ls -l /nsd07/

[root@server0 ~]# touch /nsd07/1.txt
[root@server0 ~]# ls -l /nsd07/

##################################################

Set UID

• 附加在属主的 x 位上
属主的权限标识会变为 s
适用于可执行文件,Set UID可以让使用者具有文件属主的身份及部分权限

[root@server0 ~]# /usr/bin/mkdir /opt/haha   
[root@server0 ~]# ls /opt/
[root@server0 ~]# cp /usr/bin/mkdir /usr/bin/hahadir
[root@server0 ~]# /usr/bin/hahadir /opt/xixi
[root@server0 ~]# ls /opt/
[root@server0 ~]# chmod u+s /usr/bin/hahadir 
[root@server0 ~]# ls -l /usr/bin/hahadir
[root@server0 ~]# su - lisi
[lisi@server0 ~]$ /usr/bin/mkdir  test01
[lisi@server0 ~]$ /usr/bin/hahadir test02
[lisi@server0 ~]$ ls
test01  test02
[lisi@server0 ~]$ ls -l
[lisi@server0 ~]$ exit

###################################################

Sticky Bit

• 附加在其他人的 x 位上
其他人的权限标识会变为 t
适用于开放 w 权限的目录,可以阻止用户滥用 w 写入权限(禁止操作别人的文档)

[root@server0 ~]# mkdir /public
[root@server0 ~]# chmod ugo=rwx /public
[root@server0 ~]# ls -ld /public

[root@server0 ~]# chmod o+t /public/
[root@server0 ~]# ls -ld /public/

##################################################

ACL权限(策略)

acl策略的作用
• 文档归属的局限性
– 任何人只属于三种角色:属主、属组、其他人
– 无法实现更精细的控制

• acl访问策略
– 能够对个别用户、个别组设置独立的权限
– 大多数挂载的EXT3/4、XFS文件系统默认已支持

设置acl访问控制策略
• 使用 getfacl、setfacl 命令
– getfacl 文档...(查看acl权限)
– setfacl -R -m u:用户名:权限类别 文档...
– setfacl -R -m g:组名:权限类别 文档...
– setfacl -R -b 文档... #删除所有ACL策略
– setfacl -R -x u:用户名 文档... #删除指定ACL策略

[root@server0 ~]# mkdir /nsd01
[root@server0 ~]# chmod o=--- /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# su - student
[student@server0 ~]$ cd /nsd01
-bash: cd: /nsd01: Permission denied
[student@server0 ~]$ exit
logout
[root@server0 ~]# setfacl -m  u:student:rx  /nsd01
[root@server0 ~]# getfacl /nsd01   #查看ACL策略
[root@server0 ~]# su - student
[student@server0 ~]$ cd /nsd01
[student@server0 nsd01]$ pwd

#####################################################

[root@server0 ~]# mkdir /nsd02
[root@server0 ~]# setfacl -m u:student:rwx /nsd02
[root@server0 ~]# setfacl -m u:dc:rx /nsd02
[root@server0 ~]# setfacl -m u:lisi:rx /nsd02
[root@server0 ~]# setfacl -m u:zhangsan:rwx /nsd02

[root@server0 ~]# getfacl /nsd02
[root@server0 ~]# setfacl -x u:dc  /nsd02   #删除指定ACL
[root@server0 ~]# getfacl /nsd02

[root@server0 ~]# setfacl -b /nsd02  #删除所有ACL策略
[root@server0 ~]# getfacl /nsd02

###################################################

设置黑名单

[root@server0 ~]# mkdir /public            
[root@server0 ~]# chmod ugo=rwx /public
[root@server0 ~]# ls -ld /public

[root@server0 ~]# setfacl -m u:lisi:--- /public
[root@server0 ~]# getfacl /public

[root@server0 ~]# su - lisi
[lisi@server0 ~]$ cd /public/
-bash: cd: /public/: Permission denied
[lisi@server0 ~]$ ls /public/
ls: cannot open directory /public/: Permission denied
[lisi@server0 ~]$ exit

标签:ld,nsd01,基础,server0,命令,ls,linux,权限,root
From: https://www.cnblogs.com/qgw258/p/17999289

相关文章

  • 安全运维:cmd命令大全(108个)
    1、calc:启动计算器2、appwiz.cpl:程序和功能3、certmgr.msc:证书管理实用程序4、charmap:启动字符映射表5、chkdsk.exe:Chkdsk磁盘检查(管理员身份运行命令提示符)6、cleanmgr:打开磁盘清理工具7、cliconfg:SQLSERVER客户端网络实用工具8、cmstp:连接管理器配置文件安装程序9......
  • NanoFramework操作ESP32(一)_基础元器件篇(二十五)_ KY-018光敏传感器
    一、元器件介绍   KY-020倾斜开关模块由一个10kΩ电阻器和一个具有双向导电性的金属球开关组成,该开关根据倾斜程度来打开/关闭电路。它不测量倾斜角。当电路向侧面倾斜时,只要以足够的力和倾斜度移动电路,即可激活内部的球开关,从而使电路闭合(稳定后电路断开)。以输出低电平电压......
  • ffmpeg 工具及命令介绍
    ffprobe工具介绍查看帮助信息:ffprobe--help使用方式:ffprobe[OPTIONS][INPUT_FILE]查看多媒体数据包:ffprobe-show_packetsoutput.mp4ffprobe-show_packets-show_dataoutput.mp4查看封装格式:ffprobe-show_formatoutput.mp4查看视频文件的帧信息:ffprobe-sh......
  • Unity xLua开发环境搭建与基础进阶
    Unity是一款非常流行的游戏开发引擎,而xLua是一个为Unity开发者提供的Lua框架,可以让开发者使用Lua语言来进行游戏开发。在本文中,我们将介绍如何搭建UnityxLua开发环境,并进行基础进阶的学习。 对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游戏的零基础小白,也有一些正......
  • Linux文本三剑客超详细教程---grep、sed、awk
    Linux文本三剑客超详细教程---grep、sed、awk羽林君 2023-10-1223:51 广东文章来源:https://www.cnblogs.com/along21/p/10366886.html awk、grep、sed是linux操作文本的三大利器,合称文本三剑客,也是必须掌握的linux命令之一。三者的功能都是处理文本,但侧重点各不相......
  • MySQL基础语句概括
    1.DDL语句(1)DDL数据库操作SHOWDATABASES;//显示当前数据库列表CREATEDATABASE数据库名;//创建数据库USE数据库名;//转到指定数据库SELECTDATABASE();//返回当前数据库名称(2)DDL表操作SHOWTABLES;CREATETABLE表名(字段......
  • 最全linux查找漏洞武器大全,快来挑一件你趁手的兵器吧
    最全linux查找漏洞武器大全,快来挑一件你趁手的兵器吧原创 波哥 IT运维技术圈 2024-02-2219:13 广东 听全文Linux下有多种工具和软件可以用来查找系统中的漏洞。以下是一些常用的工具,它们有免费的版本,也有提供更高级的付费版本:1.Nessus简介:Nessus是一款广泛......
  • 如何实现零基础转行做测试开发,入职3个月后涨薪30%
    本文为霍格沃兹测试学院优秀学员笔记,测试开发进阶学习文末加群。本人本科所学专业是统计学,毕业后从事数据分析相关工作,然而,在工作的过程中,我对编码产生了浓厚的兴趣,对编程的热爱驱使我最终决定转行,并成功考取了软件工程的非全日制研究生。尽管非全日制的软件工程硕士学位让我......
  • docker常用命令
    docker教程1镜像相关1.1查看镜像列表sudodockerimages1.2镜像搜索比如搜索ubuntu基础镜像sudodockersearchubuntu可输出官方的镜像名称,以及star数量,选择一个需要的镜像下拉即可1.3下拉镜像sudodockerpull镜像名sudodockerpull镜像名:Tag1.4查看镜......
  • 修改linux终端命令行各字体颜色
    1.了解PS1PS1是Linux终端用户的一个环境变量,用来定义命令行提示符的参数。在终端输入命令: echo$PS1     PS1的常用参数以及含义:\d:代表日期,格式为weekdaymonthdate,例如:"MonAug1"\H:完整的主机名称\h:仅取主机名中的第一个名字\t:......