su-tudy 님의 블로그
#0 리눅스 기초 — 기본 개념 & 명령어 본문
📌 진행 과정 한눈에 보기
이 시리즈는 리눅스 서버를 직접 구축하고 운영하는 과정을 따라가 실습 기록이다. VirtualBox에 CentOS를 설치하는 것부터 시작해서, 네트워크 설정, 웹 서버, FTP 서버, 데이터 베이스까지 실제 서버 환경을 단계적으로 구성해 나간다.
이 글은 실습 과정의 출발점으로, 리눅스가 무엇인지와 실습동안 반복해서 쓰게 될 기본 명령어들을 정리해 두었다.
가상환경 구축
→
네트워크 설정
→
사용자&권한 관리
→
보안 설정
→
웹 서버 구축
→
데이터베이스 구축
→
FTP 서버 구축
→
개발 환경 구축
📌 리눅스란 무엇인가
리눅스는 Unix를 기반으로 만들어진 오픈 소스 운영 체제이다. 소스 코드가 공개되어 있어 누구나 자유롭게 수정하고 배포할 수 있으며, 안정성과 보안성이 높아 서버 운영 환경에서 사실상 표준으로 사용된다.
- 오픈소스 : 소스코드를 누구나 열람하고 수정할 수 있다. 커뮤니티 기반으로 지속적으로 발전한다.
- 멀티유저/멀티태스킹 : 여러 사용자가 동시에 접속하고, 여러 작업을 동시에 처리할 수 있다.
- 안정성 : 시스템 충돌과 바이러스에 강한 구조로 설계되어 장시간 무중단 운영이 가능하다.
- 보안성 : 계정 분리, 파일 권한, 방화벽 등으로 해킹 공격에 대응할 수 있다.
- 다양한 배포판 : 용도에 맞는 다양한 버전이 존재한다. 이 실습에서는 서버용 배포판인 CentOS 7을 사용한다.
- 유연성 : 필요한 기능을 직접 추가하거나 수정할 수 있어 서버 환경에 최적화하기 쉽다.
📌 기본 명령어
❑ 터미널 단축키
Ctrl + Insert |
복사 |
Shift + Insert |
붙여넣기 |
Ctrl + C |
실행 중인 명령 취소 |
Ctrl + L / clear |
터미널 화면 초기화 |
Tab |
명령어 / 경로 자동완성 |
↑ / ↓ |
이전 / 다음 명령 탐색 |
history |
전체 명령어 이력 보기 |
❑ 파일 & 디렉토리
/ |
루트 디렉토리 |
~ |
홈 디렉토리 |
pwd |
현재 위치 확인 |
ls |
파일 목록 보기-l 상세보기 | -al 숨김 포함 전체 | -h 용량 단위 표시 |
cd 경로 |
디렉토리 이동../ 상위 이동 |
touch 파일명 |
파일 생성 touch .파일명 숨김 파일 생성 |
rm 파일명 |
파일 삭제-rf 폴더명 폴더 강제 삭제 (내용 포함) |
mkdir 폴더명 |
폴더 생성-p 상위경로/하위경로 하위폴더 포함 생성 |
rmdir 폴더명 |
폴더 삭제-p 상위경로/하위경로 하위폴더 포함 삭제 |
mv 기존경로 새경로 |
파일 이동 또는 이름 변경 |
cp 파일명 |
파일 복사-r 폴더명 폴더 복사 |
❑ 파일 내용 확인 & 편집
cat 파일명 |
파일 내용 전체 출력q 종료 | ↑ ↓ ← → 이동 |
less 파일명 |
페이지 단위 출력 |
echo 문자열 |
문자열 출력> 파일 저장(덮어쓰기) | >> 파일에 추가 |
vim 파일명 |
텍스트 편집기 실행a 입력모드 | ESC 명령모드 | :wq! 저장 후 종료 | :q 저장 없이 종료 |
❑ 검색
fgrep 문자열 |
해당 문자열이 포함된 내용 검색-v 해당 문자열 제외하고 검색 |
history | fgrep |
명령어 이력에서 검색 |
locate 파일명 |
시스템 내 파일 경로 검색 |
updatedb |
locate용 데이터베이스 업데이트 (검색 전 먼저 실행) |
❑ 사용자 & 계정
whoami |
현재 로그인된 사용자 확인 |
id 계정 |
유저의 권한 정보 확인 |
useradd 계정 |
새 사용자 계정 생성 |
userdel 계정 |
계정 삭제-r 홈 디렉토리 포함 삭제 |
passwd 비밀번호 |
비밀번호 설정 |
su 계정 |
계정 전환 (인수 없으면 root 전환) |
sudo 명령어 |
관리자 권한으로 명령 실행 |
exit |
현재 계정에서 로그아웃 |
❑ 권한 & 소유권
chmod |
파일 권한 변경 |
chown |
소유자 변경-R . 하위 폴더 전체 소유권 변경 |
❑ 서비스 & 시스템 관리
systemctl 명령 서비스명 |
서비스 제어start 시작 | stop 중지 | restart 재시작 | status 상태 확인 | enable 부팅 시 자동 시작 | disable 자동 시작 해제 |
yum install 패키지명 |
패키지 설치update 업데이트 | remove 삭제 | list 설치 목록 | -y 자동 YES |
ps -ef |
현재 실행중인 전체 프로세스 출력 |
shutdown now |
시스템 종료 |
reboot now |
시스템 재시작 |
❑ 네트워크
ip addr |
IP 주소 확인 |
ip route |
라우팅 테이블 확인 |
ifup / ifdown 랜카드명 |
네트워크 장치 연결 / 해제 |
ping IP주소 |
연결 확인 (패킷 전송) |
nslookup 도메인 |
도메인의 IP 조회 |
netstat |
전체 네트워크 상태보기-an 전체 연결 숫자 표시 | -l LISTEN 포트 | -p PID 표시 |
다음 편으로 이동 🔜 #1 가상환경 구축 — VirtualBox + CentOS + PuTTY
'리눅스 > Linux 실습' 카테고리의 다른 글
| #5 웹 서버 구축 — Nginx 설치 & Virtual Hosting (0) | 2024.11.24 |
|---|---|
| #4 보안 설정 — 방화벽(firewalld) & SELinux 비활성화 (0) | 2024.11.23 |
| #3 사용자 및 권한 관리 — sudo, chmod, chown (0) | 2024.11.13 |
| #2 네트워크 설정 — 랜카드 자동 활성화 & 고정 IP 변경 (0) | 2024.11.04 |
| #1 가상환경 구축 — VirtualBox + CentOS + PuTTY (0) | 2024.11.02 |