Step it up now

리눅스 명령어 본문

개인공부/aws, docker

리눅스 명령어

케잉 2024. 1. 11. 15:19

1. 디렉토리 및 파일 관련
   cd 
~: 사용자 홈디렉토리
.  : 현재 디렉토리
       . .  : 상위 디렉토리
절대경로: '/' 부터 모든 경로를 입력하는 방식
상대경로: 현재 위치를 기준으로 경로를 입력하는 방식 

ex) cd ~ : 사용자 홈으로 이동, cd 만 입력해도 홈으로 이동
     cd .. : 상위 디렉토리로 이동
     cd/etc  : /etc 디렉토리로 이동 
     현재 디렉토리가 /etc/ssh 일 경우 /etc로 이동 방법: cd..
      현재 디렉토리가 /etc/ssh 일 경우 /로 이동 방법: CD ../..
             cd

   ls : 파일 목록 출력 
-l : 퍼미션, 소유권 포함하여 자세하게 출력
-lh : 자세하게 출력하면서 파일 크기를 kb, mb, gb 단위로 출력 
-R : 하위 모든 폴더의 파일 출력 

   cp : 파일 및 디렉토리 복사 
 원본파일 [원본디렉토리]  대상디렉토리/바꿀파일명 
ex) sudo cp /etc/ssh/sshd_config .   -> 복사하겠다 
sudo cp -r /etc/ssh/ .    -> 디렉토리도 복사 
-r 사용해야 디렉토리까지 복사할 수 있음 
-f  강제로 복사하기 

   mv : 파일/ 디렉토리를 이동 
원본파일[원본디렉토리] 대상디렉토리/바꿀파일[디렉토리]명
원본파일[원본디렉토리] 바꿀파일[디렉토리]명 => 이름만 변경됨  
  
   cat : 짧은 텍스트파일 보거나 작성 
  cat test : test파일 보기
     cat > test : test파일에 입력하는 내용이 저장됨 작성종료는 ctrl+d
  cat >> test : append   
> : 새로 작성
>> : 추가 

   less : 긴 텍스트 파일 보기. 수정가능(v 입력하면 vi 또는 nano편집기로 진입) 
   find : 파일찾기
   찾을 디렉토리  옵션 
     ex) find /home/sunny -name sc   
find /home/sunny  | grep sshd_config  

   grep : 텍스트 문서나 명령의 결과물에서 원하는 패턴이 포함된 라인만 출력
     grep  패턴  파일명 
grep root /etc/passwd
netstat -an | grep :22  => '|' 은 앞 명령의 결과를 뒤 명령의 입력으로 전달 
sudo cp sshd_config2 /etc/ssh/sshd_configs
   
   echo : 뒤에 오는 텍스트를 화면에 그대로 출력/ 특정값을 기록하고자 할때 
     $를 앞에  
     echo SHELL
     echo $SHELL
   du -s guestbook

   head : 텍스트파일의 첫 10라인만 출력 
   tail : 텍스트파일의 마지막 10줄만 출력 -ㄹ- 
  -f 옵션을 사용하면 파일이 열린 상태로 있음 
sudo kill -9 $(pgrep tail): 프로그레스를 강제종료 
   df : 파일 시스템의 사용 가능한 용량 체크
   du: 특정 디렉토리의 모든 파일 크기 확인 '
du -sh guestbook   : guestbook 디렉토리의 전체파일 크기 출럭
history : 이전 명령어 번호 매겨서 다 불러옴 ---> ' !12'  이렇게 입력하면 12번 재실행됨  
중단할떄는  ctrl+c / ctrl+z는 stop이고 계속 쌓임 

 


2. vi 편집기 - 명령모드로 돌아오기 위해서는 esc키를 누름.
   i,a,o     :  입력
   x         :  삭제
   dd      :  한줄 삭제
   /패턴  :  검색
   :%s/찾을문자열/바꿀문자열/g  
   :set number  => ~/.vimrc에 입력돼 있으면 vi 실행시에 자동으로 적용됨
   :w    :  저장
   :q    :  종료  
   :wq  :  저장 후 종료
   :wq!  : 저장 후 강제 종료


3. 허가권(permisstion)과 소유권(ownersnk)
   user  group  other 
   rwx    rwx     rwx
    7       7        7
(모든 권한이 있$ㅅ는경우 7
chomd o(other)+w sshd_config2  dehthv


   r : 읽기,  w: 쓰기,  x: 실행

   r--  --- ---  400
   rw- rw- r--  664
   rwx rwx r-x  755

   디렉토리 w : 디렉토리에서 파일을 생성,삭제 할 수 있는 권한
   디렉토리 x  : cd로 디렉토리에 접근할 수 있는 권한


   sudo chmod  400 파일명   : 파일의 허가권을 r-- --- --- 로 변경
   sudo chmod u+x  파일명   : 파일 소유자의 허가권에 r 권한 추가
   sudo chmod o-w  파일명   : 파일 소유자/그룹 이외의 사용자 권한에서 쓰기권한 제거

   sudo chown  ubuntu.ubunt  파일명
   sudo chown  ubuntu  파일명 => 소유자만 변경 
   sudo chown  .ubuntu  파일명 => 소유그룹만 변경
   sudo chgrp ubuntu  파일명

찾는거 : 

 


4. 패키지 및 서비스 관리
   1) 우분투 
      sudo apt update
      sudo apt install vsftpd  새로운 패키지 깖
      sudo apt remove vsftpd   지움
 
   2) Amazon linux, Rocky linux (Redhat)
      sudo yum(dnf) update
      sudo yum install vsftpd
      sudo yum remove vsftpd

      sudo systemctl start vsftpd  => sudo service vsftpd start (이전 방식)
      sudo systemctl stop vsftpd
      sudo systemctl status vsftpd => 상태 확인 
      sudo systemctl restart vsftpd
      sudo systemctl enable vsftpd => 부팅시 자동으로 서비스 시작 활성화
      sudo systemctl disable vsftpd => 부팅시 자동으로 서비스 시작 비활성화

   우분투가 윈도우 안에 있지만 별개의 가상 시스템이다 

 


5. 프로세스 관리

sudo ps -ef | grep 패턴

sudo kill -9 프로세스ID   ex sudo kill -9 811

sudo kill -9 $(pgrep 프로세스명)

 


6. 네트워크 관리

ip addr   : IP주소 확인

ip route  : 라우팅 테이블 확인

default via 172.22.48.1 dev eth0
172.22.48.0/20 dev eth0 proto kernel scope link src 172.22.51.223


nslookup : DNS 동작 확인.  만약 응답이 돌아오지 않는 경우 DNS서버가 올바르게 등록돼 있는지 확인해야함 
/etc/resolv.conf

ping  :  원격 호스트와 통신 테스트
(방화벽에서 차단하고 있는 경우가 많음 
- ping이 안된다고해서 접속에 문제 있다고 볼 수 없음)

 


7. 그 외

wget   : url을 이용하여 다운로드

curl     : 셸에서 페이지 접속 테스트,    

curl ifconfig.me : 현재 시스템에서 사용하고 있는 공인IP주소 확인

undo : 이전으로 돌아감 
subs 
   

'개인공부 > aws, docker' 카테고리의 다른 글

docker(특징, 명령어 정리)  (1) 2024.01.15