220712 TIL

Parker.Park·2022년 7월 12일
0

TIL

목록 보기
30/39

220712 TIL

다시 프로젝트를 열려고 한다. 몇 가지 궁금증과 문제를 만나게 되었다.

GCP VM 인스턴스 만든 후

배포를 위해 GCP VM 인스턴스를 만든다. 만들 때 (수업시간에 배운 것을 바탕으로 한다면) Ubuntu를 설치한다.(선택한다.) 다음으로 docker를 설치해야 하는데 설치를 위해서 패키지를 설치해야 한다고 한다. 여기서 몇 가지 알아봐야 할 것들을 정리해보자.

apt?

APT(Advanced Packaging Tool)은 데비안(Debian) 리눅스 게열의 주 패키지 관리 도구라고 한다. 원래는 apt-get과 apt-cache 두 전문 패키지가 있었다고 하는데 이 명령들을 통합하여 고안된 새 패키지를 APT라고 한다.

sudo apt update?, sudo apt upgrade?

기계적으로 따라 했던 Update 후 , upgrade ... 차이점을 알 수 없었다.

  • update : 설치 가능한 패키지 리스트를 최신화
  • upgrade : 실제 업데이트

아울러 리스트를 불러오는 명령어도 있다고 한다.

$ sudo apt list //현재 리스트를 와르르 불러온다.
$ sudo apt list --upgradable //업그레이드가 가능한 목록들을 보여준다.

이렇게 알고나니깐, 'sudo apt update' 이후 명령문이 눈에 들어왔다.

$ sudo apt update
(...)
$ 7 packages can be upgraded. Run 'apt list --upgradable' to see them.

몇 가지 리눅스 명령어

~ (물결)

로그인한 유져의 홈 디렉토리를 의미한다고 한다.

$ cd ~ //$ home/로그인유저 로 이동

pwd

현재 디렉토리

mkdir [-option][directory name]

  • option
    -m, --mode
    디렉토리 생성 후 디렉토리의 기본 권한을 지정한다고 한다.
    -p, --parents
    상위 경로까지 생성한다.

curl

curl 이 리눅스 명령어 정도로 알고 있었는데 아니었다. curl은 서버에서 또는 서버로 데이터를 전송하기 위한 명령줄 유틸리티라고 한다. 여러 프로토콜을 지원하고 데이터를 업로드하거나 다운로드 할 때 사용 할수 있다고 한다. 명령어 정도로만 알았다니 ㅎㄷㄷ.
보통 요즘에는 리눅스 배포 환경에서는 기본적으로 curl이 설치 되어 있다고 한다. 우선 curl에 대해서는 이정도로만 정리하려고 한다. 보통 라이브러리 document에 curl에 대해 알려주고 있다.

chmod

파일 접근 및 실행 권한 제어를 하는 명령어로 볼 수 있다. 'ls -l'이라는 명령어로 권한을 확인 할 수 있다.
chmod는 'change mode'의 약자라고 한다.('츄모드' 혹은 '츄마드'라고 읽는다고 한다.) chmod는 +, - 기호를 사용 하여 user(owner), group, others에게 권한을 주는 명령어로 볼 수 있다.

$ ls -l
(...)
drwxrwxr-x 5 owner group 4096 Jul 12 07:28

여기서 d~부터 rwx // rwx // r-x 는 권한을 의미한다. 그리고 처음부터 권한자를 뜻하는데 user(u) // group(g) // others(g) 이 권한자이다. 또한 r // w // x 의미는 다음과 같다.

  • r
    파일 내용 읽기 , 디렉토리 내용 읽기
  • w
    파일 내용 편집, 디렉토리 내용 편집
  • x
    실행파일 경우에만 실행, 디렉토리 접근

chmod 명령어 : 심볼릭 모드, 8진수 모드

chmod명령어는 심볼릭 모드와 8진수 모드 명령어가 있다고 한다.

  • 심볼릭모드
    who/what/which 로 나눌수 있고, who(u, g, o, a(모두))에게 what(+(추가), -(제거), =(초기화 및 세팅))으로 which(r, w, x)을 설정한다는 명령어 모드이다.
$ ls -l
(...)
-rw-rw-r-- 1 owner group 565 Jul 12 07:28

$ chmod u-w,g-w,o+x file name

$ ls -l
(...)
-r--r--r-x 1 owner group 565 Jul 12 07:48

여기서 u-w,g-w,o+x는 u(user)에게 w(편집권한)을 -(제거)하고, g(group)의 w(편집권한)을 -(제거)하고, o(others)에게 x(실행권한)을 +(추가)한다는 의미로 볼 수 있다.
-rw-rw-r-- -> -r--r--r-x 로 변경된것을 확인할 수 있다.

  • 8진수 모드
    그렇다면 8진수모드는 무엇일까? 앞에서 심볼릭모드는 8진수로 축약한 것이다. r / w / x 를 2^2 / 2^1 / 2^0 으로 표현하고 권한별로 더 해준 것이라고 한다. 예를 들어 rwx는 '4(2^2) + 2(2^1) + 1(2^0) = 7'로 나타 낼 수 있다. 반대로 모든 권한을 뺀 것은 0(---)이다. 그리고 명령어 사용시에는 user/group/others 순으로 사용한다. 예를 들어 'chmod 777'은 user, group, others에게 모든 권한(rwx)를 주는 것을 의미한다.

마치면서

얕게 알아보려고 했으나 역시~ 많은 내용이 있었다.

참조

[[ 우분투 UBUNTU ] APT 명령어 UPDATE, UPGRADE 차이점, tistory, 2022년07월15일 접속]
https://tttap.tistory.com/130

[우분투(Ubuntu) 패키지 관리 - apt 명령 사용법 - APT(Advanced Packaging Tool) 패키지 관리 도구 기본 사용법, [씨실과 날실 - IT:티스토리], 2022년07월15일 접속]
https://wnw1005.tistory.com/360

[[리눅스 명령어]리눅스 파일 및 디렉토리 생성 및 복사, 이동,삭제 (touch,mkdir,cp,mv,rm), 해병코딩, 2022년07월15일 접속]
https://marine1188.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-%EB%AA%85%EB%A0%B9%EC%96%B4%EB%A6%AC%EB%88%85%EC%8A%A4-%ED%8C%8C%EC%9D%BC-%EB%B0%8F-%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC-%EC%83%9D%EC%84%B1-%EB%B0%8F-%EB%B3%B5%EC%82%AC-%EC%9D%B4%EB%8F%99%EC%82%AD%EC%A0%9C-touchmkdircpmvrm

[[리눅스]리눅스 권한 및 리눅스 소유권 이란?권한 변경 예제 포함 chmod, 해병코딩, 22년07월15일 접속]
https://marine1188.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4%EB%A6%AC%EB%88%85%EC%8A%A4-%EA%B6%8C%ED%95%9C-%EB%B0%8F-%EB%A6%AC%EB%88%85%EC%8A%A4-%EC%86%8C%EC%9C%A0%EA%B6%8C-%EC%9D%B4%EB%9E%80%EA%B6%8C%ED%95%9C-%EB%B3%80%EA%B2%BD-%EC%98%88%EC%A0%9C-%ED%8F%AC%ED%95%A8-chmod?category=931997

[리눅스 기본 명령어 (Linux basic commands), tistory, 2022년07월15일 접속]
https://ltvw.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-%EA%B8%B0%EB%B3%B8-%EB%AA%85%EB%A0%B9%EC%96%B4-Linux-basic-commands

profile
개발자준비중

0개의 댓글