Linux之权限

简介:

文件权限

    为了保障权责清晰和企业经营数据安全与保密,企业需要对系统中所有的操作人员进行分工,设置各自的功能权限,就能执行相应的操作。例如,为某个操作员设定了填制凭证的权限时,那么当该操作员注册进入账务子系统后,就可以填制凭证。

    只有系统管理员才有权进行权限设定


文件对权限的定义:属主的权限、属组的权限、非属主和属组的权限

1
2
3
4
5
6
7
-rw-rw-r--  1 root   utmp                9984 Jan  2  2016 wtmp
-
rw- 属主的权限,用u表示
rw- 属组的权限,用g表示 
r-- 非属主和属组的权限,用o表示
root  文件的属主
utmp  文件的属组


所有用户对文件只有3类权限,rwx,其含义是:

readable,r权限,可读权限位

    文件有此权限位时,代表“对应的用户对此文件可以用一些文件查看类工具查看文件的内容”

    目录:此权限位对应的用户可用"ls"查看目录中的内容

writeable,w权限,可写权限位

    文件:此权限位对应的用户可修改文件的内容

    目录:此权限位对应的用户可在目录中删除文件,创建文件

excutable,x权限,可执行权限位

    文件:此权限位对应的用户可把此文件提请到内核运行为一个进程

    目录:可用ls -l查看此目录中的文件列表,和cd 进入此目录


这三个二进制位可用一个八进制数来表示

1
2
3
4
5
6
7
8
9
10
--- 000 0
--x 001 1
-w- 010 2
-wx 011 3
r-- 100 4
r-x 101 5
rw- 110 6
rwx 111 7
640 rw- r-- --- 
755 rwx r-x r-x


与文件权限相关的命令

chmod,chown,chgrp命令

1
2
3
4
5
6
7
[root@izpo45bh60h6bsz ~] # type chmod
chmod  is  /usr/bin/chmod
[root@izpo45bh60h6bsz ~] # chmod --help
Usage:  chmod  [OPTION]... MODE[,MODE]... FILE...
   or:   chmod  [OPTION]... OCTAL-MODE FILE...
   or:   chmod  [OPTION]... --reference=RFILE FILE...
-R, --recursive        递归修改目录及目录下的文件的权限



MODE的含义

1)对某类用户进行权限修改

   u=[rwx' '] g=[rwx' ']  o=[rwx' ']

  uo= ug= go=

2)对某类用户的某位权限修改

  u+-,g+-,o+-

  a+- 或+-

使用示例:

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
1、修改文件的某类用户的权限及某位权限
[root@izpo45bh60h6bsz tmp] # mkdir -m 644 testdir #创建目录文件
[root@izpo45bh60h6bsz tmp] # touch testdir/abc  #创建文件
[root@izpo45bh60h6bsz tmp] # ls -l
total 4
drw-r--r-- 2 root root 4096 Jul 30 12:35 testdir
[root@izpo45bh60h6bsz tmp] # ls -l testdir/abc
-rw-r--r-- 1 root root 0 Jul 30 12:39 testdir /abc
 
[root@izpo45bh60h6bsz tmp] # chmod u= testdir
[root@izpo45bh60h6bsz tmp] # ls -l
total 4
d---r--r-- 2 root root 4096 Jul 30 12:35 testdir
[root@izpo45bh60h6bsz tmp] # ls -l testdir/abc
-rw-r--r-- 1 root root 0 Jul 30 12:39 testdir /abc
 
[root@izpo45bh60h6bsz tmp] # chmod -R u+rwx testdir
[root@izpo45bh60h6bsz tmp] # ls -l
total 4
drwxr--r-- 2 root root 4096 Jul 30 12:39 testdir
[root@izpo45bh60h6bsz tmp] # ls -l testdir/
total 0
-rwxr--r-- 1 root root 0 Jul 30 12:39 abc
 
2、仿照a文件的权限修改B文件的权限
[root@izpo45bh60h6bsz tmp] # touch testdir/b
[root@izpo45bh60h6bsz tmp] # ls -l testdir/
-rwxr--r-- 1 root root 0 Jul 30 12:39 abc
-rw-r--r-- 1 root root 0 Jul 30 12:43 b
 
[root@izpo45bh60h6bsz testdir] # chmod --reference=abc b
-rwxr--r-- 1 root root 0 Jul 30 12:43 b
 
3、以八进制位修改文件的权限
[root@izpo45bh60h6bsz tmp] # ls -l testdir/
-rwxr--r-- 1 root root 0 Jul 30 12:39 abc
[root@izpo45bh60h6bsz testdir] # chmod 600 abc
[root@izpo45bh60h6bsz testdir] # ls -l
-rw------- 1 root root 0 Jul 30 12:39 abc


chown命令

1
2
3
4
5
6
[root@izpo45bh60h6bsz ~] # type chown
chown  is  /usr/bin/chown
[root@izpo45bh60h6bsz ~] # chown --h
Usage:  chown  [OPTION]... [OWNER][:[GROUP]] FILE...
   or:   chown  [OPTION]... --reference=RFILE FILE...
   -R, --recursive        递归修改目录及目录下的文件的属主


1)修改属主

1
2
3
4
5
6
7
8
9
10
[root@izpo45bh60h6bsz tmp] # install -d hello  #创建目录
[root@izpo45bh60h6bsz tmp] # ls -l
total 4
drwxr-xr-x 2 root root 4096 Jul 30 12:50 hello
 
drwxr-xr-x 2 root root 4096 Jul 30 12:55 hello
-rw-r--r-- 1 root root 0 Jul 30 12:55 abc
[root@izpo45bh60h6bsz tmp] # chown myuser hello
drwxr-xr-x 2 myuser root 4096 Jul 30 12:55 hello
-rw-r--r-- 1 root root 0 Jul 30 12:55 abc


2)修改属组

1
2
[root@izpo45bh60h6bsz tmp] # chown -R .myuser hello
-rw-r--r-- 1 root myuser 0 Jul 30 12:55 abc


3)修改属主和属组

1
2
3
[root@izpo45bh60h6bsz tmp] # chown -R root.root hello
drwxr-xr-x 2 root root 4096 Jul 30 12:55 hello
-rw-r--r-- 1 root root 0 Jul 30 12:55 abc



文件和目录创建时的遮罩码:umask

默认文件必然不能有执行权限,避免文件被恶意利用

默认目录有执行权限


管理员的umask

1
2
[root@izpo45bh60h6bsz tmp] # umask
0022


普通用户的umask

1
2
3
[root@izpo45bh60h6bsz tmp] # su - user1
-sh-4.2$  umask
0002


umask定义的位置

1
2
3
4
5
6
7
8
9
10
/etc/profile , /etc/bashrc 中均定义了 umask 的值 
# By default, we want umask to get set. This sets it for login shell
# Current threshold for system reserved uid/gids is 200
# You could check uidgid reservation validity in
# /usr/share/doc/setup-*/uidgid file
if  [ $UID -gt 199 ] && [  "`id -gn`"  "`id -un`"  ];  then
     umask  002
else
     umask  022
fi



创建文件的权限,默认

1
2
3
4
5
6
7
8
1、管理员
[root@izpo45bh60h6bsz tmp] # touch testfile
[root@izpo45bh60h6bsz tmp] # ls -l
-rw-r--r-- 1 root root    0 Jul 30 13:03 testfile
2、普通用户
-sh-4.2$  touch  testfile
-sh-4.2$  ls  -l
-rw-rw-r-- 1 user1 user1 0 Jul 30 13:02 testfile


文件的权限: 666-UMASK

目录的权限:777-UMASK










本文转自 lccnx 51CTO博客,原文链接:http://blog.51cto.com/sonlich/1952080,如需转载请自行联系原作者
目录
相关文章
|
1月前
|
Linux Shell 开发工具
Shell的运行原理以及Linux当中的权限问题
Shell的运行原理以及Linux当中的权限问题
35 0
|
1月前
|
安全 Linux 数据安全/隐私保护
Linux权限详解
Linux权限详解
|
23天前
|
存储 安全 前端开发
《Linux 简易速速上手小册》第3章: 文件系统与权限(2024 最新版)
《Linux 简易速速上手小册》第3章: 文件系统与权限(2024 最新版)
41 1
|
1月前
|
Linux
【Linux】3. 基本权限与文件指令
【Linux】3. 基本权限与文件指令
25 2
|
1月前
|
Linux
linux 权限和Acl权限
linux 权限和Acl权限
17 0
|
1天前
|
Linux
如何在 Linux 中递归更改文件的权限?
【5月更文挑战第10天】
13 3
|
3天前
|
算法 Linux 数据安全/隐私保护
Linux:权限
Linux:权限
11 0
|
4天前
|
Linux 数据安全/隐私保护 Windows
【Linux】权限 !
关于Linux的权限问题,可以理解为不同级别的工作者,分别拥有不同的能力来管理文件。
19 5
|
4天前
|
Linux 开发工具 数据安全/隐私保护
深入探索Linux:ACL权限、特殊位与隐藏属性的奥秘
深入探索Linux:ACL权限、特殊位与隐藏属性的奥秘
|
4天前
|
存储 安全 Linux
从基础到高级:Linux用户与用户组权限设置详解
从基础到高级:Linux用户与用户组权限设置详解