网站备案转服务器,拓客渠道有哪些,汕头市小程序定制公司,开发网站需要什么人员目录
shell的原理
Linux权限
sudo命令提权
权限
文件的属性
⽂件类型#xff1a;
基本权限#xff1a;
chmod改权限
umask
chown 该拥有者
chgrp 改所属组
最后#xff1a;
目录权限
粘滞位 shell的原理 我们广义上的Linux系统 Linux内核Linux外壳
Linux严格… 目录
shell的原理
Linux权限
sudo命令提权
权限
文件的属性
⽂件类型
基本权限
chmod改权限
umask
chown 该拥有者
chgrp 改所属组
最后
目录权限
粘滞位 shell的原理 我们广义上的Linux系统 Linux内核Linux外壳
Linux严格意义上说的是⼀个操作系统我们称之为“核⼼kernel“但我们⼀般⽤⼾不能直接 使⽤kernel。⽽是通过kernel的“外壳”程序也就是所谓的shell来与kernel沟通。
为什么要有一个外壳呢 首先我们的用户不擅长和我们的内核进行访问并且我们的内核也不会同意让用户直接和它进行访问 所以我们的外壳会将我们的指令翻译交给我们的内核我们外壳在将我们的内核的处理的结果翻译给我们的用户。 从技术⻆度
Shell的最简单定义命令⾏解释器commandInterpreter
主要包含 将使⽤者的命令翻译给核⼼kernel处理。 同时将核⼼的处理结果翻译给使⽤者 在我们的Windows系统中我们的外壳程序就是我们的图形化界面我们通过单击或者双击我们的图形从完成我们的操作。 为了保证我们的外壳程序的稳定性我们可以创建一个子进程来帮我们 进行命令行解释在我们的xshell中我们的具体外壳程序是我们的bash。 Linux权限
Linux的用户分为两种
超级用户和普通用户 超级用户可以再linux系统下做任何事情不受限制 普通用户在linux下做有限的事情。 超级用户的命令提示符是“#”普通用户的命令提示是“$”。
命令su [⽤⼾名]
功能切换⽤⼾。
例如要从root⽤⼾切换到普通⽤⼾user则使⽤suuser不用输入密码。 要从普通⽤⼾user切换到root⽤⼾则使⽤surootroot可以省略此时系统会提⽰输⼊root⽤⼾的 ⼝令。
sudo命令提权
普通用户如果我们不想进行身份切换而对一条命令进行身份提权。就是用我们的sudo 命令
这个时候我们还是要我们输入密码但是使用自己的密码。而不是我们的root的密码
但是我们的sudo不一定能用是因为我们系统中存在一个类似于白名单的东西在文件/etc/sudoer中的配置文件中。
你将我们自己的用户添加在这个配置文件中再去执行我们sudo就可以一超级用户的权限去执行了 sudo 命令 权限
权限人事物属性。
我们Linux当中的权限是指文件的权限。
对于文件来说 拥有者 other 所属组 但我们的用户不是拥有者也不是所属组就是other。 我们Linux为了进行更加细粒度的权限管理就有我们的所属组。 文件的属性
我们自己想做一件事情一方面取决于我们的是谁另一方面取决于我们的文件的属性
比如我们不能在我们的爱奇艺中进行编程不能再我们的leedcode进行看电影。
⽂件类型 d⽂件夹 -普通⽂件 ◦ l软链接类似Windows的快捷⽅式 b块设备⽂件例如硬盘、光驱等 p管道⽂件 c字符设备⽂件例如屏幕等串⼝设备 s套接⼝⽂件
基本权限 读r/4Read对⽂件⽽⾔具有读取⽂件内容的权限对⽬录来说具有浏览该⽬录信息 的权 限 ◦ 写w/2Write对⽂件⽽⾔具有修改⽂件内容的权限对⽬录来说具有删除移动⽬录内 ⽂件的权限 执⾏x/1execute对⽂件⽽⾔具有执⾏⽂件的权限对⽬录来说具有进⼊⽬录的权 限 ◦ “—”表⽰不具有该项权限 我们如何第一个人进行身份认证呢
我们先将我们一个具体的人属于什么身份判定清楚之后他是什么身份就拥有什么权限。
我们在确定身份的时候只能确定一次顺序为 拥有者、所属组、other。
chmod改权限
功能设置⽂件的访问权限
格式chmod[参数]权限⽂件名
常⽤选项 R-递归修改⽬录⽂件的权限
只有⽂件的拥有者和root才可以改变⽂件的权限
chmod命令权限值的格式 • ⽤⼾表⽰符/-权限字符 :向权限范围增加权限代号所表⽰的权限 -:向权限范围取消权限代号所表⽰的权限 :向权限范围赋予权限代号所表⽰的权限
⽤⼾符号 u拥有者 g拥有者同组⽤ o其它⽤⼾ a所有⽤⼾ 例子chmod uw /home/abc.txt chmod o-x /home/abc.txt chmod ax /home/abc.txt 注意我们给我们的文件加上我们的可执行权限我们的文件不一定能够可执行。
因为我们的文件可执行需要文件本身就可以执行并且具有可执行权限。 我们的权限是说是否有读/写/可执行具有两面性我们转化为二进制就可以用1/0来表示。
例子 rw-就是110。
我们的110转化为八进制就是我们的6
我们可以用三个八进制数字来代表所有用户的权限。
三位8进制数字
实例 chmod 664 /home/abc.txt
chmod 640 /home/abc.txt umask
功能 查看或修改⽂件掩码
新建⽂件夹默认权限0666
新建⽬录默认权限0777 但实际上你所创建的⽂件和⽬录看到的权限往往不是上⾯这个值。原因就是创建⽂件或⽬录的 时候还要受到umask的影响。 假设默认权限是mask则实际创建的出来的⽂件权限是: mask ~umask 格式umask 权限值
说明将现有的存取权限减去权限掩码后即可产⽣建⽴⽂件时预设权限。超级⽤⼾默认掩码值为 0022普通⽤⼾默认为0002。
实例 • umask 755 • umask //查看 • umask 044//设置 我们不仅能够改权限还可以改我们的拥有者
chown 该拥有者
功能修改⽂件的拥有者
格式chown[参数]⽤⼾名⽂件名 例子chown user1 f1 chown -R user1 filegroup1 chgrp 改所属组
功能修改⽂件或⽬录的所属组
格式chgrp[参数]⽤⼾组名⽂件名
常⽤选项
-R递归修改⽂件或⽬录的所属组
实例 chgrp users /abc/f2
最后 我们把文件给别人需要得到别人的允许草鸡用户不需要可以直接给但是去询问不方便我们一般直接sudo权限提权去进行。 目录权限 可执⾏权限:如果⽬录没有可执⾏权限,则⽆法cd到⽬录中. 可读权限:如果⽬录没有可读权限,则⽆法⽤ls等命令查看⽬录中的⽂件内容. 可写权限:如果⽬录没有可写权限,则⽆法在⽬录中创建⽂件,也⽆法在⽬录中删除⽂件. 于是,问题来了~~换句话来讲,就是只要⽤⼾具有⽬录的写权限,⽤⼾就可以删除⽬录中的⽂件,⽽不论 这个⽤⼾是否有这个⽂件的写权限. 这好像不太科学啊,我张三创建的⼀个⽂件,凭什么被你李四可以删掉? 所以我们的Linux中引出了粘滞位的概念
粘滞位
粘滞位 是类Linux系统如Linux、macOS中的一个特殊文件权限标志通常用于控制文件或目录的访问权限特别是在公共目录中。它通常用来限制用户对文件的删除或重命名权限即使该用户对该目录有写权限。
作用 当一个目录设置了粘滞位时即使目录中的文件的所有者具有删除或修改该文件的权限其他用户只能删除自己创建的文件或目录而不能删除其他用户的文件。这样可以避免用户误删或恶意删除其他用户的文件。 设置粘滞位的常见用途 公共目录对于共享的公共目录例如 /tmp粘滞位防止了非所有者的用户删除或重命名其他人的文件。 安全性通过使用粘滞位可以确保其他用户不会干扰你在公共目录中的文件即使他们也有写权限。 在文件或目录的权限部分粘滞位通常以 t 表示。如果你使用 ls -l 命令查看一个目录的权限并看到 t就表示该目录设置了粘滞位。 你可以使用 chmod 命令来设置粘滞位。
设置粘滞位 chmod t /path/to/directory 总结 粘滞位 用于控制用户在公共目录中的删除权限。 设置了粘滞位的目录用户只能删除自己创建的文件而无法删除其他人的文件即使他们对该目录有写权限。 通常用于如 /tmp 这样的临时目录中防止用户误删或恶意删除其他人的文件。