새소식

Cloud

리눅스 기본 명령어

  • -

root : 슈퍼관리자 ID

 

sudo : root 계정으로 로그인하지 않은 상태에서 root 권한이 필요한 명령을 실행할 수 있음

sudo apt-get-update

pwd : 현재 디렉토리 위치

ubuntu@ip-172-31-45-153:~$ pwd
/home/ubuntu

ls : 파일 목록 출력

ubuntu@ip-172-31-45-153:~$ ls -al
total 28
drwxr-x--- 4 ubuntu ubuntu 4096 Aug 25 16:22 .
drwxr-xr-x 3 root   root   4096 Aug 25 15:19 ..
-rw-r--r-- 1 ubuntu ubuntu  220 Jan  6  2022 .bash_logout
-rw-r--r-- 1 ubuntu ubuntu 3771 Jan  6  2022 .bashrc
drwx------ 2 ubuntu ubuntu 4096 Aug 25 16:22 .cache
-rw-r--r-- 1 ubuntu ubuntu  807 Jan  6  2022 .profile
drwx------ 2 ubuntu ubuntu 4096 Aug 25 15:19 .ssh

리눅스는 파일마다 소유자, 소유자그룹, 모든 사용자에 대해 읽기/쓰기/실행 권한을 관리한다.

https://brunch.co.kr/@jehovah/12

chmod : 파일 권한 변경

rwxrwxrwx = 777

r-xr-xr-x = 555

r-------- = 400

rwx------ = 700

chmod 400 mysecurecode.pem

 

cat : 파일 내용 출력

 cat FILENAME

 

cat  > : 파일 내용 출력

cat > FILENAME

rm : 파일 및 폴더 삭제

rm 파일명

r 옵션: 하위 디렉토리를 포함한 모든 파일 삭제

f 옵션: 강제로 파일이나 디렉토리 삭제

rm -rf 디렉토리명

 


리다이렉션 redirection
>

ls > files.txt

filex.txt에 ls로 출력되는 결과를 저장

>>

ls >> files.txt

 

기존에 있는 files.txt  파일 끝에, ls 출력 결과를 추가

파이프 pipe
|

ls | grep files.txt

ls 명령을 통한 출력 내용이 grep 명령의 입력 스트림으로 들어감
grep : 검색 명령어
- grep [-option] [pattern] [file or dir name]

<option>

    - i : 영문의 대소문자 구별X

    -v : pattern을 포함하지 않는 라인 출력

    -n : 검색 결과의 각 행의 선두에 행 번호를 넣는다.
    - l : 파일명만 출력한다.
    - c : 패턴과 일치하는 라인의 개수만 출력한다.
    - r  : 하위 디렉토리까지 검색한다.

 


foreground process

shell에서 해당 프로세스 실행을 명령한 후, 해당 프로세스 수행 종료까지 사용자가 다른 입력을 하지 못하는 프로세스

background process

사용자 입력과 상관없이 실행되는 프로세스

shell에서 실행 시, 맨 뒤에 &를 붙임

find / -name '*py' > list.txt &

프로세스 상태 확인
- ps

ps [option(s)]

<option>

-a : 시스템을 사용하는 모든 사용자의 프로세스 출력

-u : 프로세스 소유자에 대한 상세 정보 출력

-l : 프로세스 관련 상세 정보 출력

-x : 터미널에 로그인한 후 실행한 프로세스가 아닌  프로세스도 출력(주로 데몬 프로세스까지 확인하기 위해 사용)
      + 데몬 프로세스는 사용자 모르게 시스템 관리를 위해 실행되는 프로세스(시스템이 부팅될때 자동실행)


ps 출력 정보

USER : 프로세스를 실행시킨 사용자 ID
PID : 프로세스 ID
%CPU : 마지막 1분동안 프로세스가 사용한 CPU 시간의 백분율
%MEM : 마지막 1분동안 프로세스가 사용한 메모리 백분율
VSZ : 프로세스가 사용하는 가상 메모리 크기
RSS : 프로세스에서 사용하는 실제 메모리 크기
STAT : 프로세스 상태
START : 프로세스가 시작된 시간
TIME : 현재까지 사용된 CPU 시간 (분:초)
COMMAND : 명령어

프로세스 중지
- kill

kill 작업번호

kill 프로세스ID(PID)

작업 강제 종료 옵션 -9

kill -9 216

 

주로 사용하는 프로세스 명령

ps aux | grep 프로세스명 : 프로세스가 실행중인지 확인 및 관련 프로세스 정보 출력

kill -9 프로세스ID(PID) : 해당 프로세스 강제 종료

명렁 & : 터미널에서 다른 작업을 해야하거나, 프로세스 실행에 오랜시간이 걸릴 경우 background로 실행

 


하드 링크와 소프트 링크

파일 복사 : cp

cp A B

A파일을 B파일 명으로 복사

 

하위 폴더를 포함하여 복사

cp -rf * 폴더명

 

하드 링크

ln a.txt b.txt

a.txt와 b.txt는 동일한 파일을 가진 이름을 하나 더 만든 것일 뿐 전체 파일 용량은 달라지지 않는다.

 

즉, cp 명령어로 a.txt파일을 b.txt로 복사하고 a.txt파일을 수정한다면 b.txt는 a.txt의 수정전 상태이지만

하드 링크로는 a.txt파일이 바뀌면 b.txt도 바뀐다.

 

소프트 링크

Window OS의 바로가기라고 생각하면 된다.

ln -s b.txt c.txt

ls - al로 소프트 링크 확인 가능lrwxrwxrwx   c.txt  -> b.txt 와 같이 확인할 수 있음

 


우분투 패키지 관리

패키지 설치

sudo apt-get install 패키지명

패키지 삭제(설정 파일 제외)

sudo apt-get remove 패키지명

패키지 삭제(설정 파일 포함)

sudo apt-get --purge remove 패키지명
728x90
Contents