-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy path9.html
More file actions
278 lines (278 loc) · 26 KB
/
Copy path9.html
File metadata and controls
278 lines (278 loc) · 26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="description" content="CodeClub - Linux 文件基本属性" />
<meta name="author" content="Jackson" />
<title>Linux 文件基本属性 - CodeClub</title>
<link rel="icon" type="image/x-icon" href="../../img/logo.png" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap"
rel="stylesheet"
/>
<link
rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
crossorigin="anonymous"
referrerpolicy="no-referrer"
/>
<link rel="stylesheet" href="../../css/main.css" />
<link rel="stylesheet" href="../../css/dark-mode.css" />
<link rel="stylesheet" href="../../css/mobile-optimizations.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/marked/12.0.0/marked.min.js"></script>
<style>
.tutorial-page {
max-width: 1200px;
margin: 70px auto 40px;
padding: 0 20px;
display: flex;
gap: 20px;
}
.tutorial-sidebar {
width: 240px;
flex-shrink: 0;
position: sticky;
top: 70px;
max-height: calc(100vh - 90px);
overflow-y: auto;
background: var(--bg-secondary, #fff);
border-radius: 8px;
padding: 16px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.tutorial-sidebar h3 {
font-size: 15px;
margin: 0 0 12px;
color: var(--text-primary, #1a1a2e);
padding-bottom: 8px;
border-bottom: 2px solid var(--primary, #3b82f6);
}
.tutorial-sidebar a {
display: block;
padding: 5px 8px;
color: var(--text-secondary, #666);
text-decoration: none;
font-size: 13px;
border-radius: 4px;
line-height: 1.4;
}
.tutorial-sidebar a:hover {
background: var(--primary, #3b82f6);
color: #fff;
}
.tutorial-sidebar a.active {
background: var(--primary, #3b82f6);
color: #fff;
font-weight: 600;
}
.tutorial-main {
flex: 1;
min-width: 0;
}
.tutorial-article {
background: var(--bg-secondary, #fff);
border-radius: 8px;
padding: 32px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.tutorial-article h1 {
font-size: 26px;
margin-bottom: 16px;
color: var(--text-primary, #1a1a2e);
border-bottom: 2px solid var(--primary, #3b82f6);
padding-bottom: 12px;
}
.markdown-body {
font-size: 15px;
line-height: 1.8;
color: var(--text-secondary, #333);
}
.markdown-body h1 {
font-size: 24px;
border-bottom: 1px solid var(--border, #e5e7eb);
padding-bottom: 8px;
}
.markdown-body h2 {
font-size: 20px;
border-bottom: 1px solid var(--border, #e5e7eb);
padding-bottom: 6px;
}
.markdown-body h3 {
font-size: 17px;
}
.markdown-body pre {
background: #1e1e2e;
color: #cdd6f4;
padding: 16px;
border-radius: 8px;
overflow-x: auto;
}
.markdown-body code {
font-family: 'Fira Code', 'Cascadia Code', monospace;
font-size: 14px;
}
.markdown-body p code {
background: #f1f5f9;
padding: 2px 6px;
border-radius: 4px;
color: #e83e8c;
}
.markdown-body blockquote {
border-left: 4px solid var(--primary, #3b82f6);
padding: 12px 20px;
margin: 16px 0;
background: #f8fafc;
border-radius: 0 8px 8px 0;
}
.markdown-body img {
max-width: 100%;
border-radius: 8px;
}
.markdown-body table {
border-collapse: collapse;
width: 100%;
margin: 16px 0;
}
.markdown-body table th,
.markdown-body table td {
border: 1px solid var(--border, #e5e7eb);
padding: 8px 12px;
text-align: left;
}
.markdown-body table th {
background: var(--bg-primary, #f8fafc);
font-weight: 600;
}
.markdown-body table tr:nth-child(2n) {
background: var(--bg-primary, #f8fafc);
}
.markdown-body ul,
.markdown-body ol {
padding-left: 24px;
margin: 12px 0;
}
.markdown-body li {
margin: 4px 0;
}
.markdown-body hr {
border: none;
border-top: 1px solid var(--border, #e5e7eb);
margin: 24px 0;
}
.markdown-body a {
color: var(--primary, #3b82f6);
text-decoration: none;
}
.markdown-body a:hover {
text-decoration: underline;
}
.page-navigation {
display: flex;
justify-content: space-between;
margin-top: 24px;
padding-top: 16px;
border-top: 1px solid var(--border, #e5e7eb);
}
.page-nav-link {
color: var(--primary, #3b82f6);
text-decoration: none;
font-weight: 500;
font-size: 14px;
}
.page-nav-link:hover {
text-decoration: underline;
}
.source-link {
margin-top: 16px;
font-size: 13px;
color: var(--text-secondary, #999);
}
.source-link a {
color: var(--primary, #3b82f6);
}
@media (max-width: 768px) {
.tutorial-page {
flex-direction: column;
}
.tutorial-sidebar {
width: 100%;
position: static;
max-height: 200px;
}
}
</style>
</head>
<body>
<nav class="navbar">
<div class="navbar-container">
<a class="navbar-brand" href="../../index.html">
<img src="../../img/logo.png" alt="CodeClub" width="32" height="32" />
<span>CodeClub</span>
</a>
<button class="mobile-menu-toggle" aria-label="切换导航菜单"><span></span><span></span><span></span></button>
<ul class="navbar-nav">
<li><a class="nav-link" href="../../index.html">首页</a></li>
<li><a class="nav-link" href="../../nav.html">网址导航</a></li>
<li><a class="nav-link" href="../../blog/">博客</a></li>
<li><a class="nav-link" href="../../wiki/index.html" target="_blank">WiKi</a></li>
<li><a class="nav-link active" href="../index.html">教程</a></li>
<li><a class="nav-link" href="../../book.html">图书</a></li>
<li><a class="nav-link" href="../../contact.html">联系我</a></li>
<li><a class="nav-link" href="../../about.html">关于我</a></li>
</ul>
</div>
</nav>
<div class="tutorial-page">
<div class="tutorial-sidebar">
<h3>📖 Shell</h3>
<a href="0.html">Linux</a>
<a href="1.html">Linux 简介</a>
<a href="2.html">Linux 安装</a>
<a href="3.html">Linux 云服务器</a>
<a href="4.html">WSL 安装 Linux</a>
<a href="5.html">Linux 系统启动过程</a>
<a href="6.html">Linux 系统目录结构</a>
<a href="7.html">Linux 忘记密码解决方法</a>
<a href="8.html">Linux 远程登录</a>
<a href="9.html" class="active">Linux 文件基本属性</a>
<a href="10.html">Linux 文件与目录管理</a>
<a href="11.html">Linux 用户和用户组管理</a>
<a href="12.html">Linux 磁盘管理</a>
<a href="13.html">Linux vi/vim</a>
<a href="14.html">linux yum 命令</a>
<a href="15.html">Linux apt 命令</a>
<a href="16.html">Shell 教程</a>
<a href="17.html">Shell 变量</a>
<a href="18.html">Shell echo 命令</a>
<a href="19.html">Shell test 命令</a>
<a href="20.html">Shell 流程控制</a>
<a href="21.html">Shell 函数</a>
<a href="22.html">Linux 命令大全</a>
<a href="23.html">Nginx 安装配置</a>
<a href="24.html">MySQL 安装配置</a>
</div>
<div class="tutorial-main">
<div class="tutorial-article">
<div class="markdown-body" id="md-content"></div>
<div class="page-navigation">
<a href="8.html" class="page-nav-link">← Linux 远程登录</a>
<a href="10.html" class="page-nav-link">Linux 文件与目录管理 →</a>
</div>
<div class="source-link">原文来源:<a href="https://www.runoob.com" target="_blank">菜鸟教程</a></div>
</div>
</div>
</div>
<footer class="footer">
<div class="footer-content"><p>© 2024 CodeClub. All rights reserved.</p></div>
</footer>
<script src="../../js/dark-mode.js"></script>
<script src="../../js/mobile-menu.js"></script>
<script>
const md = `# Linux 文件基本属性\n\nLinux 系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。\n\n为了保护系统的安全性,Linux 系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。\n\n\n\n在 Linux 中我们通常使用以下两个命令来修改文件或目录的所属用户与权限:\n\n\n\n- \nchown (change owner) : 修改所属用户与组。\n- \nchmod (change mode) : 修改用户的权限。\n\n下图中通过 chown 来授权用户,通过 chmod 为用户设置可以开门的权限。\n\n\n\n\n\n在 Linux 中我们可以使用 ll 或者 ls –l 命令来显示一个文件的属性以及文件所属的用户和组,如:\n\n\n\n\`\`\`\n\n[root@www /]# ls -l\ntotal 64\ndr-xr-xr-x 2 root root 4096 Dec 14 2012 bin\ndr-xr-xr-x 4 root root 4096 Apr 19 2012 boot\n……\n\n\`\`\`\n\n实例中,**bin** 文件的第一个属性用 d 表示。d 在 Linux 中代表该文件是一个目录文件。\n\n\n在 Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。\n\n\n\n\n \n- 当为 d 则是目录\n \n- 当为 - 则是文件;\n \n- 若是 l 则表示为链接文档(link file);\n \n- 若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);\n \n- 若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。\n \n\n接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已。\n\n\n\n\n\n\n\n每个文件的属性由左边第一部分的 10 个字符来确定(如下图)。\n\n\n\n从左至右用 **0-9** 这些数字来表示。\n\n\n第 **0** 位确定文件类型,第 **1-3** 位确定属主(该文件的所有者)拥有该文件的权限。\n\n第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。\n\n\n其中,第 **1、4、7** 位表示读权限,如果用 r 字符表示,则有读权限,如果用 - 字符表示,则没有读权限;\n\n\n第 **2、5、8** 位表示写权限,如果用 w 字符表示,则有写权限,如果用 - 字符表示没有写权限;第 **3、6、9** 位表示可执行权限,如果用 x 字符表示,则有执行权限,如果用 - 字符表示,则没有执行权限。\n\n\n\n---\n\n\n## Linux文件属主和属组\n\n\n\`\`\`\n\n[root@www /]# ls -l\ntotal 64\ndrwxr-xr-x 2 root root 4096 Feb 15 14:46 cron\ndrwxr-xr-x 3 mysql mysql 4096 Apr 21 2014 mysql\n……\n\n\`\`\`\n\n对于文件来说,它都有一个特定的所有者,也就是对该文件具有所有权的用户。\n\n\n同时,在Linux系统中,用户是按组分类的,一个用户属于一个或多个组。\n\n\n文件所有者以外的用户又可以分为文件所属组的同组用户和其他用户。\n\n\n因此,Linux系统按文件所有者、文件所有者同组用户和其他用户来规定了不同的文件访问权限。\n\n\n\n在以上实例中,mysql 文件是一个目录文件,属主和属组都为 mysql,属主有可读、可写、可执行的权限;与属主同组的其他用户有可读和可执行的权限;其他用户也有可读和可执行的权限。\n\n\n对于 root 用户来说,一般情况下,文件的权限对其不起作用。\n\n\n\n---\n\n\n## 更改文件属性\n\n\n### \n1、chgrp:更改文件属组\n\n\n语法:\n\n\n\n\`\`\`\n\nchgrp [-R] 属组名 文件名\n\n\`\`\`\n\n参数选项\n\n\n\n- \n-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上 -R 的参数,那么该目录下的所有文件的属组都会更改。\n\n\n\n### 2、chown:更改文件所有者(owner),也可以同时更改文件所属组。\n\n\n语法:\n\n\n\n\`\`\`\n\nchown [–R] 所有者 文件名\nchown [-R] 所有者:属组名 文件名\n\n\`\`\`\n\n\n进入 /root 目录(~)将install.log的拥有者改为bin这个账号:\n\n\n\n\`\`\`\n\n[root@www ~] cd ~\n[root@www ~]# chown bin install.log\n[root@www ~]# ls -l\n-rw-r--r-- 1 bin users 68495 Jun 25 08:53 install.log\n\n\`\`\`\n\n将install.log的拥有者与群组改回为root:\n\n\n\n\`\`\`\n\n[root@www ~]# chown root:root install.log\n[root@www ~]# ls -l\n-rw-r--r-- 1 root root 68495 Jun 25 08:53 install.log\n\n\`\`\`\n\n\n### \n3、chmod:更改文件9个属性\n\n\nLinux文件属性有两种设置方法,一种是数字,一种是符号。\n\n\n\nLinux 文件的基本权限就有九个,分别是 **owner/group/others(拥有者/组/其他)** 三种身份各有自己的 **read/write/execute** 权限。\n\n\n 先复习一下刚刚上面提到的数据:文件的权限字符为: -rwxrwxrwx , 这九个权限是三个三个一组的!其中,我们可以使用数字来代表各个权限,各权限的分数对照表如下:\n\n\n\n- \nr:4\n- \nw:2\n- \nx:1\n\n\n每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: -rwxrwx--- 分数则是:\n\n\n\n- \nowner = rwx = 4+2+1 = 7\n- \ngroup = rwx = 4+2+1 = 7\n- \nothers= --- = 0+0+0 = 0\n\n\n所以等一下我们设定权限的变更时,该文件的权限数字就是 **770**。变更权限的指令 chmod 的语法是这样的:\n\n\n\n\`\`\`\n chmod [-R] xyz 文件或目录\n\`\`\`\n\n\n选项与参数:\n\n\n\n- \n**xyz** : 就是刚刚提到的数字类型的权限属性,为 **rwx** 属性数值的相加。\n- \n**-R** : 进行递归(recursive)的持续变更,以及连同次目录下的所有文件都会变更\n\n举例来说,如果要将 **.bashrc** 这个文件所有的权限都设定启用,那么命令如下:\n\n\n\n\`\`\`\n\n[root@www ~]# ls -al .bashrc\n-rw-r--r-- 1 root root 395 Jul 4 11:45 .bashrc\n[root@www ~]# chmod 777 .bashrc\n[root@www ~]# ls -al .bashrc\n-rwxrwxrwx 1 root root 395 Jul 4 11:45 .bashrc\n\n\`\`\`\n\n那如果要将权限变成 *-rwxr-xr--* 呢?那么权限的分数就成为 [4+2+1][4+0+1][4+0+0]=754。\n\n\n\n### 符号类型改变文件权限\n\n还有一个改变权限的方法,从之前的介绍中我们可以发现,基本上就九个权限分别是:\n\n\n\n- user:用户\n- group:组\n- others:其他\n\n那么我们就可以使用 **u, g, o** 来代表三种身份的权限。\n\n此外, **a** 则代表 **all**,即全部的身份。读写的权限可以写成 r, w, x,也就是可以使用下表的方式来看:\n\n\n\n\n\n\n \n chmodu**g\no\na\n +(加入)\n-(除去)\n=(设定)\n r\nw\nx文件或目录\n如果我们需要将文件权限设置为 **-rwxr-xr--** ,可以使用 chmod u=rwx,g=rx,o=r 文件名 来设定:\n\n\n\n\`\`\`\n\n# touch test1 // 创建 test1 文件\n# ls -al test1 // 查看 test1 默认权限\n-rw-r--r-- 1 root root 0 Nov 15 10:32 test1\n# chmod u=rwx,g=rx,o=r test1 // 修改 test1 权限\n# ls -al test1\n-rwxr-xr-- 1 root root 0 Nov 15 10:32 test1\n\n\`\`\`\n\n而如果是要将权限去掉而不改变其他已存在的权限呢?例如要拿掉全部人的可执行权限,则:\n\n\n\n\`\`\`\n\n# chmod a-x test1\n# ls -al test1\n-rw-r--r-- 1 root root 0 Nov 15 10:32 test1\n\n\`\`\`\n\n\n---\n\n## 更多参考内容\n\n\n- \n[Linux chgrp 命令](https://www.runoob.com/linux/linux-comm-chgrp.html)\n\n- \n[Linux chown 命令](https://www.runoob.com/linux/linux-comm-chown.html)\n\n- \n[Linux chmod 命令](https://www.runoob.com/linux/linux-comm-chmod.html)\n\n\n \n \n \n \n \n\n \n \n [ Linux 文件与目录管理](http://www.runoob.com/linux/linux-file-content-manage.html)\n \n\n \n \n \n \n \n\n\n\n\n\n \n## \n \n \n \n 3 篇笔记\n 写笔记\n\n\n\n\n\n \n\n #0 blockpunk\n\n 604***221@qq.com\n\n 137**每个文件的属性由左边第一部分的10个字符(如上的“dr-xr-xr-x”)来确定。**我们把十个字符拆开看:\n\n- **10位字符表示:**\n\n- **0位:**确定文件类型\n\n- **1-3位:**确定该文件的所有者对文件的权限 **owner**\n\n- **4-6位:**确定所有者的同组用户拥有该文件的权限 **group**\n\n- **7-9位:**确定其他用户拥有该文件的权限 **others**\n\n- **第一个字符:**代表这个文件的类型,是目录、文件,还是一个链接等等\n\n- **[ ****d**** ] **目录\n\n- **[ ****- ****] **文件\n\n- **[ ****l **** ] **链接文档(link file)\n\n- **[ ****b**** ] **可供储存的接口设备(可随机存取装置)\n\n- **[ ****c**** ] **串行端口设备,例如键盘、鼠标(一次性读取装置)\n\n- **接下来的字符:**以三个一组分成三组,用 r、w、x 三个参数的组合表示,位置不会改变\n\n- **[ r ]** 代表可读(read)\n\n- **[ w ] **代表可写(write)\n\n- **[ x ]** 代表可执行(execute)\n\n- **[ - ] **没有权限\n[blockpunk](https://www.runoob.comjavascript:;) blockpunk\n\n 604***221@qq.com\n\n7年前 (2018-12-10)\n#0 快乐的小胖子\n\n 645***362@qq.com\n\n [ 参考地址](https://www.cnblogs.com/Jimmy1988/p/7260215.html)\n\n 80**关于 [s] 和 [t] 字符**\n\n\n\n**[s]:**当一个具有执行权限的文件设置 [s](SetUID) 权限后,用户执行这个文件时将以文件所有者的身份执行。passwd 命令具有 SetUID 权限,所有者为 root(Linux 中的命令默认所有者都是 root),也就是说当普通用户使用 passwd 更改自己密码的时候,那一瞬间突然 “灵魂附体” 了,实际在以 passwd 命令所有者 root 的身份在执行,root 当然可以将密码写入 /etc/shadow 文件(root 是一个 bug 的存在,在 Linux 中就没有它不能干的事),命令执行完成后该身份也随之消失。\n\n\n\n**0. SetUID 条件:**\n\n\n\n必须具备以下几个条件(前提):\n\n\n\n- \n只有可执行的二进制程序才可以设置 SetUID\n- \n所有者必须对欲设置SetUID的文件具备 可执行 (x) 权限\n- \n命令执行过程中,其它用户获取所有者的身份(灵魂附体)\n- \nSetUID 具有时间限制,即完成该程序执行后就消失(不能霸占住不放吧?)\n\n**1. 设置和取消 SetUID**\n\n\n\n设置 SetUID:\n\n\n\n\n\`\`\`\nchmod 4xxx chmod u+s\n\`\`\`\n\n\n取消 SetUID:\n\n\n\n\n\`\`\`\nchmod xxx chmod u-s\n\`\`\`\n\n\n**SetGID**\n\n\n\n其实,SetGID 基本与 SetUID 相同,无非也就是一个设置所有者的权限,GID 为设置所属组的特殊权限!区别点在于:SetGID 也可以设置目录的相关 SetGID 权限!\n\n\n\n**0. SetGID条件:**\n\n\n\n针对文件:\n\n\n\n- \n可执行的二进制文件\n- \n命令执行者(即所属组)对该文件具备 x 权限\n- \n执行时,执行者被所属组灵魂附体\n- \n权限只在执行过程中有效\n\n针对目录:\n\n\n\n- \n普通用户对目录具备 r 和 x 权限,才可以进入到该目录\n- \n普通用户在此目录中的有效组会变成此目录的所属组\n- \n如普通用户对该目录具备w权限,新建文件的所属组为该目录的所属组\n\n**1. 设置和取消 SetGID**\n\n\n\n设置 SetGID\n\n\n\n\n\`\`\`\nchmod 2xxx chmod g+s\n\`\`\`\n\n\n取消 SetGID\n\n\n\n\n\`\`\`\nchmod xxx chmod g-s\n\`\`\`\n\n\n**[t]**: 任何用户均可以往此目录写入文件,可以删除自己所创建的文件,root 自然有权限删除\n\n\n\n**SBIT**\n\n\n\nStick Bit,粘滞位。\n\n\n\n**0.作用:**\n\n\n\n- \n只对目录有效\n- \n普通用户对该目录有 w 和 x 权限\n- \n若没有粘滞位,则普通用户可以对目录下的文件/子目录进行删除操作(因为普通用户对目录具有 w 权限),包括其它用户建立的目录/文件;但若赋了 SBIT,则普通用户只能删除自己创建的文件/目录,而不能删除不属于自己的文件/目录!\n\n**1. 设置和取消SBIT**\n\n\n\n设置 SBIT\n\n\n\n\n\`\`\`\nchmod 1xxx chmod o+t\n\`\`\`\n\n\n取消 SBIT\n\n\n\n\n\`\`\`\nchmod xxx chmod o-t\n\`\`\`\n[快乐的小胖子](https://www.runoob.comjavascript:;) 快乐的小胖子\n\n 645***362@qq.com\n\n [ 参考地址](https://www.cnblogs.com/Jimmy1988/p/7260215.html)\n\n7年前 (2019-05-05)\n#0 Looveh\n\n 965***351@qq.com\n\n 35用户分为:**\n\n- owner [属主]\n- group [属组]\n- others [其他]\n- all [所有用户]\n**权限分为**:\n\n- r ==> 4\n- w ==> 2\n- x ==> 1\n**1、设置属组语法**\n\n\`\`\`\nchgrp [-R] 属组名 文件名\n// -R 代表递归,即目录下所有文件都会更改属性\n\`\`\`\n**2、设置属主语法**\n\n\`\`\`\nchown [-R] 属主名 文件名\n// -R 代表递归,即目录下所有文件都会更改属性\n\n\`\`\`\n**3、更改文件9个属性语法**\n\n- 数字格式\n\n\`\`\`\nchmod [-R] xyz 文件名\n// -R 代表递归,即目录下所有文件都会更改属性\n// x 代表属主权限\n// y 代表属组权限\n// z 代表其他权限\n\`\`\`\n\n- 符号格式\n\n\`\`\`\nchmod [-R] u=rwx,g=rwx,o-rwx 文件名\n// -R 代表递归,即目录下所有文件都会更改属性\n// u 代表属主\n// g 代表属组\n// o 代表其他\n\`\`\`\n[Looveh](https://www.runoob.comjavascript:;) Looveh\n\n 965***351@qq.com\n\n6年前 (2019-11-29)\n \n\n \n \n\n \n \n \n### 点我分享笔记\n\n \n \n \n \n \n \n [取消](https://www.runoob.comjavascript:;)\n\n\n \n \n \n \n \n \n\n\n 分享笔记\n \n \n \n \n \n \n\n 昵称昵称 (必填)\n 邮箱邮箱 (必填)\n 引用地址引用地址\n \n\n \n \n \n \n\n \n \n\n\n\n\n\n\n\n\n\n \n\n \n\n\n\n\n\n\n \n \n \n \n \n \n\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n 在线实例\n\n\n ·[HTML 实例](https://www.runoob.com/html/html-examples.html)\n\n\n ·[CSS 实例](https://www.runoob.com/css/css-examples.html)\n\n\n ·[JavaScript 实例](https://www.runoob.com/js/js-examples.html)\n\n\n ·[Ajax 实例](https://www.runoob.com/ajx/ajax-examples.html)\n\n\n ·[jQuery 实例](https://www.runoob.com/jquery/jquery-examples.html)\n\n\n ·[XML 实例](https://www.runoob.com/xml/xml-examples.html)\n\n\n ·[Java 实例](https://www.runoob.com/java/java-examples.html)\n\n\n\n\n\n 字符集&工具\n\n\n · [HTML 字符集设置](https://www.runoob.com/charsets/html-charsets.html)\n\n\n · [HTML ASCII 字符集](https://www.runoob.com/tags/html-ascii.html)\n\n\n · [JS 混淆/加密](https://www.jyshare.com/front-end/6939/)\n\n\n · [PNG/JPEG 图片压缩](https://www.jyshare.com/front-end/6232/)\n\n\n · [HTML 拾色器](https://www.runoob.com/tags/html-colorpicker.html)\n\n\n · [JSON 格式化工具](https://www.jyshare.com/front-end/53)\n\n\n · [随机数生成器](https://www.jyshare.com/front-end/6680/)\n\n\n\n\n 最新更新\n\n\n ·\n [\n OpenCode 自定义... ](http://www.runoob.com/opencode/opencode-custom-tools.html)\n\n\n ·\n [\n OpenCode Skills ](http://www.runoob.com/opencode/opencode-skills.html)\n\n\n ·\n [\n OpenCode MCP 服... ](http://www.runoob.com/opencode/opencode-mcp.html)\n\n\n ·\n [\n OpenCode LSP 服... ](http://www.runoob.com/opencode/opencode-lsp.html)\n\n\n ·\n [\n OpenCode 权限配置 ](http://www.runoob.com/opencode/opencode-permissions.html)\n\n\n ·\n [\n OpenCode 格式化... ](http://www.runoob.com/opencode/opencode-formatter.html)\n\n\n ·\n [\n OpenCode 自定义... ](http://www.runoob.com/opencode/opencode-commands.html)\n\n\n\n\n 站点信息\n\n\n ·\n [意见反馈](https://www.runoob.commailto:admin@runoob.com)\n\n\n ·\n [免责声明](https://www.runoob.com/disclaimer)\n\n\n ·\n [关于我们](https://www.runoob.com/aboutus)\n\n\n ·\n [文章归档](https://www.runoob.com/archives)\n\n\n\n\n\n\n\n **关注微信**\n\n\n\n \n\n\n\n\n\n\n Copyright © 2013-2026 **[菜鸟教程](https://www.runoob.com//www.runoob.com/)** \n **[runoob.com](https://www.runoob.com//www.runoob.com/)** All Rights Reserved. 备案号:[闽ICP备15012807号-1](https://beian.miit.gov.cn/)\n\n\n\n [ ](https://www.runoob.comjavascript:void(0))\n [](https://www.runoob.comjavascript:void(0))\n [](https://www.runoob.comjavascript:void(0))\n\n\n\n#### 微信关注\n\n `;
document.getElementById('md-content').innerHTML = marked.parse(md);
</script>
</body>
</html>