가장 쉬운 리눅스 강좌
https://youtu.be/tPWBF13JIVk?si=tYLyutw1zCLw72fe
1. 리눅스
리눅스는 개발자 친화적인 운영체제
시스템을 커스터마이징 할 수 있고 필요에 의해 최적화된 환경을 만들 수 있음
윈도우, 맥OS, 모바일 안드로이드, iOS 등은 일반 사용자 end-user 대상으로 만든 운영체제, 시스템 변경 없이 주어진 GUI(Graphic User Interface)를 이용해 사용
리눅스는 주로 CLI(Command Line Interface) 사용
2. 오픈소스
리눅스는 오픈소스
자신만의 운영체제를 만들거나 기존 운영체제에 기여할 수 있는 오픈소스임
자유롭게 사용하고 수정이 가능
리눅스를 필요에 따라 개조하고 발전시키면서 우분투, 민트, CentOS 등 같이 무수한 버전이 생성
윈도우나 맥OS 같은 운영체제는 소스코드가 폐쇄적, 수정이나 확장에 한계가 있음
3. 서버와 클라우드 환경
웹, 게임, 클라우드 서버 등 대부분의 서버는 리눅스를 기반으로 운영
모바일 운영체제(안드로이드 등), IoT, 라우터 등 여러 가지 리눅스를 기반으로 동작
리눅스의 유연성과 커스터마이징 덕분
4. 리눅스 커널
커널은 하드웨어와 소프트웨어를 연결
메모리, 프로세스 관리, 하드웨어 입출력 등 처리
커널이 시스템의 거의 모든 것을 제어
운영체제라는 소프트웨어의 존재이유이자 핵심
5. 사용법
주요 디렉토리 설명
bin | 기본 명령어들이 저장된 디렉토리 |
boot | 부팅에 필요한 가진 파일들이 저장되는 곳 |
dev | 시스템 디바이스 관련 파일들이 저장되는 것 |
etc | 시스템 설정에 관련된 각종 파일들이 저장되는 곳 |
home | 사용자의 홈 디렉토리가 생성되는 곳 |
lib | 커널과 프로그램에 필요한 각종 라이브러리가 저장되는 곳 |
media | CD, USB같은 외부 장치를 연결하는 곳 |
mnt | 탈부착 가능한 장치들을 임시로 연결하는 곳(WSL의 경우 윈도우의 디렉토리와 연결) |
opt | 추가 패키지가 설치되는 곳 |
root | root(최고관리자)계정의 홈 디렉토리 |
run | 실행중인 서비스와 관련된 파일들이 저장되는 곳 |
sbin | 시스템 관리자용 명령어들이 저장되는 곳 |
sys | 리눅스 커널 관련 정보가 있는 곳 |
tmp | 시스템 사용중 발생하는 임시데이터가 저장되는 곳 |
usr | 기본 실행파일, 라이브러리, 헤더 파일등이 저장되는 곳 |
var | 시스템 운영중 발생하는 데이터, 로그가 저장되는 곳 |
proc | 실행중인 프로세스 및 커널 정보가 저장되는 곳디스크상이 아닌 메모리에 존재 |
pwd 현재 위치의 디렉토리의 절대경로
ls 현재 위치한 디렉토리 내 파일/디렉토리 목록 표시
ls 옵션 설명
-a | 숨긴파일을 포함한 모든 항목 표시 |
-d | 디렉토리 정보만 표시 |
-F | 디렉토리는 /, 실행가능 파일은 *, 소켓파일은 =, 링크인 경우 @를 파일이음 뒤에 표시 |
-l | 각 항목의 상세 정보들을 함께 표시 |
-m | 각 항목들을 쉼표로 구분하여 표시 |
-r | 항목들을 역순으로 표시 |
-R | 하위 디렉토리의 내용들도 표시 |
-s | kb 단위로 표시 |
-t | 최종 수정시간을 기준으로 표시 |
-u | 최종 액세스 시간 기준으로 표시 |
cd 디렉토리 이동
mkdir 폴더명 디렉토리 생성
cp 복사할파일명 붙여 넣기 된 파일명 파일 복사
mv 옮길 대상 이동디렉터리 파일이나 디렉터리를 옮기거라 이름을 변경할 때 사용
rm 삭제대상 파일이나 디렉토리 삭제, 디렉토리를 삭제할 땐 -r 옵션을 사용해 내부 요소들도 삭제
wget 주소 웹에서 다운로드
sudo 명령어 관리자 권한이 있어야 실행할 수 있는 명령어, Permission 관련 오류가 발생한다면 sudo 명령어 필요