메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


예를 들어 gooper계정의 HDFS home directory인 /user/gooper에서의 파일및 디렉토리 생성시 권한이 어떻게 부여되는지를 설명한다.

기본적으로 파일을 생성시 현재 혹은 상위폴더의 권한에 상관없이 666(default)-022(umask)=644가 생성되며, 디렉토리 생성시 777(default)-022(umask)=755가 생성된다.

그리고 group은 그대로 상속받고 user는 생성작업을 수행한 생성자의 user값으로 생성된다. 

또한 default ACL이 설정된 경우, 0의 권한이 있는 경우는 그대로 0의 권한으로 파일 혹은 디렉토리가 생성된다. 

(예를 들어 default ACL이 default:user::rwx, defautl:group::rwx, default:other::---인 경우 파일은 640, 디렉토리는 750으로 생성되고 디렉토리는 default속성을 그대로 상속받아 750+로 생성된다)


* HDFS에 디렉토리 생성시 생성 방법에 따른 권한은 다음과 같이 설정된다. 

  - HUE의 User Admin기능에서 Create home directory를 선택후 사용자 정보를 변경/저장하면 user home폴더가 755+로 권한이 설정된다.

  - HUE의 File Browser를 통해서 디렉토리 생성시 750+로 생성된다. 

  - cli에서 hdfs dfs -mkdir를 사용하여 디렉토리 생성시 770+로 생성된다. 


1. 경우#1( . 폴더에 ACL이 지정되지 않은 경우, 770)

/user                             hdfs:supergroup  775+  (ACL : default ACL이 default:user::rwx, defautl:group::rwx, default:other::---)

/user/gooper                  gooper:gooper    770

/user/gooper/a-file.txt       hdfs:gooper        644

/user/gooper/a-directory    hdfs:gooper        755



2. 경우#2 ( . 폴더에 ACL이 지정된 경우, 755+)

/user                             hdfs:supergroup  775+ (ACL : default ACL이 default:user::rwx, defautl:group::rwx, default:other::---)

/user/gooper                  gooper:gooper    755+ (ACL : default ACL이 default:user::rwx, defautl:group::rwx, default:other::---)

/user/gooper/a-file.txt       hdfs:gooper        640

/user/gooper/a-directory    hdfs:gooper        750+ (ACL : default ACL이 default:user::rwx, defautl:group::rwx, default:other::---)

번호 제목 글쓴이 날짜 조회 수
381 [shell script] 파일을 한줄씩 읽어서 파일내용으로 명령문 만들고 실행하는 shell script예제 총관리자 2017.02.21 224
380 [shell script]test.txt에 space로 분리된 내용을 일어들이는 예제 총관리자 2017.02.21 198
379 spark에서 hive table을 읽어 출력하는 예제 소스 총관리자 2017.03.09 35
378 spark에서 hive table을 읽어 출력하는 예제 소스 총관리자 2017.03.09 37
377 spark2.0.0에서 hive 2.0.1 table을 읽어 출력하는 예제 소스(HiveContext, SparkSession, SQLContext) 총관리자 2017.03.09 163
376 It is indirectly referenced from required .class files 오류 발생시 조치방법 총관리자 2017.03.09 93
375 spark 2.0.0의 api를 이용하는 예제 프로그램 총관리자 2017.03.15 199
374 kafka-manager 1.3.3.4 설정및 실행하기 총관리자 2017.03.20 617
373 nc -l 7777 : 7777포트에서 입력을 받는다. 총관리자 2017.03.23 278
372 JavaStreamingContext를 이용하여 스트림으로 들어오는 문자열 카운트 소스 총관리자 2017.03.30 129
371 [메모리 덤프파일 분석] 총관리자 2017.03.31 198
370 streaming작업시 입력된 값에 대한 사본을 만들게 되는데 이것이 실패했을때 발생하는 경고메세지 총관리자 2017.04.03 126
369 protege 설명및 사용법 file 총관리자 2017.04.04 2754
368 Container killed by the ApplicationMaster. Container killed on request. Exit code is 143 Container exited with a non-zero exit code 143 TaskAttempt killed because it ran on unusable node 오류시 조치방법 총관리자 2017.04.06 325
367 LUBM 개수별 hadoop HDFS data사이즈 정리 총관리자 2017.04.06 142
366 update를 많이 하면 heap memory가 많이 소진되고 최종적으로 OOM가 발생하는데 이에 대한 설명 총관리자 2017.04.10 717
365 [jsoup]Jsoup Tutorial 총관리자 2017.04.11 146
364 [Jsoup]특정페이지를 jsoup을 이용하여 파싱하는 샘플소스 총관리자 2017.04.18 205
363 Caused by: java.lang.ClassNotFoundException: org.apache.spark.Logging 발생시 조치사항 총관리자 2017.04.19 284
362 Spark에서 Serializable관련 오류및 조치사항 총관리자 2017.04.21 4901

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로