본문 바로가기
리눅스

리눅스 기본 명령어

by Ele(단단) 2021. 6. 24.
반응형

리눅스 : 윈도우와 같은 컴퓨터 운영체제 중 하나

  • 리누스 토발즈(Linus Torvalds)에 의해 만들어진 컴퓨터 운영 체제
  • 자유 소프트웨어와 오픈 소스 개발의 가장 유명한 표본

 

리눅스 구조

리눅스의 특징

  • 유닉스 기반
  • 멀티 유저와 멀티 태스킹 지원
  • CLI 및 GUI 모두 지원
  • 다양하고 강력한 네트워킹 기능

 

리눅스 활용분야

 

Shell : 커널과 사용자 사이를 이어주는 역할 사용자의 명령을 해석하여 커널에 명령을 요청

기초 명령어

1) whoami : 로그인한 사용자 ID를 알려주는 명령어

2) passwd : 로그인한 사용자의 비밀번호를 변경하는 명령어

3) pwd : 현재 디렉토리 위치를 출력

4) ls : 현재 디렉토리의 목록을 출력

5) ls -l : 현재 디렉토리의 목록을 상세히 출력

6) ls -a : 숨겨진 파일이나 디렉토리를 포함하여 출력

7) ls -al : 숨겨진 파일과 디렉토리를 포함하여 현재 디렉토리의 목록을 상세히 출력

8) cd : 해당 디렉토리로 이동

9) --help : 사용하고자 하는 명령어 뒤에 붙여서 사용 명령어에 대한 사용 방법이 출력

10) chmod : 파일의 권한 변경 ex) chmod [파일권한] [변경할 파일 위치 또는 이름]

11) chown : 소유권 변경 ex) chown [소유할유저]:[소유할그룹] [소유권 변경하고 싶은 디렉토리 or 파일 명] root 권한이 있어야 실행 가능

12) mkdir : 디렉토리 생성 ex) mkdir [생성할 디렉토리 이름] 형식으로 사용

13) touch : 빈파일 생성 ex) touch [생성할 파일 이름] 형식으로 사용

14) rmdir : rmdir [삭제할 디렉토리 이름] 형식으로 사용, 비어있는 디렉토리를 삭제, 지정한 디렉토리에 파일이 있을 경우 삭제 불가

15) rm : 파일 및 디렉토리 삭제 ex) rm [option] [삭제할 파일 및 디렉토리 명]

16) cp : 파일 및 디렉토리 복사 ex) cp [option] [대상 위치 및 이름] [복사하고 싶은 위치]

17) mv : 파일 및 디렉토리 이동 ex) mv [대상 위치/이름] [이동하고 싶은 위치/이름]

18) cat : 파일 내용 출력 ex) cat [option] [파일 이름]

19) find : 파일 검색 ex) find [파일 경로] [-name] [파일 이름] [-type d/f]

20) grep : grep 명령은 파일 내에서 지정한 패턴이나 문자열을 찾은 후에 그 패턴을 포함하고 있는 모든 행을 출력 ex) grep [option] [pattern] [파일명]

 

root : 리눅스에서 모든 권한을 가지고 있는 최고 관리자

1) 운영체제에 모든 것을 제어할 권리를 가진다

2) “sudo 사용할 명령어” 의 방식으로 권한 획득 가능

3) 모든 권한을 가지고 있는 만큼, 무서운 계정이다

 

파일 시스템

  • 저장 장치 내에서 데이터를 읽고 쓰기 위해 미리 정한 약속
  • 파일 저장 및 검색을 할 수 있도록 관리하는 방법
  • 파일을 어떻게 관리할 것인가에 대한 정책

 

리눅스 파일 시스템 : 디렉토리 + 파일의 형태로 구성되어 있음

1) 파일 : 주기억장치나 디스크처럼 물리적인 하드웨어 저장 공간에 저장되는 데이터의 집합

2) 디렉토리 :  파일과 다른 디렉토리들을 분류하기 위해 붙이는 이름 공간 파일과 하위 디렉토리들을 그룹으로 묶은 개념 (윈도우의 폴더와 같다)

 

mount

  • 윈도우에서는 하드, USB등의 보조기억장치를 연결하면 자동으로 폴더(디렉토리)에 연결 됨.
  • 이것을 PnP(Plug and Play)라고 함.

✋ 리눅스의 경우 PnP 기능이 작동하지 않아 직접 연결해야함.

즉, 보조기억장치를 설치했을시 mount 작업을 해야 사용 가능

 

사용법

mount [option] [device] [directiory]

option -a : /etc/fstab에 명시된 파일 시스템을 마운트 할 때 사용

-t : 파일 시스템의 유형을 지정, 생략할 시 /etc/fstab 파일을 참조

-o : 추가적인 설정을 적용할 때 사용, 다수의 조건을 적용할 때는 콤마(,)로 구분

 

remount : mount를 취소하는 명령어

사용법

remount [device] [directiory]

 

프로세스 : 리눅스 시스템에서 메모리에 적재되어 실행되고 있는 모든 프로그램이 프로세스

 

프로세스 특징

  • 모든 프로그램은 실행될 때 하나 이상의 프로세스를 갖는다.
  • 병행적으로 실행이 가능하다.
  • 부모, 자식 프로세스가 있게 된다.
  • 커널에 의해 관리된다. 모든 프로세스에는 소유자가 있다.
  • 프로세스마다 식별을 위한 ID가 부여된다.

프로세스의 번호

  • 모든 프로세스는 고유한 번호(PID)를 가지고 있다.
  • PID 1번은 init 프로세스, 2번은 kthreadd 프로세스가 실행
  • init 프로세스는 나머지 모든 시스템 프로세스의 부모 프로세스 thread 프로세스는 모든 스레드의 부모 프로세스

프로세스의 메모리 구성

 

at과 crontab

at : 지정된 시간에 1회 실행되는 작업 예약 명령어 시간이 되면 수행되고 작업 리스트에서 사라짐

사용법

at [옵션] [시간] [날짜] [+증가시간]

 

option

-m : 출력 결과가 없더라도 작업이 완료될 때 사용자에게 메일을 보냄

-f : 스크립트 파일 등을 실행할 때 사용

-l : 예약된 작업 목록 출력, atq 명령어 또한 같은 동작을 수행

-v : 작업이 수행될 시간 출력

-d : 예약된 작업을 삭제, atrm 명령어 또한 같은 동작을 수행

 

crontab : 지정된 시간에 1회 실행되는 at과는 달리 지정된 시간에 따라 주기적으로 실행

사용법

crontab [옵션]

 

option

-l : 현재 계정의 설정된 crontab 정보를 보여준다

-e : 현재 계정의 crontab 정보를 수정한다.

-r : 현재 계정의 crontab 정보를 모두 삭제한다.

-u : 특정 사용자의 crontab 정보를 다루게 해준다.(root 권한 필요)

 

반응형

댓글