반응형
리눅스 : 윈도우와 같은 컴퓨터 운영체제 중 하나
- 리누스 토발즈(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 권한 필요)
반응형
댓글