linux(文件+权限)[2]

shell

在Linux下,Shell是一种命令行解释器,它是用户与操作系统之间进行交互的接口。Shell可以解析用户输入的命令,并将其转化为操作系统可以理解和执行的指令。它提供了一种方便、灵活的方式来管理和操作系统资源。

以下是Shell的一些主要意义:

  1. 执行命令:Shell可以执行用户输入的命令,包括系统命令、脚本命令和用户自定义的命令。用户可以通过Shell来启动应用程序、管理文件和目录、进行系统配置等操作。

  2. 脚本编程:Shell是一种脚本语言,可以编写脚本程序来自动化一系列任务。通过编写Shell脚本,可以实现批量处理、定时任务、系统管理等功能,提高工作效率。

  3. 系统管理:Shell提供了一系列管理和操作系统资源的命令和工具。通过Shell,可以管理用户和权限、安装和升级软件包、监控系统性能、配置网络等。

  4. 管道和重定向:Shell支持管道和重定向操作,可以将一个命令的输出作为另一个命令的输入,或者将命令的输出重定向到文件中。这样可以实现数据的流转和处理,提高命令的灵活性和复用性。

  5. 跨平台兼容性:Shell是跨平台的,可以在不同的操作系统上运行。在Linux下,常用的Shell包括Bash、Zsh、Ksh等,它们提供了类似的命令和语法,使得在不同的Linux发行版上具有一致的使用体验。

总的来说,Shell在Linux下具有重要的意义,它是用户与操作系统之间的桥梁,提供了一种方便、灵活和强大的方式来管理和操作系统资源。通过Shell,用户可以更好地利用和掌控Linux系统。

在这里插入图片描述
在这里插入图片描述

su

su - #将正在使用的用户申请为root用户
whoami  #查看当前用户状态
logout  #退出root
exit    #退出root

在这里插入图片描述

文件权限

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

修改文件权限

在Linux下,可以使用chmod命令来修改文件的权限。chmod命令可以通过符号模式或数字模式来指定权限。

  1. 符号模式修改权限:

    • 使用+表示添加权限,使用-表示移除权限。
    • 使用u表示文件所有者,g表示文件所属组,o表示其他用户,a表示所有用户。
    • 使用r表示读权限,w表示写权限,x表示执行权限。
    • 例如,要将文件file.txt的所有者添加读写权限,可以使用命令:chmod u+rw file.txt
  2. 数字模式修改权限:

    • 使用数字0-7来表示权限,其中每个数字对应一个权限组。

    • 数字0表示无权限,数字1表示执行权限,数字2表示写权限,数字4表示读权限。(1个8进制数表示一个使用者权限)
      rwx r-x r–
      111 101 100
      7 5 4

    • 将所需权限的数字相加,得到一个三位数,分别表示所有者、所属组和其他用户的权限。

    • 例如,要将文件file.txt的所有者设置为读写权限,所属组设置为读权限,其他用户设置为无权限,可以使用命令:chmod 640 file.txt

请注意,修改文件权限需要具有足够的权限。如果你不是文件的所有者或超级用户,可能需要使用sudo命令来获取足够的权限。

另外,还可以使用chown命令来修改文件的所有者和所属组,使用chgrp命令来修改文件的所属组。这些命令也需要足够的权限才能执行。

在Linux系统中,每个文件或目录都有一个所有者(owner)和一个所属组(group),同时还有一个其他用户(other)的权限设置。其他用户指的是既不是文件所有者,也不是所属组成员的用户。

在文件权限中,other用户的权限设置表示除了文件所有者和所属组成员之外的其他用户对该文件的权限。

通常情况下,对于其他用户,我们希望限制他们对文件的访问权限,以保护文件的安全性。因此,对于其他用户,我们不需要修改其权限,而是将其权限设置为较低的权限,例如只读或无权限。

这样做可以确保只有文件所有者和所属组成员能够对文件进行修改和执行操作,其他用户只能读取文件内容,而无法对文件进行修改或执行。

所以,为了保护文件的安全性,我们通常只需要修改文件的所有者和所属组的权限,而不需要修改其他用户的权限。

在这里插入图片描述
在这里插入图片描述
没有权限会提示:Permission denied

root不受权限的约束,而且可任意分配权限
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在Linux文件权限中,"权限只认证一次"是指在用户访问一个文件时,系统只会对用户的权限进行一次认证,然后将结果缓存起来,以后对该文件的访问都不会再重新进行权限认证,而是直接使用缓存的结果。

这种机制可以提高文件访问的效率,避免了每次访问文件时都需要进行权限认证的开销。但同时也带来了一定的安全风险,因为如果在用户访问文件之后,文件的权限发生了变化,用户仍然可以继续访问文件,因为系统仍然使用的是之前缓存的权限认证结果。

为了解决这个安全问题,Linux系统引入了文件的时间戳(timestamp)机制。文件的时间戳包括访问时间(atime)、修改时间(mtime)和变化时间(ctime)。当文件的权限发生变化时,系统会更新文件的变化时间,这样就可以通过检查文件的变化时间来判断是否需要重新进行权限认证。

总之,"权限只认证一次"是指系统在用户访问文件时只进行一次权限认证,并将结果缓存起来,以后对该文件的访问都不会再重新进行权限认证。这种机制提高了文件访问的效率,但需要注意文件的时间戳机制以确保安全性。
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值