找回密码
 注册
关于网站域名变更的通知
查看: 248|回复: 1
打印 上一主题 下一主题

怎样改变LINUX的文件属性与权限

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-4-29 10:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 uperrua 于 2020-4-29 10:44 编辑
9 P! t; D" t, t, c, ~5 k# v' c! I" ^/ N, Z5 E3 Z' U3 \4 M
我们知道文件权限对于一个系统的安全是非常重要的,那么我们如何修改一个文件的属性与权限呢?首先介绍几个常用的用户组、所有者、各种身份呢的权限的修改命令。如下所示:# w# f; `+ z& {- a2 |
chgrp:改变文件所属用户组(change group的简称)
0 D9 w6 i; M7 H% `" A& v3 v
; s4 y6 x. y0 _* f+ e1 h2 zchown:改变文件所有者
- Z% U. f' r7 @; f" s3 Q' o" \; g/ c/ W; p' }& b. z6 K: J5 W
chmod:改变文件的权限。4 C5 X, X/ O9 H% x' G! K3 f. o0 S8 x

9 `$ h$ ~% R: _' h下面逐个介绍上面三种常用命令8 k( _+ _6 ]! B6 Z7 ?
- q1 Z. l6 c  B* R' B
9 d, O: s5 c+ b( b

$ n" ], R) I8 p; t* Z" a: V一、改变所属用户组:chgrp8 N+ i! |2 i3 ~3 F$ F
! N7 m- |! t& b5 H
在root身份下登陆linux执行下面命令% I# E- N9 l) e5 Z
2 r2 o8 w- B# ]
[root@localhost ~]# chgrp users install.log( O5 s% e% W7 [  J% A
[root@localhost ~]# ls -l
1 z- ], ?0 q& p. C" ~4 b总计 72' X' K6 K& B2 Y( a
-rw------- 1 root root   1688 07-18 23:28 anaconda-ks.cfg
, M. S# c" A0 n1 F) w/ u$ m-rw-r--r-- 1 root users 39162 07-18 23:28 install.log
' p# h% C$ ]8 w3 k* _. [4 ]5 S# v' |3 ^% R8 y  q
我们会观察到install.log 这个文件所属的用户组原来是root的,现在变为了users这个用户组里面的一个文件。值得注意的一点是,你所改的文件用户组必须要在/etc/group里面存有的用户组,否则会出现错误。
' w3 |% ?4 O& G! U- I! o8 ]/ b
1 `, \) Z( ^  g* m- t
2 W: E% L' ?6 f5 v0 E+ ?2 {二、改变文件所有者:chown) V" a7 v8 H; L
* |% g1 A4 |; X0 y4 @8 v
在root身份下登陆linux执行下面命令: \3 W  }& x* Z

4 J3 T, E* S+ t2 k0 Y. W  O[root@localhost ~]# ls -l3 u8 d" u* @* Y" }/ q
总计 72
- e3 W, U; Y* W# k* {$ m4 U. }-rw------- 1 root root   1688 07-18 23:28 anaconda-ks.cfg
. z) s* M) V/ b/ [-rw-r--r-- 1 bin  users 39162 07-18 23:28 install.log7 u( Z# I/ J! ~$ y: y9 B7 e/ D
我们观察到install.log这个文件所属的所有者原来是root的,现在变为了bin这个所有者拥有。值得注意的一点是,你所改变的文件用户必须是已经存在于系统的账号。3 S. G; g4 x* h5 e; o
  z2 ~9 E9 q3 u' `. E
[root@localhost ~]# chown root:root install.log
8 G) O# X; Y" R; U; C5 P1 Y  s6 B[root@localhost ~]# ls -l
5 T: N& L, {* w7 m9 v总计 72* e% Q2 \& l% Z
-rw------- 1 root root  1688 07-18 23:28 anaconda-ks.cfg$ _( |) c0 h, [. C3 D" T- r' I
-rw-r--r-- 1 root root 39162 07-18 23:28 install.log  ^* g3 x2 ^0 A5 P- Q$ p9 m
上面的命令,将instal.log的所有者与用户组改回为root$ E' {1 [! e' }$ ~+ i

- C; A$ R5 F5 v7 \( s5 p1 a: b8 x6 s" w  S% \( i

7 u2 a  Z: p6 `$ f) O三、修改文件属性:chmod4 `* w- U8 K0 P9 w7 J3 v8 w
3 E- W; Q; S* K6 b" {7 k
很多时候需要修改文件的属性才能很好的登陆访问某个文件或者限制他人登陆访问甚至修改文件,这里就可以看出linux下的文件属性是有多么的重要了。该变文件的属性有二种方法:4 w2 |2 F7 L& j% H: [, y

! `' r" @4 c. B1 ?: Y! @; q. t4 R- i①数字类型改变文件权限* O/ f2 r4 I. H

8 p1 W8 W/ Q2 I6 C: _Linux文件的基本权限有9个,分别是Owner Group Others三种身份各有自己的r w x权限,其中,我们可以用数字来代表各个权限。3 z! y, j4 {. y& g( W

2 F& E" w1 [% e/ ^- Cr:4
( m( f7 P- ]  h* L6 B+ A' D% G# P0 {2 x
w:2; R9 N0 L6 O7 k

! Z3 m* y7 N) c7 P, w, e* px:1
1 o3 ~6 U; V4 Q8 S$ J! s+ k, @/ I5 z/ P
当权限为[-rwxrwx---] 分数在是:
8 F: Y( L; U" @: |" [$ ^
3 G8 _$ T  a: I0 [) R1 y5 u; B% ]) Mowner = rwx =4+2+1 = 7
5 l* r5 s/ x2 D8 Z+ i! O
0 p. C+ d0 b) ~* z% P! C" r& h) g- w! wgroup = rwx = 4+2+1 = 7( I3 l; L" ^6 t! |/ ~) U
0 @! u: F0 A# T* ^' ^& l
others = --- = 0+0+0= 0
& [8 g' ~$ ~; o3 H# b+ a' c4 R0 g0 s: v
( I0 I: n4 m8 G4 r1 H6 L* {所以我们要设置权限更改时,该文件权限数字就是770,更改权限的命令举例如下3 _8 ~7 U4 w1 j: V
$ t' y: |# D2 I: W  o
[root@localhost ~]# ls -al .bashrc2 X) V+ R; R# G
-rw-rw-rw- 1 root root 176 2006-07-13 .bashrc1 g! n% ?% @. I! a# }# C4 }1 J
[root@localhost ~]# chmod 777 .bashrc! y! N# h9 Y4 o7 B& e
[root@localhost ~]# ls -al .bashrc2 A4 `8 Z: h: g
-rwxrwxrwx 1 root root 176 2006-07-13 .bashrc% _' ]7 [% {# y

& o. Z" |+ q, j) o7 ?& M7 h这样我们就把.bashrc这个文件的权限由rw-rw-rw- 改为了rwxrwxrwx   就是这么简单
; q9 J7 K+ h, M; J# h
" y# n/ u# u" b: g0 j& H* w( x: J8 y②符号类型改变文件权限3 r% Y2 b) U, [" b
8 v- G6 j: h5 N! r3 O, L1 _
我们通过u g o a四种身份修改权限,其中+  - =分别代表:加入、除去、设置, f9 H% j: r, P! C' Q
1 m6 I  x# r, e) ~0 x/ A
假如我们将 .bashrc这个文件权限改为 "-rwxr-xr-x"如下所示! D% x- n: Y3 W- r, E  E% F) V

" k! v9 b! x- a4 X2 K. P. l[root@localhost ~]# ls -al .bashrc
" A1 ^, o7 A* |' ~7 D% g+ D-rwxrwxrwx 1 root root 176 2006-07-13 .bashrc" v6 s  F6 X6 x) t! ]$ \. Q
[root@localhost ~]# chmod u=rwx,go=rx .bashrc% x8 I1 o+ u3 q0 |
[root@localhost ~]# ls -al .bashrc& ?( Z# u4 \" J  E6 R" W
-rwxr-xr-x 1 root root 176 2006-07-13 .bashrc
; B- j" p+ I4 u% W其中,u=rwx,go=rx分别代表,user、group、others的权限分别设置为【可读、可写、可执行】、【可读、不可写、可执行】、【可读、不可写、可执行】0 a9 c8 ]; ?; |* m7 z: w
1 r8 x& h6 o! x0 e" U4 c* U+ g
当我们想增加.bashrc这个文件的每个人均可写入的权限,我们就使用2 W5 a; e" l1 A
9 B) }! {8 b+ K0 q) Y7 |
[root@localhost ~]# ls -al .bashrc1 C" a5 K6 F7 n% s4 Y
-rwxr-xr-x 1 root root 176 2006-07-13 .bashrc& \6 N) A" i* C1 L- C5 Y+ f1 j
[root@localhost ~]# chmod a+w .bashrc, q8 f6 }! o9 j; P6 g) W' x
[root@localhost ~]# ls -al .bashrc+ L; H) C7 N. r
-rwxrwxrwx 1 root root 176 2006-07-13 .bashrc
2 K5 j7 b) W4 d. P
# `8 W& m, w+ t+ |7 L  z, {/ G如果我们想将权限去掉而不更改其他属性,我们就使用
5 j6 N6 a" M% F5 c* E% W) s0 d* E3 d* Z0 U6 z( x& V. G
[root@localhost ~]# ls -al .bashrc
$ p" U( n# s5 {; e-rwxrwxrwx 1 root root 176 2006-07-13 .bashrc
) r1 b- x* ]7 m+ ]: w[root@localhost ~]# chmod a-x .bashrc  ]" w0 m1 C, `  z
[root@localhost ~]# ls -al .bashrc
$ J) X. V: d( k6 s( c9 I9 I& h3 T-rw-rw-rw- 1 root root 176 2006-07-13 .bashrc
3 O, V" d- Y1 v+ w# c7 g+ ]0 R8 d! i

* d# H; E( g/ `$ {9 D

该用户从未签到

2#
发表于 2020-4-29 13:21 | 只看该作者
改变LINUX的文件属性与权限
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-26 00:28 , Processed in 0.156250 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表