Linux (사용 권한, 환경 변수)

Jamie·2021년 8월 23일
post-thumbnail

Read, Write, Execute 권한

mkdir linux -> 리눅스 폴더 생성
nano  helloworld.js -> helloworld.js 파일 생성
ls-l  -> 사용권한 조회
  • -: not directory(파일)
  • d: directory(폴더)
  • r: read permission(읽기 권한)
  • w: write permission(쓰기 권한)
  • x: execute permission(실행 권한)
ex) -rw-r--r--    drwxr-xr-x

3번에 걸쳐 나타나는 이유: 사용자와 그룹, 나머지에 대한 권한을 표시함

ex) rw-r--r-- : 소유자는 읽기와 쓰기가 가능하고, 다른 사용자 그룹은 읽기만 가능
    rwxr-xr-x : 소유자는 읽기와 쓰기, 실행이 가능하고, 다른 사용자 그룹은 읽기와 실행만 가능

user, group and other

  • user: 파일의 소유자(파일을 만든 사람)
  • group: 여러 user가 포함될 수 있음
    그룹에 속한 모든 users는 동일한 group 엑세스 권한을 갖음
    각 user에게 일일이 권한을 할당하는 대신 모든 user를 group에 추가하고, 파일에 group 권한을 할당할 수 있음
  • other: 파일에 대한 액세스 권한이 있는 다른 user, 파일을 만들지 않은 다른 모든 user
    따라서 other 권한을 설정하면, 해당 권한을 global 권한 설정이라고 볼 수 있음

chmod: 권한을 변경하는 명령어

: 읽기, 쓰기, 실행 권한을 변경할 수 있음

ex) chmod g-r filename         => removes read permission from group
    chmod u+x filename         => adds execute permission to user
    chmod a=rw helloworld.js   => -rw-rw-rw-
    chmod go-wx helloworld.js  => -r-xr--r--

Absolute form

: 숫자 7까지 나타내는 3bits의 합으로 표기

Read(r) -> 4
Write(w) -> 2
Execute(x) -> 1
ex)
7 === 4(r) + 2(w) + 1(x) => rwx (read, write, execute)
6 === 4(r) + 2(w) + 0(-) => rw- (read, write)
5 === 4(r) + 0(-) + 1(x) => r-x (read, execute)
4 === 4(r) + 0(-) + 0(-) => r-- (read only)
3 === 0(-) + 2(w) + 1(x) => -wx (write, execute)
2 === 0(-) + 2(w) + 0(-) => -w- (write only)
1 === 0(-) + 0(-) + 1(x) => --x (execute only)
0 === 0(-) + 0(-) + 0(-) => --- (none)
usage ex) u=rwx (4 + 2 + 1 = 7), go=r (4 + 0 + 0 = 4)
    	  chmod 744 helloworld.js  => -rwxr--r--

환경변수 사용법

export

: 기록된 환경변수를 확인하거나 새로운 환경변수를 추가할 수 있음
이 때, 등호 표시(=) 앞 뒤에는 반드시 공백이 없어야 함

) export urclass="is good"

echo
: 함께 환경변수를 입력하면, 환경변수의 값을 확인할 수 있음
환경변수의 앞에 $을 입력하여, 변수라는 뜻을 터미널에 전달할 수 있음

dotenv: 자바스크립트에서 환경변수 사용하기

npm 모듈을 설치 => 새로운 폴더를 만듬 => npm init 입력 => npm i dotenv
(생성된 폴더는 설치할 모듈과 이름이 같아서는 안됨)

process.env

node.js 환경에서 조회할 수 있음

.env: Node.js에서 환경변수 영구 적용

export로 적용한 환경변수는 현재 사용 중인 터미널에서만 임시로 사용 가능함

profile
공부하고 비행하다 개발하며 여행하는 frontend engineer

0개의 댓글