운영체제
리눅스 배포판 종류
- Redhat Enterprise Linux (RHEL) (상용)
- CentOS : RHEL의 클론Fedora Linux : Redhat에서 새로운 기능/제품을 테스트하기 위한 용도로 사용
- CentOS Stream : RHEL과 Fedora의 중간 정도의 포지션
리눅스는 단일 파일시스템 구조를 가짐( / )
리눅스 프롬프트
- 프롬프트에 $ 기호가 있을 경우 $ : 일반 사용자 권한
- 프롬프트에 # 기호가 있을 경우 # : 관리자 권한(root)
GUI : Graphical User Interface (그래픽 환경)
CLI : Command Line Interface (명령줄 환경)
TUI : Text User Interface (텍스트 환경)
유닉스 - Unix(Unics)
- 켄 톰슨, 데니스 리치 - 멀틱스(Multics) 창시
운영체제의 역할
- 하드웨어(입출력장치, 기억장치, 처리장치(Cental Process Unit))
- 하드웨어와 사용자 사이애 위치
- 커널(Kernel) : 운영체제에서 하드웨어 쪽에 닿아있는 부분
- 인터페이스(Interface) : 사용자가 운영체제를 사용할 수 있도록 되어 있는 구조
- 유닉스/리눅스 : 쉘(Shell)
- 사용자의 어플리케이션 : 사용자가 동작시키는 프로그램
- 하드웨어 - 커널 - 쉘 - 응용프로그램
- 리눅스 : 유닉스의 오픈소스 버전
- 리누스 토발즈
- 배포판(Distribution) - 리눅스 커널을 토대로 각자 개발된 개별적인 리눅스 모델
서버
- 메인프레임
- 서버
- 데스크탑

윈도우 제품군의 분류
Microsoft - Bill Gates MAC - Macintosh IBM - 업무용/개인용 PC(Personal Computer)
- IBM PC
- Intel (8086/80286/80386…..)
- BIOS
- DOS (PC-DOS) → MS-DOS
- OS2→Windows
- Windows 1.0 → 운영체제라기보다는 일종의 응용프로그램Windows 3.0Windows95WindowsME→ 전부다 DOS 커널 기반의 운영체제
- Windows98
- Windows 3.1 + Office → 대박!
- Windows 2.0
- Workstation용 운영체제 생산개인용 운영체제중 Windows ME까지만 DOS커널 사용 → Window XP 부터는 개인용 운영체제도 전부 NT 커널Windows Vista - Windows 2008 ServerWindows 8 - Windows Server 2012WIndows 10 - Windows Server 2016
- Windows8.1 - WIndows Server 2012 R2
- Windows 7 - Windows Server 2008 R2
- Windows XP - Windows 2003 Server
- Windows NT 3.1 → NT KernelWindows NT 4.5 + IIS(웹서버, Internet INformation Service)→ .com 버블
- Windows 2000 Server
- Windows NT 4.0
쉘(Shell)을 다루는 방법
- 리눅스의 구조를 이해
- 여러가지 경우에 사용하는 명령어
-
* 명령어
- 대부분의 명령어들은 파일 형태로 존재
- 주로 실행 가능한 파일들의 위치 : /usr/bin, /usr/sbin (bin:binary - 기계어 코드)
- 도움말 참고할 수 있음(manual)
- 파일형태로 존재하지 않는 명령어도 있음 - 쉴 내장 명령어
- 쉘의 종류
-
- 리눅스의 기본 쉘 : bash(Bourne Again Shell)
- 유닉스의 기본 쉘 : sh(Borune Shell)
- 기타 다양한 쉘 종류 : csh(C Shell), ksh(Korn Shell), zsh(Z Shell)
- 기본 명령어
-
ls : 파일 디렉토리 목록 확인
- 주요옵션
- -l : Long List - 개체의 상세정보 확인
- drwxr-xr-x. 2 user user 6 Feb 23 21:17 Desktop
- 대부분의 운영체제에서 사용하는 파일과 관련된 시간정보
- M: Modified (파일의 내용을 수정) A: Access (접근) C: Change (파일의 속성 정보 변경) / Create (생성)

- -a/-A : 숨김파일 표시 - 리눅스/유닉스의 숨김파일 : 파일의 맨 앞자리를 '.'로 표시(-A일 경우 '.'를 표시하지 않음)
- 개체의 디렉토리 구조상 위치를 절대적인 기준에 따라 작성, 절대적인 기준은 최상위 디렉토리(root 디렉터리,/)
- 개체의 기렉토리 구조상 위치를 상대적인 기준(현재위치)에 따라 작성
- 절대경로, 상대경로 구분방법 - 경로가 /로 시작하면 절대경로, 아니면 상대경로
- -F : 각 개체의 유형 표시(파일/디렉토라)
- -R : Reculsive, 디렉토리 및 디렉터리 하위 디렉터리 내 개체의 정보까지 표시
- 리눅스 주요 디렉토리
- bin : /usr/bin = /bin - 실행파일이 존재하는 위치, 일반권한으로 실핼하는 파일들
- dev : device, 리눅스의 장치파일들이 위치
- home : 홈 디렉토리, 사용자별로 자신만이 사용할 수 있는 공간
- proc : 임시 디렉토리, 자동적으로 생성되고 관리되므로 직접수정 권장하지 않음(금지)
- run : 런타임 데이터가 존재하는 위치
- tmp :임시 디렉토리, 데이터가 유지되는 임시 디렉토리 /tmp, /var/tmp등을 사용
- var : 변경 가능한 데이터들이 위치, 데이터는 유지, 로그 데이터가 저장된다 /var/log
- boot : 부팅(Booting), 즉 시스템을 구동시키기 위해 필요한 정보가 저장
- etc : 리눅스 시스템 및 응용프로그램의 설정을 저장
- lib : 라이브러리, 모듈 등이 저장
- root : root 사용자의 홈 디렉토리(/home/root가 아님)
- sbin : 시스템 관리작업용 실행파일
- usr : 프로그램 설치 등 경우에 저장되는 경로
cd : Change Directory - 현재 작업 경로를 변경
- cd [변경할 경로] : 절대/상대경로 모두 사용가능
- cd : 옵션/인자(Arguments) 없이 실행할 경우, 현재 사용자의 홈 디렉토리로 이동
- cd ~ : 홈 디렉토리로 이동
- cd ~[사용자 이름] : 지정한 사용자의 홈 디렉토리로 이동(root권한)
- cd - : 이전 경로로 이동
파일 내용 출력
- cat
*리다이렉션 : 방향재지정 (>, <, >>)- 리눅스에서 명령어를 사용할 때 표준입력, 표준 출력을 사용함(stdin,stdout)
- 리다이렉션을 사용하여 입력 또는 출력의 방향을 변경할 수 있음
- '>' : 앞 명령어의 출력을 표준출력(화면)이 아닌 지정한 파일로 출력(Overwrite)
- '<' : 앞 명령어에 뒤 파일의 내용을 입력으로 전달
- '>>' : 앞 명령어의 출력을 지정한 파일로 출력(Append)
- 2> : 표준에러의 방향 재지정
- 표준 출력 : 화면에 출력되는 내용(stdout)
- 표준 입력 : 키보드로 입력하는 내용(stdin)
- 표준 에러 : 명령어에서 발생한 에러(stderr)
- 파이프라인(Pipeline) : '|'
- 리다이렉션을 사용하여 한 명령어의 실행결과 출력을 다른 명령어로 전달할 경우, 명령어의 결과를 저장할 파일이 생성되고, 명령을 두번 실행하여야 함
- ** 명령어의 출력을 다시 어떤 명령어의 입력으로 사용
- 파이프라인을 사용할 경우 앞 명령의 실행 결과 출력을 뒤 명령의 입력으로 전달 가능
- 파이프라인 사용시 파일이 생성될 필요가 없음
- /dev/null : 데이터를 리다이렉션을 통해 버릴 수 있는 특수 장치 파일
- dev/zero : 끊임없이 0 데이터를 출력하는 특수 장치파일
- less : more와 유사하나 Page Up/Down키 사용가능, 맨 아래까지 출력 후 정지, q 눌러서 종료가능
- head : 위에서 지정된 줄까지 출력
- tail : 끝에서 지정뒨 위치까지 출력
- -f : 변경된 내용을 지속적으로 출력하도록
그 외 명령어
- date : 현재 날짜, 시간정보 확인
- id : uid(시스템에서 사용자를 식별하기 위한 일련변호), 소속되어 있는 그룹정보 출력
- w : 현재 접속된 사용자 정보를 출력, CPU 사용량 등 부가 정보를 함꼐 출력
- who : 현재 접속된 사용자 정보를 간략히 출력(이름, 접속시간, 접속경로)
- whoami : 현재 로그인 된 사용자 이름 반환
- uname : 시스템 정보 출력(-a : 전체 정보 출력, -r : 커널 정보)
- wc : 파일의 글자수, 단어수, 줄 수 출력, 출력옵션을 통해 개별 항목 출력 가능: -l(줄수), -w(단어수), -c(글자수)
- - more : 텍스트 데이터를 페이지 단위로 출력
* 참고사항
- 따옴표의 용도
- Single Quotation (‘ ’) : 문자열을 감싸는 용도
- Double Quotation (“ “) : 문자열을 감싸는 용도
- Back Quotation (`) : 명령어의 실행 결과를 반환
- 이스케이프 문자 \
- 특수한 기능을 가진 메타문자를 문자로 치환
- \n, \c, \r ...
'클라우드 아키텍트 양성과정' 카테고리의 다른 글
| 리눅스(CentOS) 권한 및 프로세스 (0) | 2021.04.26 |
|---|---|
| 리눅스(CentOS) 사용자 관리 (0) | 2021.04.26 |
| 약결합 아키텍처 구축(SQS & SNS) (0) | 2021.03.29 |
| AWS API Gateway (0) | 2021.03.29 |
| AWS Lambda - 서버리스 컴퓨팅 (0) | 2021.03.28 |
댓글