
리눅스란?
- 운영체제(OS) 중 하나.
- 정확히는 커널 기반의 오픈소스 운영체제다.
- 무료이고 개방적이다 보니 서버, 개발 환경에서 굉장히 많이 쓰인다.
리눅스 철학 3가지
- Everything is a file
→ 장치, 프로세스, 네트워크까지 모두 파일처럼 다룬다.
예: /dev/sda (하드디스크), /proc/cpuinfo (CPU 정보) - 작은 프로그램들의 조합
→ 파이프(|) 하나로 여러 도구를 이어서 사용하면 복합 기능이 된다.
cat /etc/passwd | grep root
4. 텍스트 기반 설정
→ 시스템 설정은 GUI가 아니라 텍스트 파일을 수정해서 한다.
예: /etc/ssh/sshd_config — SSH 서버 설정 파일
리눅스 구조
사용자 → 쉘 → 커널 → 하드웨어
- 커널: OS의 중추, 하드웨어 제어 담당
- 쉘: 사용자의 명령을 커널이 이해하게 전달
- 유틸리티: ls, cp, mv 같은 명령어 조합의 근간
파일 시스템 구조
리눅스는 / 루트 아래에 디렉토리가 계층 구조로 구성됨
/
├── bin : 기본 명령어
├── etc : 환경 설정 파일
├── home : 사용자 디렉토리
├── root : 관리자 홈
├── var : 로그 등 가변 데이터
├── usr : 응용 프로그램 및 라이브러리
대표 배포판 계열
- Debian 계열: Ubuntu, Linux Mint
- Red Hat 계열: RHEL, CentOS, Fedora
목적에 따라 선택: 서버, 데스크톱, 보안 강화, 교육용 등 다양
기본 명령어 정리
🔹 파일 & 디렉토리 관리
명령어설명예시
| pwd | 현재 디렉토리 확인 | pwd |
| ls | 파일 목록 보기 | ls -l, ls -a |
| cd | 디렉토리 이동 | cd /home/user |
| mkdir | 새 디렉토리 생성 | mkdir mydir |
| rmdir | 빈 디렉토리 삭제 | rmdir mydir |
| rm | 파일 삭제 | rm file.txt |
| cp | 파일 복사 | cp a.txt b.txt |
| mv | 파일 이동/이름 변경 | mv a.txt old.txt |
🔹 파일 내용 확인
- cat file.txt
- less file.txt (상하 이동 가능)
- head file.txt, tail -f log.txt (실시간 확인 가능)
🔹 권한 & 소유권
- chmod 755 file.txt
- chown user:group file.txt
🔹 프로세스 관리
- ps aux, top, kill PID
🔹아카이브 & 압축
- tar -cvf files.tar dir/ — 묶기
- gzip file.txt, gunzip file.txt.gz