亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

linux系統(tǒng)是一個(gè)典型的多用戶操作系統(tǒng),不同的用戶處于不同的地位,為了保護(hù)系統(tǒng)的安全性,linux系統(tǒng)對(duì)于不同用戶訪問(wèn)同一個(gè)文件或目錄做了不同的訪問(wèn)控制。而這種控制就是通過(guò)權(quán)限實(shí)現(xiàn)的,本節(jié)課我們介紹linux權(quán)限的使用

一、基本權(quán)限

基本權(quán)限的介紹

Linux中每個(gè)文件或目錄都有3個(gè)基本權(quán)限位,控制三種訪問(wèn)級(jí)別用戶的讀、寫、執(zhí)行,所以linux的基本權(quán)限位一共有9個(gè)。基本權(quán)限位和另外3個(gè)可以影響可執(zhí)行程序運(yùn)行的3個(gè)特殊權(quán)限位一起構(gòu)成了文件訪問(wèn)模式。三個(gè)屬性規(guī)定了對(duì)應(yīng)三種級(jí)別的用戶能夠如何使用這個(gè)文件,這三個(gè)基本權(quán)限位對(duì)于文件和目錄的含義有所差別的,我們一起來(lái)看一下

字符

權(quán)限

對(duì)文件的含義

對(duì)目錄的含義

r

意味著我們可以查看閱讀

可以列出目錄中的文件列表

w

意味著,對(duì)文件可以修改或刪除

可以在該目錄中創(chuàng)建、刪除文件

x

執(zhí)行

如果是文件就可以運(yùn)行,比如二進(jìn)制文件或腳本。

可以使用cd命令進(jìn)入該目錄

那三種訪問(wèn)級(jí)別都有哪些呢?每個(gè)文件都有三組不同的讀、寫和執(zhí)行權(quán)限,分別適用于三種訪問(wèn)級(jí)別,其中每組中的三個(gè)欄位分別使用讀取權(quán)限(r)、寫入權(quán)限(w)、執(zhí)行權(quán)限(x)或沒有相應(yīng)的權(quán)限(-)來(lái)表示,共9位來(lái)表示。

linux權(quán)限管理

 

第一組:適用于文件的屬主,圖中屬主的權(quán)限是rwx。

第二組:適用于文件的屬組,圖中屬組的權(quán)限是r-x。

第三組:使用于其它用戶權(quán)限位,圖中其它用戶權(quán)限位是r-x。

當(dāng)有人試圖訪問(wèn)一個(gè)文件的時(shí)候,linux系統(tǒng)會(huì)按順序執(zhí)行如下步驟:

(1)使用者擁有這個(gè)文件嗎?如果是,啟用用戶權(quán)限。

(2)用戶是組所有者成員嗎?如果是,啟用組權(quán)限

(3)如果以上兩個(gè)都不是,啟用其它人權(quán)限

上面我們提到的是第一種表示方法,在linux中還有另外一種表示方法,八進(jìn)制表示法,我們來(lái)看下字母和八進(jìn)制表示方法的對(duì)應(yīng)關(guān)系

字符表示法

八進(jìn)制表示法

含義

r

4

w

2

x

1

執(zhí)行

所以上面給出的權(quán)限r(nóng)wxr-xr-x換成數(shù)字的表示方式就是755,那權(quán)限如何設(shè)置呢?

基本權(quán)限的設(shè)置和查看

通過(guò)前面的學(xué)習(xí)我們知道,用戶分為所有者,所有者組,其他人這三類,而每一類有包含三種基本權(quán)限,他們的對(duì)應(yīng)關(guān)系是

權(quán)限位

含義

屬主權(quán)限位

用于限制文件或目錄的創(chuàng)建者

屬組權(quán)限位

用于限制文件或目錄所屬組的成員

其它用戶的權(quán)限

用于限制既不是屬主又不是所屬組的能訪問(wèn)該文件或目錄的其他人員

當(dāng)我們使用命令來(lái)查看文件或目錄時(shí),會(huì)看如下內(nèi)容

[root@localhost ~]# ls -l
總用量 13804
drwxr-xr-x. 2 root root 6 10月 11 06:36 公共
drwxr-xr-x. 2 root root 6 10月 11 06:36 模板
drwxr-xr-x. 2 root root 6 10月 11 06:36 視頻
drwxr-xr-x. 2 root root 6 10月 11 06:36 圖片
drwxr-xr-x. 2 root root 6 10月 11 06:36 文檔
drwxr-xr-x. 2 root root 6 10月 11 06:36 下載
drwxr-xr-x. 2 root root 6 10月 11 06:36 音樂(lè)
drwxr-xr-x. 2 root root 6 10月 11 06:36 桌面
-rw-------. 1 root root 1214 10月 11 06:12 anaconda-ks.cfg
-rw-r--r--. 1 root root 1369 10月 11 06:17 initial-setup-ks.cfg

每一行顯示一個(gè)文件或目錄的信息,這些信息包括文件的類型(1位)、文件的權(quán)限(9位)、文件的連接數(shù)、文件的屬主(第3列)、文件的所屬組(第4列),大小以及相關(guān)時(shí)間和文件名。其中Linux 文件的權(quán)限標(biāo)志為九個(gè),分為3 組,分別代表文件擁有者的權(quán)限,文件所屬用戶組的權(quán)限和其它用戶的權(quán)限,現(xiàn)在我們知道文件有三種權(quán)限((r)讀取、(w)寫入和(x)執(zhí)行)和三種訪問(wèn)級(jí)別((u)用戶、(g)主要組和(o)其它人)決定文件可以被如何使用。那如何修改?

修改文件權(quán)限 chmod

linux權(quán)限管理

 

縮寫

含義

u

User(用戶)

g

Group (組)

o

Other(其它)

a

All(所有)

+

Add(加)

-

Remove(減去)

=

Set (設(shè)置)

r

Read (可讀)

w

Write (可寫)

x

Execute (執(zhí)行)

命令

作用

結(jié)果權(quán)限

chmod o-r a.file

取消其他人的可讀權(quán)限

rw-rw---

chmod g-w a.file

取消組的寫入權(quán)限

rw-r--r--

chmod ug+w a.file

賦予用戶和組寫入權(quán)限

rwxrwxr--

chmod o+w a.file

賦予其他人寫入權(quán)限

rw-rw-rw-

chmod go-rwx a.file

取消組和其他人的閱讀、寫入和執(zhí)行權(quán)限

rw-------

chmod a-w a.file

取消所有人的寫入權(quán)限

r-- r-- r--

chmod uo-r a.file

取消用戶和其它人的閱讀權(quán)限

-w-rw--w-

chmod go=rw a.file

將組和其他人的權(quán)限設(shè)置為閱讀和寫入

rw-rw-rw-

使用數(shù)字的表示方式類似chmod 755 a,執(zhí)行完成后a這個(gè)文件的權(quán)限對(duì)應(yīng)就是 -rwxr-xr-x,這是文件權(quán)限的兩種修改方式,如果你想修改文件的所有者和所有者組需要使用的命令就是chown,chgrp

[root@localhost test]# ll
總用量 0
-rw-r--r-- 1 root root 0 10月 18 01:26 file1
[root@localhost test]# chown oracle file1
[root@localhost test]# ll
總用量 0
-rw-r--r-- 1 oracle root 0 10月 18 01:26 file1
[root@localhost test]# chgrp oracle file1
[root@localhost test]# ll
總用量 0
-rw-r--r-- 1 oracle oracle 0 10月 18 01:26 file1

這里,我們涉及到了三條與權(quán)限修改相關(guān)的命令

操作

可以執(zhí)行的用戶

chmod

Root用戶和文件的所有者

chgrp

Root用戶和文件的所有者(必須是組成員)

chown

只有root用戶

以上是三種基本權(quán)限 -R

文件或目錄的默認(rèn)權(quán)限

每一個(gè)新產(chǎn)生的文件都會(huì)有一個(gè)默認(rèn)的權(quán)限,這個(gè)權(quán)限是通過(guò)系統(tǒng)中的umask來(lái)控制的

文件的最大權(quán)限是666

目錄的權(quán)限是777

使用umask查看

二、特殊權(quán)限

特殊權(quán)限的介紹

之前我們提到了特殊權(quán)限有三個(gè),這三個(gè)特殊權(quán)限是在可執(zhí)行程序運(yùn)行時(shí)影響操作權(quán)限的,它們分別是SUID,SGID,sticky-bit位

特殊權(quán)限

說(shuō)明

SUID

當(dāng)一個(gè)設(shè)置了SUID 位的可執(zhí)行文件被執(zhí)行時(shí),該文件將以所有者的身份運(yùn)行,也就是說(shuō)無(wú)論誰(shuí)來(lái)執(zhí)行這個(gè)文件,他都有文件所有者的特權(quán)。任意存取該文件擁有者能使用的全部系統(tǒng)資源。如果所有者是 root 的話,那么執(zhí)行人就有超級(jí)用戶的特權(quán)了。

SGID

當(dāng)一個(gè)設(shè)置了SGID 位的可執(zhí)行文件運(yùn)行時(shí),該文件將具有所屬組的特權(quán),任意存取整個(gè)組所能使用的系統(tǒng)資源;若一個(gè)目錄設(shè)置了SGID,則所有被復(fù)制到這個(gè)目錄下的文件,其所屬的組都會(huì)被重設(shè)為和這個(gè)目錄一樣,除非在復(fù)制文件時(shí)保留文件屬性,才能保留原來(lái)所屬的群組設(shè)置。

stickybit

對(duì)一個(gè)文件設(shè)置了sticky-bit之后,盡管其他用戶有寫權(quán)限,也必須由屬主執(zhí)行刪除、移動(dòng)等操作;對(duì)一個(gè)目錄設(shè)置了sticky-bit之后,存放在該目錄的文件僅準(zhǔn)許其屬主執(zhí)行刪除、移動(dòng)等操作。

一個(gè)典型的例子就是passwd命令,這個(gè)命令允許用戶修改自己的密碼。我們可以看到本來(lái)是rwx的權(quán)限表示形式變成了rws,同樣如果/usr/bin/passwd這個(gè)文件同時(shí)被設(shè)置了三個(gè)特殊權(quán)限,那么權(quán)限的格式就會(huì)變成rwsrwsrwt,需要注意的是特殊權(quán)限設(shè)置的前置要求是可執(zhí)行,也就是如果沒有x權(quán)限位,是不要設(shè)置的,即便你使用root用戶設(shè)置上了特殊權(quán)限,也不會(huì)生效。

[root@localhost test]# ll /usr/bin/passwd 
-rwsr-xr-x. 1 root root 34928 5月 11 11:14 /usr/bin/passwd

特殊權(quán)限的設(shè)置和查看

特殊權(quán)限的設(shè)置也是使用chmod

[root@localhost test]# ll
總用量 0
-rwxr-xr-x 1 oracle oracle 0 10月 18 01:26 file1
[root@localhost test]# chmod u+s file1
[root@localhost test]# ll
總用量 0
-rwsr-xr-x 1 oracle oracle 0 10月 18 01:26 file1
[root@localhost test]# chmod g+s file1
[root@localhost test]# ll
總用量 0
-rwsr-sr-x 1 oracle oracle 0 10月 18 01:26 file1
[root@localhost test]# chmod o+t file1
[root@localhost test]# ll
總用量 0
-rwsr-sr-t 1 oracle oracle 0 10月 18 01:26 file1

或者使用數(shù)字

[root@localhost test]# chmod u-s,g-s,o-t file1
[root@localhost test]# ll
總用量 0
-rwxr-xr-x 1 oracle oracle 0 10月 18 01:26 file1
[root@localhost test]# chmod 7755 file1
[root@localhost test]# ll
總用量 0
-rwsr-sr-t 1 oracle oracle 0 10月 18 01:26 file1

三、隱藏權(quán)限

隱藏權(quán)限的介紹

有時(shí)候你發(fā)現(xiàn)即使使用的是root用戶也不能修改某個(gè)文件,大部分原因是因?yàn)槭褂眠^(guò)chattr命令鎖定了該文件,這個(gè)命令的作用很大,通過(guò)chattr可以提高系統(tǒng)的安全性,但是這個(gè)命令并不適合所有的目錄,如/dev,/tmp,/var。與我們前面看到的chmod這些命令修改權(quán)限不同的是chattr修改的是更底層的屬性,這里面我們所提到的隱藏權(quán)限指的就是使用chattr來(lái)設(shè)置屬性

隱藏權(quán)限的設(shè)置和查看

chattr的用戶與我們之前講的chmod,chow這些命令相似,都是直接對(duì)需要修改的文件進(jìn)行操作就可以了

[root@localhost test]# chattr +AaiSd file1
[root@localhost test]# lsattr file1 
--S-iadA---------- file1
[root@localhost test]# chattr = file1
[root@localhost test]# lsattr file1 
------------------ file1

A 文件或目錄的atime不可被修改
S 硬盤I/O同步選項(xiàng),功能類似sync。
a 只能向文件中添加數(shù)據(jù),而不能刪除,多用于服務(wù)器日志文件安全,只有root才能設(shè)定這個(gè)屬性。
d 文件不能成為dump程序的備份目標(biāo)。
i 設(shè)定文件不能被刪除、改名、設(shè)定鏈接關(guān)系,同時(shí)不能寫入或新增內(nèi)容。

通過(guò)上面的例子可以看到查看的時(shí)候使用的是lsattr,chattr還有很多參數(shù),各位可以在man手冊(cè)中獲取到幫助,另外有些參數(shù)的使用是有局限性的。

 

四、acl權(quán)限

acl權(quán)限的介紹

linux的權(quán)限非常重要,我們之前所說(shuō)的幾種權(quán)限中,但是并不能只針對(duì)一個(gè)用戶或者一個(gè)組進(jìn)行單獨(dú)設(shè)置,而ACL權(quán)限可以幫助我們實(shí)現(xiàn)這個(gè)功能,比如說(shuō)有一個(gè)文件的所有者和所有者組都是a,這個(gè)文件的權(quán)限是660,我可以讓b這個(gè)用戶可以對(duì)文件進(jìn)行讀寫的操作,而b這個(gè)用戶并不屬于a組的成員。那我們來(lái)看下如何使用

acl權(quán)限的設(shè)置和查看

如果要使用acl權(quán)限,首先要確定你的文件系統(tǒng)支持acl權(quán)限,如果在Default mount options字段出現(xiàn)acl字樣就意味著你的文件系統(tǒng)支持acl,不過(guò)在centos8中默認(rèn)是都支持的。

[root@localhost test]# tune2fs -l /dev/sda1
tune2fs 1.44.3 (10-July-2018)
Filesystem volume name: <none>
Last mounted on: /boot
Filesystem UUID: be03eaec-6474-42ea-8f79-06e7198f5155
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent 64bit flex_bg sparse_super large_file huge_file dir_nlink extra_isize metadata_csum
Filesystem flags: signed_directory_hash 
Default mount options: user_xattr acl
Filesystem state: clean
.
.
.

配置acl權(quán)限我們需要使用兩個(gè)命令一個(gè)是setfacl用來(lái)設(shè)置acl權(quán)限,另一個(gè)是getfacl用來(lái)查看acl權(quán)限

setfacl

-m :設(shè)置acl
-x :刪除指定的acl
-b :刪除所有的acl

getfacl用來(lái)查看文件的acl權(quán)限,現(xiàn)在我們來(lái)看下如何設(shè)置

[root@localhost test]# ls
file file1
[root@localhost test]# ll file1
-rw-r--r-- 1 root root 0 10月 18 02:48 file1
[root@localhost test]# setfacl -m u:oracle:rw file1 為指定的用戶配置一個(gè)rw的權(quán)限
[root@localhost test]# setfacl -m u::rwx file1 如果沒有指定用戶則默認(rèn)是為該文件的所有者設(shè)置
[root@localhost test]# ll file1
-rwxrw-r--+ 1 root root 0 10月 18 02:48 file1 所有者權(quán)限變成的rwx而且后面多了一個(gè)+號(hào)

你會(huì)發(fā)現(xiàn)使用ll(等同于ls -l)命令查看時(shí)會(huì)發(fā)現(xiàn)多了一個(gè)+號(hào),這只是提醒我們此文件被設(shè)置了acl權(quán)限,但是具體是什么樣的,我們還需要使用getfacl來(lái)查看

[root@localhost test]# getfacl file1
# file: file1 文件名
# owner: root 所有者
# group: root 所有者組
user::rwx user:后面是空的,代表的是所有者的權(quán)限
user:oracle:rw- 我們之前給額外用戶設(shè)置的權(quán)限
group::r-- 所有者組的權(quán)限
mask::rw- 默認(rèn)的有效權(quán)限
other::r-- 其他人的權(quán)限

以上是我們針對(duì)一個(gè)額外的用戶設(shè)置的權(quán)限,同理可以設(shè)置針對(duì)組和其他人的acl權(quán)限

[root@localhost test]# setfacl -m g:oracle:rw file1
[root@localhost test]# setfacl -m o:rw file1
[root@localhost test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rwx
user:oracle:rw-
group::r--
group:oracle:rw-
mask::rw-
other::rw-

刪除指定的acl

[root@localhost test]# setfacl -x u:oracle file1 刪除用戶acl
[root@localhost test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rwx
group::r--
group:oracle:rw-
mask::rw-
other::rw-
[root@localhost test]# setfacl -x g:oracle file1 刪除組acl
[root@localhost test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rwx
group::r--
mask::r--
other::rw-
[root@localhost test]# chmod o=r file1 刪除其他人直接使用chmod就可以
[root@localhost test]# ll file1
-rw-r--r-- 1 root root 0 10月 18 04:21 file1
[root@localhost test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rw-
group::r--
other::r--

刪除所有acl

[root@localhost test]# setfacl -m u:oracle:rw,g:oracle:rw,o:rwx file1
[root@localhost test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rw-
user:oracle:rw-
group::r--
group:oracle:rw-
mask::rw-
other::rwx
[root@localhost test]# setfacl -b file1
[root@localhost test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rw-
group::r--
other::rwx

你沒看錯(cuò),權(quán)限在指定的時(shí)候是可以指定多個(gè)的,我們之前提到的chmod也可以這樣使用,好了權(quán)限管理我們就說(shuō)這么多,現(xiàn)在我們來(lái)總結(jié)一下

總結(jié)

本節(jié)課我們學(xué)習(xí)了linux的權(quán)限管理,我們將權(quán)限管理分為四個(gè)部分

基本權(quán)限

特殊權(quán)限

隱藏權(quán)限

acl權(quán)限

其中基本權(quán)限和特殊權(quán)限的設(shè)置方法是類似的,隱藏權(quán)限和acl權(quán)限都有自己的設(shè)置方式,本節(jié)課的內(nèi)容是后面課程的基石,大家要盡快熟悉,靈活應(yīng)用。

分享到:
標(biāo)簽:權(quán)限 linux
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定