Linux文件权限

2023-11-19

Linux用户分为:拥有者、组群(Group)、其他(other)

Linux系統中,预设的情況下,系統中所有的帐号与一般身份使用者,以及root的相关信息, 都是记录在/etc/passwd文件中。每个人的密码则是记录在/etc/shadow文件下。 此外,所有的组群名称记录在/etc/group內!

Linux文件权限 - secyaher - 隐龙 为了一生的信念








--图A
Linux文件权限 - secyaher - 隐龙 为了一生的信念










--图B

文件类型部分(档案类型):
-为:表示文件
d为:表示文件夹
l为:表示链接文件,可以理解为 windows中的快捷方式(link file)
b为:表示里面可以供存储周边设备
c为:表示里面为一次性读取装置

接下来的部分中,以三个字母为一組,均为『 rwx』 三个参数组合。其中,[ r ]代表可读(read)、[ w ]代表可写(write)、[ x ]代表可执行(execute)。 三个参数的位置不会改变,如果没有相对应的权限,则该位置出现减号[ - ]。

第一组为:拥有者的权限
第二组为:组群的权限
第三组为:其他的权限

文件大小的单位为:字节--bytes

-----------------------------------
*如果一个文件夹在组群、其他的使用者权限中,仅拥有r的权限,没有x权限,则组群、其他 都无法进入该目录(文件没有x权限,则仅仅能读该文件)
对于文件夹而言,r表示能够获得文件夹中的文件,w表示可在文件夹中创建文件等,x则代表是否有权进入该文件夹


更改文件权限
:
chgrp:更改文件/文件夹 所属组群    chgrp 组群 xxx        //组群为系统中存在的组群,xxx为所要更改的文件或文件夹
chown:更改文件/文件夹 所有者   chown 拥有者 xxx       //拥有者为系统中存在的用户,xxx为所要更改的文件或文件夹
   *將文件的拥有者与组群改回为root:
     chown root:root xxx      //使用冒号,区分拥有者与组群 root:root ,xxx为文件或文件夹)

     当使用cp将文件copy给其他人使用时,则需要更改文件/文件夹的拥有者为对方,否则对方在非root账户下将无法查看这个文件或者文件夹
chmod:改变文件/文件夹 权限
*数字可代表各种权限,具体如下:
r:4    w:2    x:1
如果权限为:rwx(可读、可写、可执行) 分数为:4+2+1 =7
rw-(可读、可写)分数为:4+2+0=6
r--   (可读) 分数为:4+0+0=4
将权限改为『  -rwxr-x--- 』--权限的分数应该是:  [4+2+1][4+0+1][0+0+0]=750
chmod 777 xxx       //将xxx权限修改为
『  drwxrwxrwx 』


 使用符号改变权限:
chmod u
g
o
a
+(加入)
-(减去)
=(设置)
r
w
x
文件或文件夹
u:拥有者      g:组群       o:其他     a:所有

chmod u+x abc.txt        //为abc.txt文件的拥有者添加 x权限(可执行)
chmod a+x abc.txt        //为拥有者、组群、其他 添加 x权限

Linux文件扩展名:
与Windows下不同!在Windows下,能被执行的文件通常是 .com .exe .bat等,而在Linux下, 只要拥有x权限,[ -rwx-r-xr-x ] 即表示这个文件可以被执行

可被执行与可以成功执行是不同的,一个abc.txt是一个文本文件,即使修改权限为-rwxrwxrwx ,这个文件也只是能被打开而不能执行。

以下为文件常用扩展名:

*.sh : 脚本 (scripts),该文档是使用shell写的,后缀名为 .sh。

*Z, *.tar, *.tar.gz, *.zip, *.tgz: 为压缩文件。因为不同的压缩软件形成的扩展名不同。

*.html, *.php:网页相关的文件,有.htm  .PHP .aspx等 。

.开头的文件为隐藏文件

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux文件权限 的相关文章

  • 我在哪里可以学习如何使 C++ 程序与操作系统 (Linux) 交互

    我是一个 C 初学者 我想创建与操作系统交互的小程序 使用 Kubuntu Linux 到目前为止 我还没有找到任何教程或手册来让 C 与操作系统交互 在 PHP 中 我可以使用命令 exec 或反引号运算符来启动通常在控制台中执行的命令
  • 如何从 C 函数创建 shell 命令

    想知道如何获取一组 C 函数并将它们转换为 shell bash 命令 假设我有一组简单的 C 函数 int fn1 some C code for function 1 int fn2 some C code for function 2
  • 从 Windows 中的 C++ 应用程序进行 Thrift 调用

    正如标题所示 我有一个用 C 编写的 Windows 应用程序 我需要从中调用远程 Thrift 服务 说实话 我对这个主题有点迷失 http wiki apache org thrift ThriftInstallationWin32 h
  • C# 系统 CPU 使用情况并与 Windows 任务管理器同步

    这是一个由两部分组成的问题 我想将我的代码发布到堆栈上以帮助其他人完成相同的任务 问题一 我有一个代码子集 我相信它可以根据测量间隔正确测量 CPU 使用情况 根据检索的时间跨系统中的尽可能多的核心 我在线程调用中使用 1 秒 我必须从网上
  • 原生 Linux 应用程序可像 ResHacker 一样编辑 Win32 PE

    我想运行自动修改 dll服务 用户提交特定的 dll 我在服务器上修改它 然后用户可以下载 dll的修改版本 是否有任何本机 Linux 应用程序提供常见的 Win32 PE 修改功能 例如图标 字符串 加速器 对话等 至少提供命令行或脚本
  • 在 Ubuntu 上纯粹通过 bash 脚本安装 mysql 5.7

    我想要一个无需任何手动输入即可安装 MySQL 5 7 实例的 bash 脚本 我正在关注数字海洋教程 https www digitalocean com community tutorials how to install mysql
  • 当IRQL下降时,Windows中如何触发软件中断?

    我知道对于硬件中断 当 KeAcquireInterruptSpinLock 调用 KeLowerIrql 时 HAL 会调整 LAPIC 中的中断掩码 这将允许自动服务排队的中断 可能在 IRR 中 但是对于软件中断 例如 ntdll d
  • C++ [Windows] 可执行文件所在文件夹的路径[重复]

    这个问题在这里已经有答案了 我需要访问一些文件fstream在我的 Windows 上的 C 应用程序中 这些文件都位于我的exe文件所在文件夹的子文件夹中 获取当前可执行文件的文件夹路径的最简单且更重要的 最安全的方法是什么 Use 获取
  • 如何设置 CMake 与 clang 交叉编译 Windows 上的 ARM 嵌入式系统?

    我正在尝试生成 Ninja makefile 以使用 Clang 为 ARM Cortex A5 CPU 交叉编译 C 项目 我为 CMake 创建了一个工具链文件 但似乎存在错误或缺少一些我无法找到的东西 当使用下面的工具链文件调用 CM
  • 有没有办法在 Windows 上全局安装 Composer?

    我读过全局安装文档 http getcomposer org doc 00 intro md globally对于 Composer 但仅适用于 nix 系统 curl s https getcomposer org installer p
  • 为什么 FindWindow 找到了 EnumChildWindows 找不到的窗口?

    我正在寻找一个类名称为 CLIPBRDWNDCLASS 的窗口 它可以在办公应用程序和其他应用程序中找到 如果我使用 FindWindow 或 FindWindowEx 我找到第一个具有此类的 HWND 但我想要all具有该类的窗口 因此我
  • ANSI 转义码在行尾有奇怪的行为

    重现步骤 考虑以下 shell 命令 echo e e 41mTest nTest2 e 0mTest3 它打印Test并在下一行中Test2具有红色背景 使用 ANSI 转义码 Test2后面直接是Test3这是无色的 行为 第一次执行此
  • 如何阅读shell命令的源代码?

    我想阅读编写linux命令的实际源代码 我已经获得了一些使用它们的经验 现在我认为是时候与我的机器进行更深层次的交互了 我在这里找到了一些命令http directory fsf org wiki GNU http directory fs
  • 通过 SSH 将变量传递给远程脚本

    我正在通过 SSH 从本地服务器在远程服务器上运行脚本 首先使用 SCP 复制该脚本 然后在传递一些参数时调用该脚本 如下所示 scp path to script server example org another path ssh s
  • Jenkins 执行 PowerShell 脚本

    我正在尝试从 Jenkins 运行 PowerShell 脚本 但它似乎完全忽略了执行策略 可以通过直接执行 powershell exe 或使用PowerShell插件 https wiki jenkins ci org display
  • 低级挂钩/SetWindowsHookEx lParam 自动重复?

    在这里阅读 Windows PC 上如何实现键盘自动重复 https stackoverflow com questions 876852 how is keyboard auto repeat implemented on a windo
  • 在 Windows 上将 Word2vec 与 Tensorflow 结合使用

    In 本教程文件 https github com tensorflow models blob master tutorials embedding word2vec py L45通过 Tensorflow 找到以下行 第 45 行 来加
  • 从 bash 脚本运行节点

    很简单 我正在尝试使用 cron 自动运行 nodejs 脚本 但是脚本本身似乎无法运行该文件 我的脚本很简单 usr bin env node node var node assets js update js 但是 在运行此命令时 它返
  • 使用脚本自动输入 SSH 密码

    我需要创建一个自动向 OpenSSH 输入密码的脚本ssh client 假设我需要通过 SSH 进入myname somehost用密码a1234b 我已经尝试过 bin myssh sh ssh myname somehost a123
  • sqlite 插入需要很长时间

    我正在将不到 200 000 行插入到 sqlite 数据库表中 我只是在终端中通过 sqlite3 使用一个非常简单的 sql 文件 我打赌它已经运行了至少 30 分钟 这是正常现象还是我应该关闭该过程并尝试不同的方法 sqlite中的插

随机推荐

  • makefile中的多target混乱依赖模式

    来看个例子 makefile内容为 test1 test2 test1 cpp test2 cpp clean rm f test1 test2 这是一种非常懒散的写法 虽然可以work taoge localhost Desktop gt
  • TextSymbol使用方法

    private var grapbiaozhu GraphicsLayer new GraphicsLayer grapbiaozhu clear map addLayer grapbiaozhu var gra Graphic new G
  • 正点原子 第30章 SPI通信实验

    第三十章 SPI 实验 mw shl code c true 1 硬件平台 正点原子探索者STM32F407开发板 2 软件平台 MDK5 1 3 固件库版本 V1 4 0 mw shl code 本章我们将向大家介绍STM32F4的SPI
  • Python基础数据类型之字符串(一)

    Python基础数据类型之字符串 一 一 字符串格式化 1 字符串占位符 2 字符串格式化操作 二 f string格式化 三 字符串的索引 四 字符串的切片 1 常规切片使用方法 3 步长的介绍 2 切片使用方法二 一 字符串格式化 1
  • 按键精灵直接运行cmd指令

    vbs Set ObjShell CreateObject Wscript Shell vbs SttCommand cmd exe C 具体指令 vbs ObjShell Run SttCommand 0 False 比如执行python
  • vant组件库

    移动端组件库参考 https www jianshu com p c3c671787d1d 官网 https vant contrib gitee io vant v2 zh CN 1 下载安装vant组件库 cnpm i vant lat
  • python爬虫六:js2py以及selenium的使用

    1 js2py简介 http www porters vip verify sign 案例查看 Python中执行JS代码 通常两个库 js2py pyexecjs js2py是纯python实现的库 用于在python中运行js代码 本质
  • 矩阵的乘法

    1 有两个矩阵 A和B 矩阵实际上就是二维数组 A矩阵和B矩阵可以做乘法运算必须满足A矩阵的列的数量等于B矩阵的行的数量 运算规则 A的每一行中的数字对应乘以B的每一列的数字把结果相加起来 矩阵乘法的结果为行与列的关系为 行数量为A的行数量
  • 春秋云镜cve-2022-32991wp

    首先看靶标介绍 该CMS的welcome php中存在SQL注入攻击 访问此场景 为登录界面 可注册 注册并登陆后找可能存在sql注入的参数 尝试在各个参数后若加一个单引号报错 加两个单引号不报错 说明此参数可能存在sql注入 经过尝试在
  • python数据分析与可视化——第四章实训

    1 导入模块 import pandas as pd import numpy as np import matplotlib pyplot as plt plt rcParams font sans serif SimHei 用来正常显示
  • 阿里云ECS服务器连接MongoDB

    第一次接触MongoDB 第一次部署 将一些步骤整理出来 希望以后会用到 也希望能帮组到有这方面需求的小伙伴 设备说明 服务器为阿里云ECS服务器 网络为专有网络VPC Mango为买的阿里云Mango 各种申请事项和购买才做就不说 下面开
  • 查mysql版本的命令

    首先找到安装mysql的安装位置 我的是在D盘下tools mysql zip mysql 8 0 19 winx64 之后点击安装位置的路径 输入cmd 按enter键 进入黑窗格如图所示 输入命令mysql version 第二种win
  • STM32的CAN过滤器

    最近开始给足底压力设备加外设 这里外设个主设备之间通过can总线连接 之前使用过can总线 但是对can的过滤器不是很理解 所以这里就借机整理一下 原文地址 再谈STM32的CAN过滤器 bxCAN的过滤器的4种工作模式以及使用方法总结 S
  • 运行.sh文件报错-bash: ./download_weights.sh: Permission denied

    运行 sh文件 download weights sh 命令运行报错 bash download weights sh Permission denied 此时这个文件是不可执行的 用 ll 命令查看文件的访问权限 rw r r 1 G19
  • QT程序用windeployqt打包后无法正常启动

    QT程序用windeployqt打包后无法正常启动 显示 应用程序无法正常启动 0xc000007b 请单击确定关闭应用程序 查看exe程序所在文件夹 qt的关键dll都已经拷贝到了 考虑到我的程序还依赖其他的dll工程 虽然依赖的dll也
  • 用ClickHouse 文件表引擎快速查询分析文件数据

    有时我们需要快速查询分析文件数据 正常流程需要在数据库中创建表 然后利用工具或编码导入数据 这时才能在数据库中查询分析 利用ClickHouse文件引擎可以快速查询文件数据 本文首先介绍ClickHouse文件引擎 然后介绍如何快速实现查询
  • MySQL基础(非常全)

    MySQL基础 一 MySQL概述 1 什么是数据库 答 数据的仓库 如 在ATM的示例中我们创建了一个 db 目录 称其为数据库 2 什么是 MySQL Oracle SQLite Access MS SQL Server等 答 他们均是
  • 【统一身份认证】详细讲解

    一 什么是统一身份认证 二 统一身份认证的构成 1 角色模型 用户 角色 权限 2 实现 前言
  • win10使用vscode+anaconda+Python环境配置(解决无法加载文件 \WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本)

    win10使用vscode anaconda Python环境配置 解决无法加载文件 WindowsPowerShell profile ps1 因为在此系统上禁止运行脚本 安装anaconda 为conda设置环境变量 conda 环境初
  • Linux文件权限

    Linux用户分为 拥有者 组群 Group 其他 other Linux系統中 预设的情況下 系統中所有的帐号与一般身份使用者 以及root的相关信息 都是记录在 etc passwd文件中 每个人的密码则是记录在 etc shadow文