自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

HDFS中Acl權(quán)限管理的簡單實(shí)用,你學(xué)會(huì)了嗎?

數(shù)據(jù)庫 其他數(shù)據(jù)庫
對于其他人,不可訪問這個(gè)目錄。現(xiàn)在有這么一個(gè)特殊的用戶root,我想root用戶可以訪問這個(gè)目錄,在不修改root用戶組和其他人的權(quán)限的情況下,還有什么方式可以實(shí)現(xiàn)這個(gè)功能呢?

1、背景

在我們開發(fā)的過程中有這么一種場景,/projectA目錄是hadoopdeploy用戶創(chuàng)建的,他對這個(gè)目錄有wrx權(quán)限,同時(shí)這個(gè)目錄屬于supergroup,在這個(gè)組中的用戶也具有這個(gè)目錄的wrx權(quán)限,對于其他人,不可訪問這個(gè)目錄。現(xiàn)在有這么一個(gè)特殊的用戶root,我想root用戶可以訪問這個(gè)目錄,在不修改root用戶組和其他人的權(quán)限的情況下,還有什么方式可以實(shí)現(xiàn)這個(gè)功能呢?

背景

由上圖可以,root用戶想訪問/projectA目錄,在hdfs中可以通過acl來實(shí)現(xiàn)。

2、環(huán)境準(zhǔn)備

# 創(chuàng)建目錄
[hadoopdeploy@hadoop01 ~]$ hdfs dfs -mkdir /projectA
# 列出根目錄下的文件夾
[hadoopdeploy@hadoop01 ~]$ hdfs dfs -ls /
Found 1 items
drwxr-xr-x   - hadoopdeploy supergroup          0 2023-05-24 20:35 /projectA
# 將 /projectA 目錄的權(quán)限修改成 770, 即其他人沒有這個(gè)目錄的訪問權(quán)限
[hadoopdeploy@hadoop01 ~]$ hdfs dfs -chmod 770 /projectA
# 再次查看發(fā)現(xiàn)修改成功
[hadoopdeploy@hadoop01 ~]$ hdfs dfs -ls /
Found 1 items
drwxrwx---   - hadoopdeploy supergroup          0 2023-05-24 20:35 /projectA
[hadoopdeploy@hadoop01 ~]$

環(huán)境準(zhǔn)備

從上述代碼中可知,我們創(chuàng)建了一個(gè)/projecetA的目錄,且給這個(gè)目錄的權(quán)限為770,那么其他人對這個(gè)目錄應(yīng)該是沒有訪問權(quán)限的。 通過上述圖片可知,我們用root用戶上傳文件,發(fā)現(xiàn)沒有權(quán)限。

3、開啟acl權(quán)限

3.1 修改hdfs-site.xml

<!-- 開啟acl訪問控制權(quán)限,默認(rèn)就開啟了 -->
<property>
    <name>dfs.namenode.acls.enabled</name>
    <value>true</value>
</property>

開啟acl

注意:在低版本的hadoop上默認(rèn)是禁用的,高版本默認(rèn)是開啟的。

3.2 重啟hdfs集群

[hadoopdeploy@hadoop01 ~]$ stop-dfs.sh
Stopping namenodes on [hadoop01]
Stopping datanodes
Stopping secondary namenodes [hadoop03]
[hadoopdeploy@hadoop01 ~]$ start-dfs.sh
Starting namenodes on [hadoop01]
Starting datanodes
Starting secondary namenodes [hadoop03]
[hadoopdeploy@hadoop03 ~]$

3.3 使用acl給root用戶授權(quán)

[hadoopdeploy@hadoop01 ~]$ hdfs dfs -setfacl -m user:root:rwx /projectA
[hadoopdeploy@hadoop01 ~]$ hdfs dfs -getfacl /projectA
# file: /projectA
# owner: hadoopdeploy
# group: supergroup
user::rwx
user:root:rwx
group::rwx
mask::rwx
other::---

[hadoopdeploy@hadoop01 ~]$

使用acl給root用戶授權(quán)

3.4 使用 root 用戶測試文件上傳

[root@hadoop01 ~]# hdfs dfs -put anaconda-ks.cfg /projectA
[root@hadoop01 ~]# hdfs dfs -ls /projectA
Found 1 items
-rw-r--r--   2 root supergroup       1151 2023-05-24 21:10 /projectA/anaconda-ks.cfg
[root@hadoop01 ~]#

可以看到文件上傳成功了。

4、acl的一些簡單命令

acl語法

hdfs dfs -setfacl -m user:root:rwx /projectAroot用戶設(shè)置hdfs dfs -setfacl -m group:root:rwx /projectAroot組設(shè)置

4.1 設(shè)置acl

hdfs dfs -setfacl -m user:root:rwx /projectA

/projectA這個(gè)目錄授予root用戶rwx權(quán)限。

4.2 查看acl

[hadoopdeploy@hadoop01 ~]$ hdfs dfs -getfacl /projectA
# file: /projectA
# owner: hadoopdeploy
# group: supergroup
user::rwx
user:root:rwx
group::rwx
mask::rwx
other::---

[hadoopdeploy@hadoop01 ~]$ hdfs dfs -ls /
Found 1 items
drwxrwx---+  - hadoopdeploy supergroup          0 2023-05-24 21:10 /projectA
[hadoopdeploy@hadoop01 ~]$

drwxrwx---+ 這個(gè)+表示有acl權(quán)限

4.3 移除某個(gè)用戶的acl

[hadoopdeploy@hadoop01 ~]$ hdfs dfs -setfacl -x user:root /projectA
[hadoopdeploy@hadoop01 ~]$ hdfs dfs -getfacl /projectA
# file: /projectA
# owner: hadoopdeploy
# group: supergroup
user::rwx
group::rwx
mask::rwx
other::---

[hadoopdeploy@hadoop01 ~]$

移除某個(gè)用戶的acl

4.4 刪除該目錄所有的acl權(quán)限

[hadoopdeploy@hadoop01 ~]$ hdfs dfs -setfacl -b /projectA
[hadoopdeploy@hadoop01 ~]$ hdfs dfs -getfacl /projectA
# file: /projectA
# owner: hadoopdeploy
# group: supergroup
user::rwx
group::rwx
other::---

[hadoopdeploy@hadoop01 ~]$

5、參考鏈接

1、https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/FileSystemShell.html#setfacl

責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2023-06-08 07:34:19

HDFS小文件壓縮包

2024-09-09 09:00:12

架構(gòu)設(shè)計(jì)算法

2023-08-22 10:25:19

CSS動(dòng)畫網(wǎng)頁

2023-09-06 11:31:24

MERGE用法SQL

2023-10-13 09:04:09

2022-07-08 09:27:48

CSSIFC模型

2024-02-02 11:03:11

React數(shù)據(jù)Ref

2023-01-10 08:43:15

定義DDD架構(gòu)

2024-02-04 00:00:00

Effect數(shù)據(jù)組件

2023-07-26 13:11:21

ChatGPT平臺(tái)工具

2024-01-19 08:25:38

死鎖Java通信

2024-01-02 12:05:26

Java并發(fā)編程

2023-08-01 12:51:18

WebGPT機(jī)器學(xué)習(xí)模型

2024-03-04 07:41:18

SpringAOPOOP?

2025-01-14 08:32:55

JWT令牌.NET

2023-06-05 08:36:04

SQL函數(shù)RANK()

2024-01-05 07:46:15

JS克隆對象JSON

2023-12-26 10:12:19

虛擬DOM數(shù)據(jù)

2019-06-19 08:09:05

CSSJavaScript前端

2023-03-28 08:20:07

場景sync.Once?系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號