-
5월 31일 TIL - Linux 알아보기TIL(Today I Learned) 2023. 5. 31. 20:07
▷ 오늘의 일정
09:10 ~ 12:00 도커 실무 1주차 강의 12:00 ~ 13:00 점 심 식 사 13:00 ~ 16:00 도커 실무 1주차 강의 16:00 ~ 18:00 코테 문제 풀기 18:00 ~ 19:00 저 녁 식 사 19:00 ~ 20:40 하루 공부 내용 정리 및 TIL 20:40 ~ 21:00 하루 공부 내용 공유 ▷ 오늘의 배움
📖 Linux OS란?
- Unix를 기반으로 개발한 OS이며, 서버용 OS로 많이 사용된다. Linux라는 명칭은 특정 OS를 지칭하는 것이 아니다. Windows라는 OS 안에 Windows 98, xp, 10 등 다양한 OS가 존재하는 것과 같이, Linux에도 Debian, Ubuntu, Redhat 등 다양한 OS가 존재한다.
- Linux는 오픈소스로 소스코드를 자유롭게 보고 수정할 수 있기 때문에 수많은 종류의 Linux 기반 OS가 존재한다.
- GUI(Graphical User Interface) 환경의 Windows, Mac과 다르게 기본적으로 CLI(Command Line Interface) 환경에서 사용된다.
🧐 로컬에서 ssh로 접속하기
ssh -i {keypair경로} ubuntu@{public ip주소}
📖 Linux 명령어
- 디렉토리를 생성하고 이동하기
# wild card(*): 이름을 지정할 경우 와일드카드를 사용하여 원하는 파일을 빠르게 탐색하거나 실행할 수 있다. ls -l ./*.txt # .txt로 끝나는 모든 파일 목록 출력하기 # 디렉토리 생성하기 mkdir ./test # 현재 경로에 test 디렉토리 생성하기 # 현재 경로 확인하기 pwd # 경로 이동하기 cd {이동할 위치} # 파일 목록 보기 ls ls -l # 리스트 형식으로 보기 ls -a # 숨김파일 보기 ls -al # 리스트 형식으로 숨김파일까지 모두 보기
- 파일 생성하고 삭제하기
# 파일 생성하기 touch {파일.확장자} # 파일 복사하기 cp {원본파일} {복사한파일명} # 원본파일을 복사한파일명으로 복사하기 cp -r {디렉토리} {복사디렉토리} # 디렉토리의 경우 -r 옵션 주기 # 파일 이동하기 mv {파일경로} {이동할경로} mv {파일명} {바꿀 파일명} # 이름을 변경할 때도 사용 가능 # 파일 삭제하기 rm {파일명} rm -r {디렉토리명} # 디렉토리의 경우 -r 옵션 주기
- 파일 혹은 디렉토리 이름이 .으로 시작할 경우 숨김파일로 취급된다.
📖 파일 읽고 쓰기
✏️ vi 편집기 활용해보기
- vi 편집기 mode 종류: insert mode(텍스트 입력 가능), commend mode(특수한 커맨드 입력 가능)
- insert mode 진입하기
- i : 현재 위치에서 insert mode 진입
- a : 현재 위치에서 커서를 한 칸 앞으로 이동 후 insert mode 진입
- A : 현재 위치에서 가장 마지막 텍스트로 이동 한 후 insert mode 진입
- o : 현재 위치에서 한칸 개행 한 후 insert mode 진입
- esc : insert mode 나가기(commend mode 진입)
- commend mode 명령어
- u : undo (ctrl + z와 동일)
- ctrl + r : redo
- gg : 커서를 가장 처음으로 옮김
- G : 커서를 마지막 줄로 옮김
- dd : line 잘라내기
- yy : line 복사
- p : 붙여넣기
- :se nu : 라인 줄 표시
- :숫자 : 숫자 라인으로 이동 (ex - :10 : 10번째 라인으로 이동)
-
더보기💬 특정 단어 검색
/word : word라는 단어를 검색
/\cword : 대소문자를 구분하지 않고 word라는 단어를 검색 (ex - /\cword)
n : 다음 단어 검색
N : 이전 단어 검색
✏️ 파일에 있는 내용 확인하기
# 파일 내용보기 cat {파일명} # 전체 내용이 보여진다. # 파일의 시작 부분 보기 head {파일명} # 파일의 첫 10줄을 보여준다. head -x {파일명} # 첫 x줄을 볼 수 있다. # 파일의 끝 부분 보기 tail {파일명} # 파일의 마지막 10줄 보여주기 tail -x {파일명} # 마지막 x줄을 볼 수 있다.
📖 패키지 설치하기
💬 python에서 pip 명령어를 활용하여 외부 패키지를 설치하고 사용하는 것처럼, Ubuntu에서는 apt 명령어를 사용해 외부 패키지를 설치하고 사용할 수 있다.
sudo apt update # apt install 명령어로 설치할 수 있는 패키지들을 최신화한다. # update 옵션은 os 설치 후 최초 한 번만 실행시켜 주면 된다. sudo apt install {설치할 패키지} # sudo는 관리자 권한으로 실행하겠다는 명령어, 기본적으로 패키지를 설치하는 행위는 관리자만 할 수 있기에 sudo를 붙여준다.
▷ 오늘의 시도
❗️SSH 접속 시 WARNING: UNPROTECTED PRIVATE KEY FILE! ❗️
ssh 인증 방법을 public key 로 하면 ssh client 는 개인키(private key) 가 있는 폴더의 권한과 개인 키 파일(보통 id_rsa)의 권한 설정 여부를 확인하고 잘못 설정되었을 경우 발생하는 오류라고 한다. 즉 권한이 적절하지 않아서 문제가 될 때 발생하는 오류이다. 이럴 땐 권한 설정을 다시 해주면 된다고 한다. 기본적으로 소유자가 아닌 사용자에게 권한을 제공해서는 안 되지만 소유자는 최소한 파일을 읽을 수 있도록 권한을 설정해준다.
# 0400, the most restrictive, e.g., only read permissions to the owning user # 0700, the least restrictive, e.g., only full permissions to the owning user chmod 0400 {파일 경로}
권한을 바꿔주니 정상적으로 접속한것을 확인 할 수 있다.
'TIL(Today I Learned)' 카테고리의 다른 글
6월 2일 TIL - 최종 프로젝트를 앞두고... (0) 2023.06.02 6월 1일 TIL - docker 알아보기 (0) 2023.06.01 5월 30일 TIL - 이미지/동영상 처리 (1) 2023.05.30 5월 29일 TIL - 머신러닝 프로젝트 마무리 (0) 2023.05.29 5월 26일 TIL - 제발 배포 제발 (0) 2023.05.27