企业网站的概念,程序员外包接单,锦州网站建设品牌,discuz论坛官网Linux权限 前言一、shell命令以及运行原理二、Linux权限的概念Linux权限管理文件访问者的分类#xff08;人#xff09;文件类型和访问权限#xff08;事物属性#xff09;文件权限值的表示方法文件访问权限的相关设置方法 file指令目录的权限粘滞位 总结 前言
linux的学习… Linux权限 前言一、shell命令以及运行原理二、Linux权限的概念Linux权限管理文件访问者的分类人文件类型和访问权限事物属性文件权限值的表示方法文件访问权限的相关设置方法 file指令目录的权限粘滞位 总结 前言
linux的学习开始啦 今天我们继续来认识指令 认真学习吧到达你曾无限向往的地方 注本文操作实现均在虚拟机上运行 一、shell命令以及运行原理
Linux严格意义上说的是一个操作系统我们称之为“核心kernel“ 但我们一般用户不能直接使用kernel。 而是通过kernel的“外壳”程序也就是所谓的shell来与kernel沟通。如何理解为什么不能直接使用kernel 从技术角度Shell的最简单定义命令行解释器command Interpreter主要包含 将使用者的命令翻译给核心kernel处理。 同时将核心的处理结果翻译给使用者。 对比windows GUI我们操作windows 不是直接操作windows内核而是通过图形接口点击从而完成我们的操作比如进入D盘的操作我们通常是双击D盘盘符.或者运行起来一个应用程序。 shell 对于Linux有相同的作用主要是对我们的指令进行解析解析指令给Linux内核。反馈结果在通过内核运行出结果通过shell解析给用户。
怎么类比呢就好比一个常年在家办公的程序员到了适婚的年纪就需要找到业务熟练的媒婆shell来说一门亲事从而与另一人家的姑娘操作系统谈起婚嫁
二、Linux权限的概念
Linux下有两种用户超级用户root、普通用户。 . 超级用户可以再linux系统下做任何事情不受限制 . 普通用户在linux下做有限的事情。 . 超级用户的命令提示符是“#”普通用户的命令提示符是“$”。 命令su [用户名] 功能切换用户。 例如要从root用户切换到普通用户user则使用 su user。 要从普通用户user切换到root用户则使用 su rootroot可以省略此时系统会提示输入root用户的口令 Linux权限管理
文件访问者的分类人
. 文件和文件目录的所有者u—User中国平民 法律问题 . 文件和文件目录的所有者所在的组的用户g—Group不多说 . 其它用户o—Others 外国人
文件类型和访问权限事物属性 文件类型 d文件夹 -普通文件 l软链接类似Windows的快捷方式 b块设备文件例如硬盘、光驱等 p管道文件 c字符设备文件例如屏幕等串口设备 s套接口文件 基本权限 i.读r/4Read对文件而言具有读取文件内容的权限对目录来说具有浏览该目录信息的权限 ii.写w/2Write对文件而言具有修改文件内容的权限对目录来说具有删除移动目录内文件的权限 iii.执行x/1execute对文件而言具有执行文件的权限对目录来说具有进入目录的权限 iv.“—”表示不具有该项权限
文件权限值的表示方法
字符表示方法 8进制数值表示方法 文件访问权限的相关设置方法
chmod 功能 设置文件的访问权限 格式 chmod [参数] 权限 文件名 常用选项 R - 递归修改目录文件的权限 说明只有文件的拥有者和root才可以改变文件的权限 chmod命令权限值的格式
用户表示符/-权限字符 :向权限范围增加权限代号所表示的权限 -:向权限范围取消权限代号所表示的权限 :向权限范围赋予权限代号所表示的权限 用户符号 u拥有者 g拥有者同组用 o其它用户 a所有用户
实例
# chmod uw /home/abc.txt
# chmod o-x /home/abc.txtchmod ax /home/abc.txt
三位8进制数字 实例
# chmod 664 /home/abc.txt
# chmod 640 /home/abc.txtchown 功能 修改文件的拥有者 格式 chown [参数] 用户名 文件名 实例
# chown user1 f1
# chown -R user1 filegroup1chgrp 功能 修改文件或目录的所属组 格式 chgrp [参数] 用户组名 文件名 常用选项-R 递归修改文件或目录的所属组 实例
chgrp users /abc/f2
umask 功能 查看或修改文件掩码 新建文件夹默认权限0666 新建目录默认权限0777 但实际上你所创建的文件和目录看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask则实际创建的出来的文件权限是: mask ~umask 格式 umask 权限值 说明 将现有的存取权限减去权限掩码后即可产生建立文件时预设权限。超级用户默认掩码值为0022普通用户默认为0002。 实例
# umask 755
# umask //查看
# umask 044//设置file指令
功能说明 辨识文件类型。 语法 file [选项] 文件或目录… 常用选项 -c 详细显示指令执行过程便于排错或分析程序执行的情形。 -z 尝试去解读压缩文件的内容
使用 sudo分配权限 修改/etc/sudoers 文件分配文件
# chmod 740 /etc/sudoers
# vi /etc/sudoer格式接受权限的用户登陆的主机 执行命令的用户 命令
使用 sudo 调用授权的命令
$ sudo –u 用户名 命令实例
$ sudo -u root /usr/sbin/useradd u2目录的权限
可执行权限: 如果目录没有可执行权限, 则无法cd到目录中. 可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容. 可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件
于是, 问题来了~~ 换句话来讲, 就是只要用户具有目录的写权限, 用户就可以删除目录中的文件, 而不论这个用户是否有这个文件的写权限.
那怎么解决这个问题内容 为了解决这个不科学的问题, Linux引入了粘滞位的概念
粘滞位
示例
[rootlocalhost ~]# chmod t /home/ # 加上粘滞位
[rootlocalhost ~]# ls -ld /home/
drwxrwxrwt. 3 root root 4096 9月 19 16:00 /home/
[rootlocalhost ~]# su - litao
[litaolocalhost ~]$ rm /home/abc.c #litao不能删除别人的文件
rm是否删除有写保护的普通空文件 /home/abc.cy
rm: 无法删除/home/abc.c: 不允许的操作当一个目录被设置为粘滞位(用chmod t),则该目录下的文件只能由 一、超级管理员删除 二、该目录的所有者删除 三、该文件的所有者删除 总结
目录的可执行权限是表示你可否在目录下执行命令 如果目录没有-x权限则无法对目录执行任何命令甚至无法cd 进入目, 即使目录仍然有-r 读权限这个地方很容易犯错认为有读权限就可以进入目录读取目录下的文件 而如果目录具有-x权限但没有-r权限则用户可以执行命令可以cd进入目录。但由于没有目录的读 权限 所以在目录下即使可以执行ls命令但仍然没有权限读出目录下的文档。