Cloud Engineering Bootcamp/5. Linux (4)
2025-09-12 15:32:13
반응형

📝 리눅스 문서 편집기 — vi

1. vi 모드 구조

```mermaid
graph TD
    A[명령 모드 (Command mode)] --> B[입력 모드 (Insert mode)]
    A --> C[마지막 행 모드 (Last line mode)]
    B --> A
    C --> A
```
 
 
  • 명령 모드: vi 실행 시 기본 모드 (복사, 삭제, 이동 등 명령어 실행)
  • 입력 모드: 글자를 입력하는 모드 (i, a, o 로 진입)
  • 마지막 행 모드: 저장·종료·검색 같은 명령 입력 (:wq, :q!)

2. 자주 쓰는 기본 명령어

동작명령
입력 시작 i (커서 앞), a (커서 뒤), o (새 줄)
저장 & 종료 :wq
강제 종료 (저장 안 함) :q!
이동 h(왼쪽), l(오른쪽), j(아래), k(위), :10(10번 줄 이동), G(파일 끝)
삭제 dd (한 줄 잘라내기)
복사 & 붙여넣기 yy (복사), p (붙여넣기)
검색 /문자열

3. 문서 편집기 실습

① 연습용 파일 생성

 
cd$HOME/proc # 실습 디렉토리로 이동 vi test.txt # vi 편집기 실행

입력 예시 (입력 모드에서 붙여넣기):

 
Welcome to vi editor practice This is a sample text file You can edit this file using vi Let's learn some basic commands The /etc/hosts file is important Try searching for the word hosts Delete this line and paste it below End of the practice file

② 파일 내용 확인

 
cat test.txt # 파일 전체 내용 출력

👉 cat은 파일 내용을 한 번에 보여줍니다.


③ 줄 번호 표시 & 특정 줄로 이동

 
:5 # vi에서 5번째 줄로 이동

👉 .exrc 설정에서 set nu를 추가하면 항상 줄 번호가 표시됩니다.


④ 삭제 & 붙여넣기

 
dd # 현재 줄 삭제 (잘라내기) p # 바로 아래 줄에 붙여넣기

⑤ 문자열 검색

 
/file # "file" 이라는 단어 검색

👉 / 입력 후 검색어 입력 → 해당 단어로 커서 이동


⑥ 저장 & 종료

 
:wq # 저장 후 종료 :q! # 저장하지 않고 강제 종료

⑦ .exrc 설정 파일 다루기

 
ls -a | grep exrc # .exrc 파일 존재 여부 확인mv .exrc .exrc.bak 2>/dev/null # 있으면 백업 vi .exrc # 새 설정 파일 생성

입력할 내용 (vi 설정):

 
set nu " 줄 번호 표시 set ignorecase " 검색 시 대소문자 무시 set autoindent " 자동 들여쓰기 set showmode " 현재 모드 표시 (--INSERT-- 등)

👉 저장 후 종료 (:wq)


⑧ 설정 적용 & 확인

 
vi ~/prac/test.txt
  • 줄 번호 확인 (set nu)
  • /hosts 검색 시 대소문자 무시되는지 확인 (set ignorecase)
  • 새 줄 입력 시 자동 들여쓰기 되는지 확인 (set autoindent)
  • 모드 표시 확인 (--INSERT-- 뜨는지 확인, set showmode)

4. 한 줄 한 줄 주석 설명

 
cat test.txt # 파일 내용을 터미널에 출력 :5 # vi 안에서 5번째 줄로 이동 dd # 현재 줄 잘라내기 p # 잘라낸 줄을 현재 커서 아래에 붙여넣기 /file # "file" 문자열 검색 :wq # 저장 후 종료

5. 현업에서 자주 쓰는 vi 활용 ✨

  • 서버 설정 파일 편집: /etc/nginx/nginx.conf, /etc/hosts 같은 시스템 설정
  • 로그 파일 빠른 수정: 긴 로그 파일에서 특정 키워드 검색 (/error)
  • 빠른 줄 이동: 에러 로그에서 특정 줄 번호 확인 후 :숫자로 이동
  • 복사/붙여넣기: 설정 블록을 잘라내어 다른 위치에 붙여넣을 때 yy, p 자주 사용
  • .exrc 자동 설정: 항상 줄 번호 표시, 검색 시 대소문자 무시, 자동 들여쓰기 → 현업 엔지니어들이 꼭 켜두는 옵션

 

.exrc 자동 설정 방법

vi ~/.exrc

set nu " 줄 번호 표시
set ignorecase " 검색 시 대소문자 구분 안 함
set autoindent " 자동 들여쓰기
set showmode " 현재 모드 표시 (--INSERT-- 같은 상태 표시)
ECS Key 눌러서 편집모드 종료
:wq! 로 저장 후 종료

반응형

'Cloud Engineering Bootcamp > 5. Linux' 카테고리의 다른 글

03. Linux 명령어 정리  (0) 2025.09.12
02. Linux 기초  (0) 2025.09.12
01. 가상 서버 구축  (0) 2025.09.11
2025-09-12 14:19:29
반응형

📂 1 디렉토리와 파일 사용하기 — 실습 명령어 정리

1. 홈으로 이동 후 현재 위치 확인

 
cd ~ pwd

2. 실습용 폴더 만들고 이동

 
mkdir -p prac && cd prac pwd

3. 하위 디렉토리 만들기

 
mkdir one two three ls -F

4. 깊은 경로 한 번에 생성 (-p)

 
mkdir -p one/tmp/test

5. 디렉토리 삭제 (비어 있어야 rmdir 가능)

 
rmdir two three ls -F

6. 홈으로 돌아가기

 
cd ~ pwd

🔌 종료 명령어 정리

명령어설명

 

shutdown -h now 즉시 시스템 종료 (전원 끔)
shutdown -r now 즉시 재부팅
shutdown -h +10 10분 후 종료
shutdown -c 예약된 종료 취소

 


✅ 이렇게 하면 디렉토리 이동/생성/삭제 → 종료 명령까지 한 번에 연습할 수 있어요.

📂 파일 다루기2 — 파일 보기 실습 명령어

1. /etc/hosts 파일 내용 확인

 
cat /etc/hosts cat -n /etc/hosts

2. /etc/services 파일 탐색

 
more /etc/services less /etc/services
 

3. /etc/services 마지막 10행 출력

 
tail /etc/services

👉 10행보다 많이 보고 싶으면 예: tail -n 20 /etc/services

4. /var/log/syslog 로그 변화 실시간 관찰

 
tail -f /var/log/syslog

👉 종료할 때: Ctrl + C


✅ 이렇게 하면 cat, more, less, tail 명령어를 모두 연습할 수 있어요.

 

 

 


🗂️ 파일 다루기 3 — 파일 복사/이동/삭제 실습 명령어

1. /etc/hosts → 현재 디렉토리에 hosts.bak으로 복사

cp /etc/hosts ./hosts.bak

2. backup 디렉토리 생성 후 hosts.bak 복사

mkdir backup cp hosts.bak backup/

3. hosts.bak 파일명을 hosts.txt로 변경

mv hosts.bak hosts.txt

4. hosts.txt → tmp1 디렉토리 생성 후 이동

mkdir tmp1 mv hosts.txt tmp1/

5. tmp1 안의 파일 삭제

rm tmp1/hosts.txt

6. tmp1 디렉토리 삭제

rm -r tmp1

✅ 이렇게 하면 복사 → 디렉토리 이동 → 이름 변경 → 삭제 순서를 모두 연습할 수 있어요.


🗂️ 파일 다루기 4 — 링크, 빈 파일, 시간 변경 실습 명령어

  • 하드 링크 (ln), 심볼릭 링크 (ln -s)
  • touch: 빈 파일 생성, 수정 시간 변경

링크, 빈 파일, 시간 변경 실습

  1. 원본 복사해서 /etc/hosts 파일 복사해 $HOME/proc/data1 파일 생성
  2. 하드 링크 data1.ln 생성, inode 확인 (ls -i)
    • inode 번호가 어떻게 되나요?
  3. ln data1 data1.ln ls -li data1 data1.ln
  4. 심볼릭 링크 data1.sl 생성, ls -l로 원본 확인
  5. ln -s data1 data1.sl ls -l data1*
  6. touch test1로 빈 파일 생성
  7. touch -t 01011200 test1 → 시간 변경 확인
  8. touch -t 01011200 test1 ls -l test1

🔗 파일 다루기 5 - 링크, 빈 파일, 시간 변경 실습 정리

1. 원본 파일 준비

/etc/hosts 파일을 $HOME/proc/data1 으로 복사

 
cp /etc/hosts $HOME/proc/data1

2. 하드 링크 생성 & inode 확인

하드 링크 data1.ln 생성 후 inode 번호 확인

 
ln data1 data1.ln ls -li data1 data1.ln

👉 inode 번호 동일해야 함

3. 심볼릭 링크 생성 & 원본 확인

심볼릭 링크 data1.sl 생성 후 링크 정보 확인

 
ln -s data1 data1.sl ls -l data1*

👉 심볼릭 링크는 다른 inode 번호 가지며, 원본 파일을 가리킴

4. 빈 파일 생성

 
touch test1

👉 ls -l test1 로 확인 가능

5. 파일 시간 변경 (예: 01월 01일 12:00)

 
touch -t 01011200 test1 ls -l test1

👉 ls -l 결과에서 수정 시간(MTime)이 바뀐 것을 확인


🔍 파일 다루기 6 — 검색 실습 명령어

1. 특정 문자열 검색 (grep)

 
grep udp /etc/services

👉 /etc/services 파일에서 udp라는 단어가 포함된 줄을 찾아 출력


2. 특정 파일 이름 찾기 (find)

 
find /usr -name ls

👉 /usr 디렉토리 아래에서 이름이 ls인 파일 검색


3. 사용자 소유 파일 찾기 (find)

 
find ~ -user $USER

👉 내 홈 디렉토리(~)에서 현재 사용자($USER)가 소유한 파일 검색


4. 명령 위치 확인 (whereis, which)

 
whereis mvwhichmv

👉 mv 명령이 어디에 설치되어 있는지 확인

  • whereis: 실행 파일, 매뉴얼 페이지 위치까지 표시
  • which: 실행될 실제 명령 경로(우선순위 반영) 표시

✅ 이렇게 하면 문자열 검색 → 파일 검색 → 소유자 기준 검색 → 명령 위치 확인까지 한 번에 연습할 수 있어요.


 

반응형

'Cloud Engineering Bootcamp > 5. Linux' 카테고리의 다른 글

04. LINUX VI 문서 편집기  (0) 2025.09.12
02. Linux 기초  (0) 2025.09.12
01. 가상 서버 구축  (0) 2025.09.11
2025-09-12 10:49:47
반응형

🐧 리눅스 기초

1. 리눅스의 특징

  • 리눅스는 공개 소프트웨어이며 무료로 사용할 수 있다.
  • 유닉스와의 완벽한 호환성을 유지한다.
  • 서버용 운영체제로 많이 사용된다.
  • 편리한 GUI 환경을 제공한다.

2. 리눅스의 구조

 
```mermaid
graph TD
    A[Hardware] --> B[Kernel]
    B --> C[Shell]
    C --> D[Application]
```
 
 
  • 커널 (Kernel)
    • 리눅스의 핵심
    • 프로세스, 메모리, 파일시스템, 장치 관리
    • 컴퓨터 자원 초기화 및 제어
  • 셸 (Shell)
    • 사용자가 명령어 입력하는 인터페이스
    • 명령 해석, 간단한 프로그램 기능 제공
    • 기본 셸: bash
  • 응용 프로그램 (Application)
    • 개발 도구, 문서 편집기, 네트워크 도구 등

3. 리눅스 명령 사용

(1) 프롬프트 기호와 홈 디렉토리

  • 프롬프트: 명령 입력 대기 표시
    • $ → 일반 사용자
    • # → root(관리자)
  • 홈 디렉토리: 기본 위치
    • 예: user1@localhost:~ → ~는 홈 디렉토리

(2) 명령행 편집

  • Backspace/Delete → 글자 삭제
  • Ctrl + w → 단어 삭제
  • Ctrl + u → 줄 전체 삭제

(3) 명령 구조

 
명령 [옵션] [인자...]
  • 명령: 동작 (예: ls, cp, mv)
  • 옵션: 기능 선택 (예: ls -a)
  • 인자: 대상(파일/디렉토리 이름)

4. 기초 명령어

  • 날짜 보기
date# Fri Jul 4 07:10:42 AM UTC 2025
  • 화면 지우기
clear
  • 명령어 도움말
man clear
  • 비밀번호 변경
passwd
  • 터미널 종료
exit# 또는 Ctrl + d
반응형

'Cloud Engineering Bootcamp > 5. Linux' 카테고리의 다른 글

04. LINUX VI 문서 편집기  (0) 2025.09.12
03. Linux 명령어 정리  (0) 2025.09.12
01. 가상 서버 구축  (0) 2025.09.11
2025-09-11 14:37:32
반응형

1. Oracle Virtual Box 설치

더보기

1-1. Oracle Virtual Box 설치 - Windows hosts 마우스로 클릭

https://www.virtualbox.org/wiki/Downloads

1-2. 지정한 경로로 설정 후 다운로드

1-3. 다운받은 경로로 이동하여 VirtualBox 프로그램 선택 후 마우스 우클릭 -> 관리자 권한으로 실행

1-4. Oracle Virtual Box 설치 로딩 화면

1-5. Microsoft Visual C++ 2015-2022 Redistributable (x64 / x86) 설치 먼저 하라는 팝업창

1-6. Microsoft 공식 다운로드 센터에서 Microsoft Visual C++ 2015-2022 Redistributable (x64 / x86) 설치 진행

https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170

1-7. 스크롤 조금 내려서 각자 환경에 맞는 설치파일 다운로드

Windows 환경 - x64로 설치 진행

1-8. VC_redist_x64 다운로드한 경로로 이동

1-9. VC_redist.x64 파일 선택 후 마우스로 우클릭 -> 관리자 권한으로 실행

1-10. 동의함 체크 후 설치 버튼 마우스로 클릭

1-11. Microsoft Visual C++ 2015-2022 Redistributable (x64 / x86) 14.44.35211 버전 설치 진행중 화면

1-12. Microsoft Visual C++ 2015-2022 Redistributable (x64 / x86) 14.44.35211 버전 설치 완료

다시 시작 버튼 마우스로 클릭 - Window 재부팅하는 거임

1-13. Window 재부팅 후  VirtualBox 프로그램 선택 후 마우스 우클릭 -> 관리자 권한으로 실행

1-14. Oracle Virtual Box 설치 로딩 화면

1-15. Oracle Virtual Box 설치 정상적으로 진행 가능 -> Next 버튼 마우스로 클릭

1-16. 동의 후  Next 버튼 마우스로 클릭  

I accept the terms of the license agreement 체크 후 Next 버튼 마우스로 클릭

1-16.  Next 버튼 마우스로 클릭

1-17. Yes 버튼 마우스로 클릭

1-18. Yes 버튼 마우스로 클릭

1-19. Next 버튼 마우스로 클릭

1-20. Install 버튼 마우스로 클릭

1-21. Oracle Virtual Box 설치 진행 중 화면

1-22. Oracle Virtual Box 설치 완료 -> Finish 버튼 마우스로 클릭

1-23. Oracle Virtual Box 실행 화면

 

2. 가상머신 생성하기

더보기

2-1. ubuntu linux 다운로드 링크 접속 -> Accept all and visit site 버튼 마우스로 클릭

https://ubuntu.com/download/server

2-2. Download 24.04.3 LTS 버튼 마우스로 클릭

2-3. ubuntu  24.04.3 iso 파일 다운로드 

용량이 3GB 넘어서 3~5분 정도 걸림

2-4. ISO 파일 보관할 경로 지정 후 저장

예) 바탕화면\실습\OS ISO

2-5. Oracle Virtual Box 관리자 프로그램 실행 - 새로 만들기 아이콘 마우스로 클릭

2-6. VM Name 입력 후 다음 버튼 마우스로 클릭

VM Name : ubuntu-server01

2-7. Virtual Hardware Setting 후 다음 버튼 마우스로 클릭

Base Memory : 8192 MB
Number of CPUs : 4
Disk Size : 100.00 GB

2-8. 완료 버튼 마우스로 클릭

2-9. VM 생성 완료

 

 

3. 가상머신에 우분투 리눅스 설치

3-1. 설정 아이콘 마우스로 클릭

3-2. 디스플레이 - Video Memory 128MB 설정

3-3. 저장소 → 컨트롤러: IDE / 비어 있음 선택 → 속성 - Optical Drive - 디스크 모양 마우스로 클릭

3-4. Choose a Disk File... 클릭

3-5. ubuntu iso 파일 선택 후 열기 버튼 마우스로 클릭

3-6. ubuntu iso 적용 여부 체크 후 확인 버튼 마우스로 클릭

3-7. 설정 적용 후 시작 아이콘 마우스로 클릭

3-8. *Try or Install Ubuntu Server 선택 후 Enter Key 입력하여 ubuntu linux 설치 진행

3-9. English 선택 후 Enter Key 입력

3-10. 키보드 언어 선택   Layout: Korean을 선택 → Done 선택 후 Enter Key 입력

3-11. 설치 유형 변경하지 말고  Ubuntu Server →  Done 선택 후 Enter Key 입력

3-12. 네트워크를 설정 변경하지 말고  Done 선택 후 Enter Key 입력

3-13. 프록시 설정도 초기 설정 그대로 진행 →  Done 선택 후 Enter Key 입력

3-14. Mirror Server 설정 변경 없이 Done 선택 후 Enter Key 입력

3-15. 저장소 레이아웃을 설정 변경 없이 Done 선택 후 Enter Key 입력

3-16. 파일 시스템 설정 변경 없이 Done 선택 후 Enter Key 입력

3-17. Continue 선택 후 Enter Key 입력

3-18. 사용자 프로필 설정 - 사용자 이름, 서버 이름, 계정 아이디, 패스워드를 정의  → Done 선택 후 Enter Key 입력

Your name : kim
Your servers name : myserver01
Pick a username : nice
Choose a password : 12345
Confirm your password : 12345

 

3-19. 우분투를 업그레이드 여부 설정 없이 skip for now 체크 → Continue 선택 후 Enter Key 입력

3-20. OpenSSH server 설치 여부 체크  →  Done 선택 후 Enter Key 입력

putty, mobaxterm 등 ssh 접속을 위해 설치 필요

3-21. 추가적으로 설치할 소프트웨어 리스트 별도로 선택하지 않고  Done 선택 후 Enter Key 입력

3-22. Ubuntu 설치 진행 화면

3-23. Reboot Now 선택 후 Enter Key 입력

3-24. 에러 발생

[FAILED] Failed unmounting cdrom.mount - /cdrom.
Please remove the installation medium, then press ENTER:
[FAILED] Failed unmounting cdrom.mount - /cdrom.

3-25. 설치를 잘못한 건가 했는데, 가상 머신 껐다가 키면 됨

가상 머신 창 X 표시 눌러서 닫기 → 가상 머신 닫기 팝업창에서 시스템 전원 끄기 선택 후 확인 버튼 마우스로 클릭

3-26. 전원 꺼짐 확인 후 시작 아이콘 마우스로 클릭

3-27. 설치 시 설정한 계정 정보 입력 후 로그인 확인

반응형

'Cloud Engineering Bootcamp > 5. Linux' 카테고리의 다른 글

04. LINUX VI 문서 편집기  (0) 2025.09.12
03. Linux 명령어 정리  (0) 2025.09.12
02. Linux 기초  (0) 2025.09.12