- Facts (사실, 객관)
: 이번주부터 리눅스를 배우기 시작했다. 현재 윈도우랑 맥북 둘 다 이용중이어서 윈도우를 사용할 땐 powershell를 이용하고 맥북에서는 iterm을 이용한다. 리눅스 기본 명령어를 배웠다.
- Feelings (느낌, 주관)
: 네트워크때와는 다르게 어려운 느낌이다. 그래도 터미널 환경에서 실습을 진행하는데 주로 명령어를 사용하면서 해서 네트워트 때보다는 뭔가 이해가 쉬운것같다. 그리고 구글링하면 더 정보가 많은것같다. - Findings (배운 점)
: OS 종류
- Windows / Linux / 유닉스 (oracle , IBM , HP) / Mac OS
리눅스의 특징
- 공개형 오픈 소스의 운영체제 / 유닉스와의 완벽한 호환가능 / 저렴한 총 소유 비용 / 플랫폼에 구애가 없는 운영체제
리눅스 구성 요소
- Kernel : OS의 핵심적인 역할, 보안, 자원관리, 추상화 가능
Shell : 사용자와 커널의 연결고리, 명령어 해석기 역할
디렉토리 : 디렉토리와 파일은 파일 시스템으로 관리됨
운영체제 구성 요소
- Kernel : 운영체제의 핵심, 파일시스템 관리, 하드웨어 장치 관리, 메모리 및 프로세스 관리, CPU 제어
Shell : 명령어 해석기, 사용자와 커널 사이의 인터페이스 담당, 다양한 쉘이 존재
쉘의 종류
- Bourne shell : 최초의 쉘, 대화형 인터페이스, 대부분 시스템에 기본 내장, 강력한 이식성
C Shell : C언어 형식과 유사, 프로그래밍에 유리
Korn Shell : Bourne Shell을 토대로 생성, C Shell 기능 일부 포함, 현재 Unix 기본 쉘
Bash Shell : Linux 시스템 표준 쉘, Bourne Shell의 업그레이드버전, C shell 과 Korn Shell의 장점 보유
프롬프트 구조
- 기본구조 : [로그인 계정명@호스트명현재의 위치] 프롬프트 기호
로그인 계정명 : 사용자의 계정명
호스트 명 : 시스템명 -> 정의하지 않을 경우 localhost로 정의됨
현재의 위치 : 현재 작업을 하고 있는 위치 -> ~: 홈 디렉토리
프롬프트 기호 : root 로그인 시 # , 일반 사용자 로그인 시 $
쉘 접근 도구
- 콘솔 : 컴퓨터 조작부, 모니터와 입력장치가 직접 연결되어 있음, 리눅스 시스템은 5개의 가상콘솔 지원
터미널 : 컴퓨터 단말기, 콘솔과 마찬가지로 모니터와 입력장치가 직접 연결되어 있음 또는 원격으로 시스템에 접속한 경우
리눅스 기본 명령어
- #which : 명령어의 경로 확인
#date : 날짜 및 시간 출력
#cal : 달력을 출력
#rdate : 원격지의 타임서버로부터 시간 정보를 받아와 보여주거나 동기화. -p : 출력, -s : 동기화
#id : 사용자의 UID(UserID), GID(GroupID), 사용자가 속해 있는 그룹을 출력
#w : 서버에 접속한 사용자의 접속 정보와 작업에 대한 정보 출력
#logname : 시스템에 로그인한 사용자명 출력
#who : 현재 시스템에 로그인한 모든 사용자의 정보를 출력
#-m : 현사용자 로그인한 사용자명의 정보 출력 = #who am i
#-q : 로그인명과 로그인한 횟수 출력
#-u : 대기 모드 시간 출력
#-w : 메시지 상황 출력
#-H : 헤더라인 출력
#whoami : 가상 콘솔을 사용하거나 여러 계정으로 동시에 로그인 하고 있는 경우, 현재 시스템을 사용하고 있는 자신이 누구인가를
확인할 때
#who am I : 현 사용자 로그인한 사용자명의 정보 출력 = who -m
#users : 시스템에 로그인한 모든 사용자명 출력
#mesg : write, wall과 같은 명령어로 메세지를 보낼 수가 있는데, 메시지를 받을 것인지 혹은 받지 않을 것인지를 설정하고 현
상태를 확인함.
#write : 콘솔 상에서 간단하게 메시지를 보낼 수 있음
#wall : 시스템에 접속한 모든 사용자에게 메시지를 보낼 수 있음
#whatis : 지정한 키워드나 명령어의 메뉴얼 페이지를 찾아서 간략하게 보여줌
#명령어 -h or --help : 해당하는 명령어의 사용법을 보여줌
#clear : 화면상에 있는 내용을 청소할 때 사용
#echo : 입력한 문자를 그대로 출력하는 명령어
#uname : 시스템 정보를 출력
#-a : 시스템의 모든 정보 출력
#-s : 운영체제 종류
#-n : 호스트이름
#-p or -m or -i: 프로세스의 종류
#-r : 운영체제 릴리즈
#-v : 운영체제 버전 출력
#history : 사용자가 사용했던 명령어들 출력
#!number : number에 해당하는 명령어 실행
#방향키 : 사용자가 사용했던 명령어들 선택
#자동완성 : 긴 명령어나 디렉토리를 입력할 경우 한개만 있는 경우에 Tab키를 누르게 되면 완성이 됨
Manual page 사용키
- #man [option] command : command 메뉴얼 페이지 출력
space bar : 다음페이지
enter : 한줄씩
f : forward. space bar와 기능 비슷
b : backward
/패턴 : 패턴 검색
n : keyword 검색시에 다음 화면
h : help 메뉴얼 페이지 내에서 사용가능한 것들
q : 종료
Manual page 키워드 검색
- #man -k [keyword] : keyword가 존재하는 메뉴얼 목록 출력
#man -a [keyword] : keyword가 존재하는 메뉴얼 페이지 출력
#man -f [command] : command에 존재하는 섹션 출력 및 간단한 설명 출력
Manual page section별 검색
- man -s [section number] [command] : section page 출력
1 : 명령어 참조 메뉴얼, 2 : 시스템 콜, 3 : 라이브러리 함수
4 : 특별장치와 네트워크 프로토콜, 5 : 표준 파일 포맷
6 : 게임 관련 및 스크린 세이버, 7 : 기타 파일과 문서
8 : 시스템 관리 명령
shutdown 명령
- -k : 실질적인 shutdown을 하는게 아니라, 모든 사용자에게 종료 경고 메시지만을 전송
-h : 시스템 shutdown 후 시스템 종료
-r : 시스템 shutdown 후 시스템 재시작
-f : 빠른 재부팅시 사용
-c : 종료 예약 작업 시 종료 작업 취소(Ctrl +c)
+m : 현재 시간으로부터 종료 작업 취소
hh:mm : 절대 시간으로 종료 시점 시간 지정
now : 명령어를 수행하는 순간 종료
주요 디렉터리 목록
- bin : 사용자 쉘과 관련된 명령어
boot : 부팅 관련 설정 파일들 포함
etc : 사용자 설정 파일 및 서버 환경 설정 파일 등 포함
home : 사용자 홈 디렉터리
root : root 사용자 홈 디렉터리
run : 마지막 부팅 이후 시작된 프로세스의 런타임 데이터
sbin : 시스템 관리 명령어 ex)#which shutdown
tmp : 임시 저장 파일
usr : 설치된 소프트웨어 및 라이브러리 포함
var : 시스템 고유의 가변 데이터 (DB, 캐시, 로그 등)
dev : 하드웨어에 액세스하기 위해 시스템이 사용하는 특수 장치 파일 포함
'GOORM' 카테고리의 다른 글
GOORM: Kubernetes-8 (0) | 2021.11.04 |
---|---|
GOORM: Kubernetes-7 (0) | 2021.11.04 |
GOORM: Kubernetes-5 (0) | 2021.11.03 |
GOORM: Kubernetes-4 (0) | 2021.11.01 |
GOORM: Kubernetes-3 (0) | 2021.11.01 |
댓글