CentOS 7 实战指南:文件或目录的权限操作命令详解

news2024/9/27 23:34:46

前言

这篇文章详细介绍了文件和目录的常用权限操作命令,并提供了全面的技术解析。通过本文,你将学习如何使用 chmod 和 chown 命令来管理文件和目录的权限,控制用户和用户组的访问权限。无论你是初学者还是有经验的系统管理员,这篇文章都将帮助你更好地理解和运用 CentOS 7 中的权限管理机制,提升系统安全性和管理效率。

文件、目录的权限操作相关命令

chmod

在 CentOS 7 中,chmod 命令用于修改文件或目录的权限。以下是 chmod 命令的使用方式和示例:

使用方式:

chmod [选项] 权限模式 文件/目录

常用选项:

  • -R:递归地修改文件夹及其子文件夹的权限。
  • -v:显示每个修改后的文件/目录的权限。

权限模式:

可以使用数字或符号来指定权限模式。

  • 数字模式:数字模式使用三位数,每一位表示一个权限组(所有者、所属组、其他用户),其中每一位的值为 4(读权限)、2(写权限)和 1(执行权限)的组合。例如,755 表示所有者具有读、写和执行权限,所属组和其他用户具有读和执行权限。
  • 符号模式:符号模式使用类似于 u+rwx、g+rw、o-x 的格式来指定权限。u 代表所有者,g 代表所属组,o 代表其他用户,+ 表示添加权限,- 表示移除权限,r 表示读权限,w 表示写权限,x 表示执行权限。例如,chmod u+rwx file.txt 表示给文件 file.txt 的所有者添加读、写和执行权限。

示例:

将文件 file.txt 的所有者和所属组的权限设置为读写,其他用户无权限:

chmod 660 file.txt

将文件夹 dir 及其子文件夹的所有者、所属组和其他用户的权限设置为读写执行:

chmod -R 777 dir

给文件 script.sh 的所有用户添加执行权限:

chmod a+x script.sh

给文件 file.txt 的所有者和所属组添加读权限,其他用户移除所有权限:

chmod u+r,g+r,o-rwx file.txt

chown

在 CentOS 7 中,chown 命令用于修改文件或目录的所有者。以下是 chown 命令的使用方式和示例:

使用方式:

chown [选项] 新所有者 文件/目录

常用选项:

  • -R:递归地修改文件夹及其子文件夹的所有者。
  • -v:显示每个修改后的文件/目录的所有者。

示例:

  • 将文件 file.txt 的所有者修改为 fanfu:
chown fanfu file.txt
  • 将目录 dir 及其子目录的所有者修改为 fanfu,同时显示修改过程:
chown -Rv fanfu dir
  • 将文件 file.txt 的所有者和所属组修改为 fanfu 和 yzxa:
chown fanfu:yzxa file.txt

chmod和chown的区别

chmod 和 chown 是两个在 CentOS(以及其他 Linux 发行版)中常用的命令,用于修改文件或目录的权限和所有者。它们的区别如下:

chmod 命令:

  • 作用:chmod 命令用于修改文件或目录的权限。
  • 使用方式:chmod 命令后面跟着权限模式和要修改权限的文件或目录路径。
  • 权限模式:可以使用数字(例如 755)或符号(例如 u+rwx)来指定权限模式。
  • 数字模式:数字模式使用三位数,每一位表示一个权限组(所有者、所属组、其他用户),其中每一位的值为 4(读权限)、2(写权限)和 1(执行权限)的组合。例如,755 表示所有者具有读、写和执行权限,所属组和其他用户具有读和执行权限。
  • 符号模式:符号模式使用类似于 u+rwx、g+rw、o-x 的格式来指定权限。u 代表所有者,g 代表所属组,o 代表其他用户,+ 表示添加权限,- 表示移除权限,r 表示读权限,w 表示写权限,x 表示执行权限。

chown 命令:

  • 作用:chown 命令用于修改文件或目录的所有者。
  • 使用方式:chown 命令后面跟着新的所有者和要修改所有者的文件或目录路径。
  • 所有者:可以使用用户名或用户 ID(UID)来指定新的所有者。

综上所述,chmod 用于修改文件或目录的权限,而 chown 用于修改文件或目录的所有者。它们是不同的命令,用途和参数也不同。在实际应用中,我们可以根据需要选择使用 chmod 或 chown 来对文件或目录进行相应的权限和所有者的修改操作。

chgrp

chgrp 指令用于修改文件或目录的所属组。它的语法如下:

chgrp [选项] 组名 文件/目录

常用的选项包括:

  • -R 选项表示递归地更改指定目录下的所有文件和子目录的用户组
  • -c, --changes:只在发生更改时显示处理信息。
  • -f, --silent, --quiet:不显示错误消息。
  • -v, --verbose:显示详细的处理信息。

下面是 chgrp 的常见使用方法示例:

  • 将文件 file.txt 的所属组更改为 yzxa:
chgrp yzxa file.txt
  • 将目录 dir 及其所有内容的所属组更改为 yzxa(递归操作):
chgrp -R yzxa dir
  • 将符号链接 symlink 的目标文件所属组更改为 root:
chgrp root symlink

注意:chgrp 指令修改的是文件或目录的所属组,而不是权限。如果需要修改权限,请使用 chmod 指令。

ls

ls 是一个常用的命令,其作用是列出指定目录下的文件和子目录。下面是 ls 命令的一些常见可选参数:

  • -a:显示所有文件(包括以.开头的隐藏文件)。
  • -l:以长格式显示文件的详细信息,包括权限、所有者、大小、修改日期等。
  • -h:以人类可读的方式显示文件大小。
  • -r:反向排序,按字母降序排列。
  • -t:按修改时间排序,最近修改的文件在前。

这些参数可以根据需要进行组合使用。以下是一些示例:

列出当前目录下的所有文件和子目录:

ls

列出当前目录下的所有文件和子目录,包括隐藏文件:

ls -a

以长格式显示当前目录下的所有文件和子目录:

ls -l

以人类可读的方式显示当前目录下的所有文件和子目录:

ls -h

以反向排序的方式列出当前目录下的所有文件和子目录:

ls -r

按修改时间排序,列出当前目录下的所有文件和子目录:

ls -t

列出当前目录下所有文件和子目录的详细信息并按其修改时间进行降序排列:

ls -lt

ls -l 命令以长格式显示文件的详细信息,输出的内容包括以下几个字段:

  • 文件类型和权限:第一列显示了文件的类型和权限信息。第一个字符表示文件类型,常见的类型包括:
    • -:普通文件
    • d:目录
    • l:符号链接
    • c:字符设备文件
    • b:块设备文件
    • s:套接字(socket)
    • p:命名管道(FIFO)
    • 接下来的九个字符表示文件的权限,每三个字符为一组,分别表示所有者(Owner)、所属组(Group)和其他用户(Others)的权限。每组权限字符包括读取(r)、写入(w)和执行(x)的权限。如果某个权限对应的字符是 -,表示没有该权限。
  • 连接数(Links):第二列显示了指向该文件的硬链接数量。
  • 所有者(Owner):第三列显示了文件的所有者。
  • 所属组(Group):第四列显示了文件的所属组。
  • 文件大小(Size):第五列显示了文件的大小,以字节为单位。
  • 修改日期和时间:第六列和第七列显示了文件的最近修改日期和时间。
  • 文件名:最后一列显示了文件或目录的名称。

就以上面截图上为例来说明一下:

drwxr-xr-x. 2 root root  6 12月 30 17:06 book
-rw-r--r--. 1 root root  0 12月 30 17:05 apt.txt
-rw-r--r--. 1 root root 15 12月 30 16:50 test.txt

在这个示例中,第一行第一列显示了文件类型和权限,第一行是d,表示目录,目录的名称是book;第二、三行的第一列是-,则表示是普通文件,这些文件的名称是app.txt、test.txt,再往后连续九位,每三个字符为一组,分别表示所有者(Owner)、所属组(Group)和其他用户(Others)的权限,每组权限字符包括读取(r)、写入(w)和执行(x)的权限。如果某个权限对应的字符是 -,表示没有该权限;第二列显示了链接数,第三列和第四列显示了文件的所有者和所属组,第五列显示了文件大小,第六列和第七列显示了最近修改的日期和时间,最后一列显示了文件或目录的名称。

su

su 命令用于切换到其他用户的身份。在 CentOS 7 系统中,su 命令的语法如下所示:

su [选项] [用户名]

如果没有指定用户名,su 命令默认切换到 root 用户的身份。常用的选项包括:

  • -c, --command 命令:执行指定的命令后立即退出。
  • -s, --shell shell:使用指定的shell。
  • -l, --login:模拟登录为目标用户。

下面是 su 命令的一些常见使用方法示例:

切换到 root 用户:

su

切换到另一个用户(例如 fanfu)并执行命令:

su -c "command" fanfu

切换到另一个用户(例如 fanfu)并使用特定的 shell(例如 /bin/bash):

su -s /bin/bash fanfu

模拟登录为另一个用户(例如 fanfu):

su -l fanfu

需要注意的是,在切换到其他用户时,你可能需要输入目标用户的密码才能成功切换。

sudo

sudo 命令用于以其他用户的身份执行命令,通常是以 root 用户的身份执行。在 CentOS 7 系统中,sudo 命令的语法如下所示:

sudo [选项] 命令

常用的选项包括:

  • -u, --user 用户:以指定的用户身份执行命令。
  • -i, --login:模拟登录为目标用户,加载目标用户的环境变量。
  • -s, --shell:使用目标用户的 shell 执行命令。

下面是 sudo 命令的一些常见使用方法示例:

  • 以 root 用户身份执行命令:
sudo command
  • 以其他用户(例如 fanfu)的身份执行命令:
sudo -u fanfu command
  • 以登录为其他用户(例如 fanfu)执行命令:
sudo -i -u fanfu command
  • 以目标用户的 shell 执行命令:
sudo -s -u fanfu command

需要注意的是,,在执行 sudo 命令时,你需要输入当前用户的密码来确认权限。

写在最后

喜欢这篇关于 CentOS 7 实战指南的文章吗?如果是的话,不妨给它一个点赞,让更多人看到这份精彩的技术指南。你可以点击文章下方的点赞按钮,表达你的喜爱和支持。

此外,如果你觉得这篇文章非常有价值并希望将其保存起来以备将来参考,别忘了点击收藏按钮。收藏后,你可以随时回顾文章内容,深入了解 CentOS 7 文件和目录权限操作的要点。

感谢你对我们文章的阅读和支持!你的点赞和收藏将是我持续提供优质技术内容的动力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1364014.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

synchronized、volatile关键字

Java中的synchronized关键字 synchronized关键字介绍 synchronized块是Java提供的一种原子性内置锁,Java中的每个对象都可以把它当作一个同步锁来使用,这些Java内置的使用者看不到的锁被称为内部锁,也叫作监视器锁。 线程的执行代码在进入…

ssm基于JSP的明水县苹果网吧计费管理系统的设计与实现论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本明水县苹果网吧计费管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大…

Guava:Cache强大的本地缓存框架

Guava Cache是一款非常优秀的本地缓存框架。 一、 经典配置 Guava Cache 的数据结构跟 JDK1.7 的 ConcurrentHashMap 类似,提供了基于时间、容量、引用三种回收策略,以及自动加载、访问统计等功能。 基本的配置 Testpublic void testLoadingCache() th…

【精通C语言】:深入解析C语言中的while循环

🎥 屿小夏 : 个人主页 🔥个人专栏 : C语言详解 🌄 莫道桑榆晚,为霞尚满天! 文章目录 📑前言一、while循环1.1语法1.2 执行过程解析1.3 break1.4 continue 🌤️全篇总结 &…

基于Java SSM框架实现旅游资源网站系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现旅游资源网站系统演示 摘要 本论文主要论述了如何使用JAVA语言开发一个旅游资源网站 ,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述旅…

Windows server——部署DHCP服务(2)

作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一.配置DHCP服务 1.DHCP安装的要求 安装DHCP服务器需要满足如下要求&#…

springboot第47集:【思维导图】面向对象,关键字,标识符,变量,数组的使用...

关键字:class,public,static,void等,特点是全部关键字都是小写字母。 image.png image.png 凡是自己起的名字可以叫标识符 image.png image.png image.png image.png 整数类型的使用 image.png image.png image.png 浮点类型 image.png image.png 字符类…

iPhone 恢复出厂设置后如何恢复数据

如果您在 iPhone 上执行了恢复出厂设置,您会发现所有旧数据都被清除了。这对于清理混乱和提高设备性能非常有用,但如果您忘记保存重要文件,那就是坏消息了。 恢复出厂设置后可以恢复数据吗?是的!幸运的是,…

八大算法排序@冒泡排序(C语言版本)

冒泡排序 概念 冒泡排序(Bubble Sort)是一种简单直观的排序算法,它重复地遍历待排序序列,一次比较两个相邻的元素,如果它们的顺序错误就将它们交换过来。通过多次的遍历,使得最大的元素逐渐移动到待排序序…

使用monai.visualize.utils.matshow3d函数展示3D医学图像

monai.visualize.utils.matshow3d 函数是 MONAI 包中用于可视化 3D 图像数据的一个实用工具函数。它可以在平面中显示一个或多个3D图像,并提供一些参数来控制显示的方式和外观。 先导入需要的包 import numpy as np import matplotlib.pyplot as plt from monai.v…

C#,入门教程(10)——常量、变量与命名规则的基础知识

上一篇: C#,入门教程(09)——运算符的基础知识https://blog.csdn.net/beijinghorn/article/details/123908269 C#用于保存计算数据的元素,称为“变量”。 其中一般不改变初值的变量,称为常变量,简称“常量”。 无论…

阿里云服务器地域怎么选择?2024地域选择方法

阿里云服务器地域和可用区怎么选择?地域是指云服务器所在物理数据中心的位置,地域选择就近选择,访客距离地域所在城市越近网络延迟越低,速度就越快;可用区是指同一个地域下,网络和电力相互独立的区域&#…

FineBI实战项目一(3):Kettle实现ETL到数据仓库

目前,finebi_shop_bi 中是没有任何数据的,是一个空的数据库。而后续我们的所有数据分析都将在该数据库中进行。我们第一件事情就是要将 「finebi_shop」数据库中的所有表抽取到「finebi_shop_bi」数据库中。要抽取并装载数据到「finebi_shop_bi」中&…

Redisson 源码解析 - 分布式锁实现过程

一、Redisson 分布式锁源码解析 Redisson是架设在Redis基础上的一个Java驻内存数据网格。在基于NIO的Netty框架上,充分的利用了Redis键值数据库提供的一系列优势,在Java实用工具包中常用接口的基础上,为使用者提供了一系列具有分布式特性的常…

查看网络信息的原初 ifconfig

文章目录 查看网络信息的原初 ifconfig默认无参数使用-s显示短列表配置IP地址修改MTU启动关闭网卡更多信息 查看网络信息的原初 ifconfig Linux ifconfig命令用于显示或设置网络设备,在调试或调优的时间经常使用。 官方定义为: ifconfig - configure a…

19道ElasticSearch面试题(很全)

1. elasticsearch的一些调优手段 1、设计阶段调优 (1)根据业务增量需求,采取基于日期模板创建索引,通过 roll over API 滚动索引; (2)使用别名进行索引管理; (3&…

linux中最常用的网络命令

文章目录 linux中最常用的网络命令查看网络信息的原初 ifconfig默认无参数使用-s显示短列表配置IP地址修改MTU启动关闭网卡 网络中不中,先看ping行不行语法不加任何参数发送指定数目设定发送时间间隔组合使用 Linux ip命令显示网络设备设置IP地址启动关闭网卡统计方…

如何使用 CMake 生成一个静态库

文章目录 tutorial_3/CMakeLists.txttutorial_3/src/CMakeLists.txtcmake_tutorial/tutorial_3/src/hello.cpptutorial_3/src/hello.h根目录的 CMakeLists.txtsrc 目录的 CMakeLists.txthello.cpp 和 hello.h构建过程总结 tutorial_3/CMakeLists.txt cmake_minimum_required(V…

【AI视野·今日Robot 机器人论文速览 第六十七期】Mon, 1 Jan 2024

AI视野今日CS.Robotics 机器人学论文速览 Mon, 1 Jan 2024 Totally 16 papers 👉上期速览✈更多精彩请移步主页 Daily Robotics Papers MURP: Multi-Agent Ultra-Wideband Relative Pose Estimation with Constrained Communications in 3D Environments Authors A…

leetcode算法题之递归--综合练习(一)

此专题对我们之前所学的关于递归的内容进行一个整合,大家可以自行练习,提升自己的编码能力。 本章目录 1.找出所有子集的异或总和在求和2.全排列II3.电话号码的字母组合4.括号生成5.组合6.目标和7.组合总和8.字母大小写全排列9.优美的排列 1.找出所有子…