TIL-211213

EBinY·2021년 12월 13일
0

TIL - Today I Learned

목록 보기
17/54

Linux 심화

사용 권한

  • ls -l: 파일 또는 폴더의 속성을 리스트로 보여줌
  • d/rwx/rwx/rwx: 2번째부터 사용자, 그룹, 나머지에 대한 권한 여부를 표시
    • d: 1번째는 폴더인지 아닌지를 표시(directory or not)
    • r: read permission(읽기)
    • w: write permission(쓰기)
    • x: execute permission(실행)
  • user, group, other
    • user: file의 소유자, 기본적으로 파일을 만든 사람
    • group: 여러 user가 포함될 수 있음, 그룹에 속한 그룹원에게 권한을 부여함
    • other: 엑세스 권한이 있는 다른 user를 의미, global 권한 설정이라고 볼 수도 있음
  • chmod: 권한 변경 명령어, 폴더나 파일의 r,w,x 권한을 변경
    • OS에 로그인한 사용자와, 폴더나 파일의 소유자가 같을 경우에 사용 가능
    • 다를 경우, sudo를 이용해 변경할 수 있음
    • 두가지 방식으로 변경
      • Symbolic method
      • Absolute form
  • Symbolic method
    • +, -, = 과 엑세서 유형을 표기하는 방식
Access classOperatorAccess Type
u (user)+ (add access)r (read)
g (group)- (remove access)w (write)
o (other)= (set exact access)x (execute)
a (all:u,g,o)
chmod a=rw helloworld.js // -rw-rw-rw-
chmod u= helloworld.js // ----rw-rw-
chmod a+rx helloworld.js // -r-xrwxrwx
chmod go-wx helloworld.js // -r-xr--r--
chmod a= helloworld.js // ----------
chmod u+rwx helloworld.js // -rwx------
  • Absolute form
    • rwx를 3bit로 해석, 숫자 3자리로 권한을 표기해서 변경
PermissionNumber
Read (r)4
Write (w)2
Execute (x)1
#Sumrwx
74+2+1rwx
64+2+0rw-
54+0+1r-x
44+0+0r--
30+2+1-wx
20+2+0-w-
10+0+1--x
00+0+0---
// u=rwx (4 + 2 + 1 = 7), go=r (4 + 0 + 0 = 4)
chmod 744 helloworld.js // -rwxr--r--

환경변수

  • export: 환경변수 확인하기 && 환경변수 임시 적용
    • 터미널에 export를 입력해 기록된 환경변수를 확인
    • 명령어 export를 이용해 추가할 수 있음
      • export urclass="is good"
    • 명령어 echo와 환경변수를 입력하면, 값을 확인할 수 있음, 환경변수 앞에 $ 표시
  • dotenv: 자바스크립트에서 환경변수 사용하기
    • npm 모듈 dotenv를 사용하면 자바스크립트에서 환경변수를 사용할 수 있음
    • process.env를 이용하면, export로 확인한 내용과 동일한 내용을 객체로 출력함
  • .env: Node.js에서 환경변수 영구 적용
    • export로 적용한 환경변수는 사용중인 터미널에서 임시로 사용 가능
    • .env 파일을 생성하고, 환경변수를 입력하고 저장
    • 환경변수를 이용해 API key, DB password와 같은 민감한 정보를 저장, 관리할 수 있음
      • 서로 다른 PC 또는 여러 .env 파일에서, 같은 변수 이름에 다른 값을 할당할 수 있음
      • 실제 제품(서비스)을 개발하는 과정에서는 개발 환경(local 또는 development)과 테스트 서버의 환경(test), 그리고 실제 제품을 제공하는 환경(production)이 있음

0개의 댓글