목록BASIC/LINUX (18)
cmod.ify
리눅스 소프트웨어 및 패키지 관리1. 우분투 패키지 개요배포 방식: 소스코드(컴파일 필요) 또는 패키지(바이너리 실행 파일) 형태.패키지 형식: 우분투는 deb 형식을 사용(RedHat 계열은 RPM 사용).Snap 도입: 우분투 16.04부터 도입된 샌드박스형 패키지. 의존성 문제를 해결했으며 deb와 호환됨.주요 특징:컴파일 과정 없이 즉시 설치 가능.삭제 시 관련 파일 일괄 제거 및 기존 패키지 유지하며 업그레이드 지원.apt 명령을 통해 의존성 있는 패키지를 자동 설치.2. 패키지 카테고리main: 우분투 공식 지원, 자유 소프트웨어.restricted: 우분투 지원이나 완전한 자유 라이선스는 아님.universe: 커뮤니티 지원, 기술 지원 보장 안 됨.multiverse: 사용자가 직접 라이선..
1. 프로세스(Process) 개요정의: 실행 중인 프로그램을 의미함.다중 프로세스 시스템: 리눅스는 여러 개의 프로세스를 동시에 실행할 수 있는 구조임.프로세스 구분: 시스템 운영에 필요한 기능을 수행하는 시스템 프로세스와 사용자가 실행한 사용자 프로세스로 나뉨.부모-자식 관계: 프로세스는 계층 구조를 가짐. 부모가 자식을 생성하고, 그 자식이 또 다른 자식을 생성할 수 있음.최상위 프로세스: 부모가 없는 뿌리 프로세스로 부팅 시 실행되는 systemd와 kthreadd가 있음.2. 프로세스 번호 (PID)PID (Process Identifier): 각 프로세스에 부여된 고유 번호.특징: 1번부터 시작하며 새로운 프로세스가 실행될 때마다 1씩 증가함.주요 PID:1번: systemd (우분투 기준 최..
1. 리눅스 파일 시스템 개요유닉스 철학 계승: "모든 것은 파일이다(Everything is a file)"라는 원칙 하에 마우스, 키보드, 디스크 등 모든 장치를 파일로 관리함.싱글 루트 트리 구조: 윈도우(C:, D:)와 달리 뿌리(/, 루트)가 하나인 계층형 트리 구조임.추가 디스크는 특정 디렉토리에 연결(마운트)하여 사용함.경로 구분:절대 경로: /부터 시작하는 전체 경로.상대 경로: 현재 위치(.)나 상위 위치(..)를 기준으로 하는 경로.홈 디렉토리: 사용자별 할당 공간. ~ 기호로 표시함. 2. 주요 디렉토리 구성 및 역할디렉토리주요 역할 및 특징/dev디바이스 파일: 하드디스크, 마우스 등 하드웨어를 파일 형태로 관리하는 곳./home사용자 홈 디렉토리: 일반 사용자들의 개인 작업 공간 ..
1. 셸(Shell) 개요 및 주요 기능사용자가 명령 치면 커널한테 전달하고, 커널이 일한 결과 다시 사용자한테 보여주는 인터페이스임.명령어 해석기: 사용자 명령 읽어서 실행함.프로그래밍 (Shell Script): 여러 명령 묶어서 반복 작업 자동화 가능.환경 설정: 로그인할 때 실행되는 초기화 파일로 경로(PATH), 권한(umask), 변수 등을 사용자 맞춤형으로 세팅함.2. 셸의 종류종류특징sh (Bourne Shell)최초의 셸. 기본기는 탄탄하지만 편의 기능 부족함.bash (Bourne Again Shell)리눅스 표준/기본 셸. sh 호환 + csh, ksh 장점csh / tcshC언어랑 문법 비슷함. BSD 유닉스 계열에서 많이 씀.ksh (Korn Shell)AT&T에서 만듦. 기능 많..
1. 리눅스 편집기의 종류리눅스 환경에서 사용하는 편집기는 작동 방식에 따라 크게 세 가지로 나뉜다.행 단위 편집기: 한 번에 한 줄씩 편집하는 도구 (예: ed, ex, sed)화면 단위 편집기: 터미널 화면 전체를 사용하며 편집 (예: vi, vim)GUI 편집기: 윈도우 메모장처럼 그래픽 환경에서 사용 (예: gedit)2. 모드형 vs 비모드형 편집기가장 대표적인 편집기인 Vim과 Nano의 차이점을 이해하는 것이 중요하다.구분모드형 편집기 (Vim)비모드형 편집기 (Nano)특징입력 모드와 명령 모드가 엄격히 구분됨입력과 명령 구분이 없음 (메모장 방식)장점숙련 시 키보드만으로 초고속 편집 가능직관적이고 배우기 쉬움단점초기 학습 곡선이 높음복잡한 편집 작업 시 효율이 떨어짐조작i, esc, : ..
1. 쉘(Shell)과 프롬프트 기초사용자의 명령을 해석하여 커널에 전달하는 쉘의 기본 구조다.구성 요소내용 및 확인 방법비유/특징프롬프트user@hostname:~$사용자명, 호스트명, 위치 표시로그인 쉘echo $SHELL로그인 시 부여되는 기본 쉘홈 디렉터리~ (Tilde)사용자의 개인 작업 공간권한 표시$ (일반 유저) / # (관리자)현재 실행 권한 상태명령 방식대화식(직접 입력) / 스크립트(파일 실행)실행 방법의 차이2. 명령행 편집 및 제어 단축키터미널 작업 시 마우스 없이 키보드만으로 편집하는 필수 기능이다.분류단축키기능설명비유 및 팁커서 이동Ctrl + A줄의 맨 앞으로 이동Ahead (맨 앞) Ctrl + E줄의 맨 뒤로 이동End (끝) Ctrl + F한 글자 앞으로 이동Forwar..
외부(Windows)에서 가상머신(Ubuntu)에 원격으로 접속하기 위한 SSH 설정 과정을 정리한다.1. OpenSSH 서버 설치 및 서비스 구동리눅스 서버에 외부 접속을 허용하려면 먼저 SSH 서비스를 설치하고 실행해야 한다.패키지 업데이트 및 설치sudo apt updatesudo apt install openssh-server서비스 실행 및 상태 확인Active: active (running) 상태가 표시되면 정상적으로 작동 중인 것이다.sudo systemctl start sshsudo systemctl status ssh2. 방화벽(UFW) 설정리눅스 자체 방화벽에서 SSH 접속 포트(기본 22번)를 허용해주어야 한다.SSH 포트 개방이 명령어를 통해 외부에서 들어오는 SSH 접속 요청을 방화..
1. 리눅스(Linux) 개요리눅스는 리누스 토발즈가 교육용 운영체제인 MINIX를 참조하여 개발한 운영체제다. 'Linus의 UNIX'라는 의미를 담고 있으며, 유닉스(UNIX) 계열에 속한다.UNIX의 역사: 1969년 AT&T 벨 연구소에서 어셈블리어로 처음 개발되었다.리눅스 계통도:데비안 계열: 우분투(Ubuntu) 리눅스가 대표적이다.레드햇 계열: 페도라, CentOS, 레드햇 엔터프라이즈 등이 있다.슬랙웨어 계열: SuSE가 대표적이다.2. 운영체제의 구조리눅스는 크게 커널, 쉘, 애플리케이션의 3단계 구조로 이루어져 있다.Kernel(커널): 운영체제의 핵심이다. 프로세스, 메모리, 파일 시스템, 장치 관리 기능을 수행하며 컴퓨터 자원을 초기화하고 제어한다. 대부분 C언어로 작성되었다.She..