리눅스 명령어

LeeKyoungChang·2022년 4월 25일
0
post-thumbnail
post-custom-banner

메타코딩 유튜브를 참고하여 정리한 내용입니다.

 

📚 1. 리눅스 명령어 vi 에디터 사용법

리눅스 환경에서 메모장이다.

스크린샷 2022-04-22 오후 12 23 26

✔️ 내가 자주 사용하는 명령어

(1) 명령 모드 (esc 눌렀을 때, vi 처음 들어갔을 때)

  • G : 파일의 끝으로 이동할 때
  • dd : 한줄 잘라내기
  • 3dd : 세줄 잘라내기
  • p : 붙여넣기
  • x : 한글자 삭제
  • dw : 단어 삭제
  • u : 실행취소 (이전 실행 되돌리기)
  • ctrl + r : 최신 실행으로 되돌리기 (u와 반대)
  • o : 다음 줄의 맨 앞으로 입력 모드
  • $ : 줄의 맨 뒤
  • i : 입력 모드
  • shift + v : 블럭지정
  • x : 현재 커서의 문자 삭제
  • yy : 현재 행 복사
  • fn + ↑ : 행의 맨 처음으로 이동
  • fn + ↓ : 행의 맨 끝으로 이동
  • ctrl + b : 위로 한 화면 스크롤
  • ctrl + f : 아래로 한 화면 스크롤

 

(2) 마지막행 모드 (esc + :를 눌렀을 때)
명령어 뒤에 !를 붙이면 강제로 수행, vi가 궁시렁 거리면 !를 붙여서 실행하기!

  • w : 저장
  • q : 종료
  • wq : 저장 후 종료
  • set nu : 라인 번호
  • ?문자열 : 커서 위치 뒤로 문자열 찾기
  • /문자열 : 커서 위치 앞으로 문자열 찾기

 

📚 2. 리눅스 명령어 chown

파일 소유권 변경 명령어

✔️ 파일 소유권 변경

  • chown {소유권자}:{그룹식별자} {소유권을 변경하고 싶은 파일명}
  • chown -R {소유권자}:{그룹식별자} {소유권을 변경하고 싶은 디렉토리명} : 하위 디렉토리까지 모두 소유권 변경

-rw-r--r-- 1 root root

sudo chown root:ubuntu test2.txt
ubuntu user는 이제 쓰기가 가능하다.

 

📖 A. 파일 소유권 변경하기 위한 테스트

✔️ su root로 접근 실패
su root 하려고 하지만

스크린샷 2022-04-25 오전 11 32 20
  • 접근 실패

이럴 경우는
sudo passwd를 통해 새로운 비밀번호로 변경하다.

스크린샷 2022-04-25 오전 11 33 14

성공
스크린샷 2022-04-25 오전 11 33 52

 

✔️ text2.txt 파일 root 경로에 생성

스크린샷 2022-04-25 오전 11 35 39
  • root로부터 생성완료

 

✔️ 그룹을 ubuntu로 변경하기

변경후, ubuntu에서 text2.txt 파일 수정해보기

스크린샷 2022-04-25 오전 11 35 51

 

스크린샷 2022-04-25 오전 11 42 02
  • sudo chmod 664 text2.txt : 그룹도 파일 수정할 수 있게
  • sudo chown root:ubuntu text2.txt : text2 사용자는 root, 그룹을 ubuntu로 변경
    • root:ubuntu → root : 사용자, ubuntu : 그룹
    • 이제 ubuntu 에서도 파일을 수정할 수 있다.
스크린샷 2022-04-25 오전 11 45 55 스크린샷 2022-04-25 오전 11 46 10

 

📚 3. 리눅스 명령어 find

  • 리눅스는 파일 설치시 다양한 디렉터리에 저장된다.
  • sudo find . -name "FILE" : 현재 디렉토리(.)에서 "FILE"이라는 이름을 가진(-name "FILE") 파일을 찾아라

netstat -nlpt : 8080 port가 잘 돌아가고 있는 것을 확인할 수 있다.

스크린샷 2022-04-22 오전 10 17 02

 

sudo find / -name tomcat8 : /부터 tomcat8 이름을 찾겠다.

스크린샷 2022-04-25 오후 1 24 27

 

📖 A. 웹 서버 띄워보기

/var/lib/tomcat8/webapps/ROOT 으로 이동한다.
스크린샷 2022-04-25 오후 1 29 39

  • webapps : tomcat이 기본적으로 클라이언트에게 제공하는 웹 애플리케이션이 저장된 공간으로서, 웹 어플리케이션의 루트 디렉터리이다. (참고)

 

현재는 -rw-r--r-- : 기타 사용자는 읽기만 가능하고, 주인만 읽기 및 수정이 가능하므로, chmod로 파일 모드를 변경한다.

sudo chmod u+x,g+wx,o=rw를 실행한다.

스크린샷 2022-04-25 오후 1 39 06
  • 결과 : -rwxrwxrw-

✔️ chmod로 파일 소유권 권한 변경하기 (띄워쓰기 하지 말기)

스크린샷 2022-04-25 오전 11 56 55

 

✔️ 띄워지는 화면 글 수정하기 - index.html 수정
vi index.html

스크린샷 2022-04-25 오후 1 42 15

확인 결과
스크린샷 2022-04-25 오후 1 42 55

스크린샷 2022-04-25 오후 1 46 14

현재는 13.209.43.27:8080로 실행이 된다.

 

📖 B. 웹 서버 port 변경하기

/var/lib/tomcat8/conf : conf는 웹 서버 설정 폴더이다.

스크린샷 2022-04-25 오후 1 49 38 스크린샷 2022-04-25 오후 1 51 37
  • 서버에서 port 설정 변경하기 (8080 → 8000)

 

설정 파일을 수정하고 나서는 재시작을 해줘야 한다!

sudo service tomcat8 restart

스크린샷 2022-04-25 오후 1 54 00

 

그런데 연결이 되지 않는다.

스크린샷 2022-04-25 오후 1 59 07
  • 이유는 8000번이라는 port를 aws ec2 방화벽에 추가하지 않아 발생하였다.

 

ec2 인스턴스 인바운드 규칙에 8000번 port를 열어줘야 한다.

스크린샷 2022-04-25 오후 2 02 13
  • 8000번 포트
  • Anywhere-IPv4

 

실행 결과
스크린샷 2022-04-25 오후 2 04 32

성공!

 

📚 4. 리눅스 명령어 표준입출력

sudo tail : 파일 제일 끝부분 출력해주는 명령어
sudo tail -f : 실시간으로 파일 제일 끝부분을 출력해준다.

  • tail은 모니터링할 때 많이 사용한다.

     

    재시작 과정을 실시간으로 확인하기
    스크린샷 2022-04-26 오전 11 02 42

  • 왼쪽은 sudo tail -f로 변환 내용을 실시간 확인, 오른쪽은 sudo service tomcat8 restart로 재시작

 

  • 표준 입력 스트림 stdin (Standard Input Stream) : 0 (표준 입력)
  • 표준 출력 스트림 stdout (Standard Output Stream) : 1 (표준 출력)
  • 오류 출력 스트림 stderr (Standard Error Stream) : 2 (표준 에러)

 

> : 표준 입출력 변경하는 방법
sudo tail -f catalina.out > mylog.out 로 할시, catalina.out 출력 내용을 mylog.out 파일에 저장한다.

스크린샷 2022-04-26 오전 11 19 28
  • 왼쪽 : sudo tail -f catalina.out > mylog.out
  • 오른쪽 : vi mylog.out

배포할 때, 서버를 실행시키고 로그들을 볼 때 표준 입출력이 중요하다.

 

profile
"야, (오류 만났어?) 너두 (해결) 할 수 있어"
post-custom-banner

0개의 댓글