리눅스에서 반복적인 작업을 자동화하고 싶을 때, 가장 많이 사용하는 도구가 바로 Bash 스크립트입니다.Bash는 대부분의 리눅스 시스템에서 기본으로 제공되며, 명령어들을 모아 간단한 프로그램처럼 실행할 수 있게 해줍니다. Bash 스크립트란?Bash 스크립트는 Bourne Again Shell에서 실행되는 명령어 모음 파일입니다.주로 `.sh` 확장자를 가지며, 순차적으로 명령어를 실행하는 방식으로 동작합니다. 스크립트 작성과 실행 방법작성nano hello.sh#!/bin/bashecho "Hello, world!"실행 권한 부여chmod +x hello.sh실행./hello.sh 변수 사용name="Lee"echo "Hello, $name!"변수는 공백 없이 대입해야 합니다.$변수명으로 값을 참조합..
리눅스 서버를 운영하다 보면 로그 파일이 계속 쌓이게 됩니다.시간이 지나면 로그 파일 크기가 커져서 디스크 공간을 잡아먹고, 관리도 어려워지죠.이럴 때 사용하는 도구가 바로 logrotate입니다.정해진 주기에 따라 로그 파일을 자동으로 백업하고, 압축하고, 오래된 로그를 삭제해줍니다. logrotate란?logrotate는 로그 파일을 주기적으로 순환(rotating)하여 오래된 로그를 정리해주는 유틸리티입니다.많은 리눅스 배포판에서 기본 설치되어 있으며, /etc/logrotate.conf와 /etc/logrotate.d/에서 설정을 관리합니다. 기본 동작 방식logrotate는 다음과 같은 작업을 자동으로 수행할 수 있습니다:로그 파일 분리 및 백업 (rotate)압축 저장 (gzip)백업 개수 유..
리눅스에서는 하나의 파일을 다양한 방식으로 다른 위치에서 참조할 수 있습니다.그 대표적인 방법이 바로 하드 링크(hard link)와 소프트 링크(soft link)입니다.이 두 개념은 겉보기엔 비슷하지만, 실제로는 동작 방식과 목적이 꽤 다릅니다.소프트 링크(Soft Link, 심볼릭 링크)소프트 링크는 윈도우의 "바로가기"와 비슷한 개념입니다.원본 파일의 경로를 참조하는 별도 파일이 생성됩니다.만드는 방법ln -s 원본파일 링크이름예시:ln -s /home/user/data.txt link_to_data.txt특징링크는 원본 파일의 위치 정보를 저장함원본이 삭제되면 링크는 끊어짐 (broken link)디렉토리에도 링크 가능 하드 링크(Hard Link)하드 링크는 동일한 파일의 또 다른 이름(ali..
리눅스에서 소프트웨어를 설치할 때는 보통 소스 코드를 직접 컴파일하지 않고, 패키지 관리자를 사용합니다.각 배포판에 따라 사용하는 명령어가 조금씩 다르지만, 기본 개념과 사용법은 비슷해요.이번 글에서는 대표적인 패키지 관리자 세 가지: apt (Ubuntu/Debian), yum (CentOS 7 이하), dnf (CentOS 8, Fedora 등) 의 사용법을 함께 정리해보겠습니다. 패키지 관리자란?패키지 관리자란, 소프트웨어의 설치, 삭제, 업데이트, 의존성 관리 등을 도와주는 도구입니다.운영체제에 맞는 저장소(리포지터리)에서 필요한 패키지를 가져와 자동으로 설치해줍니다. apt (Ubuntu, Debian 계열)패키지 목록 업데이트sudo apt update패키지 설치sudo apt install ..
리눅스를 처음 접하면 “파티션”, “마운트”라는 단어가 낯설게 느껴질 수 있습니다.하지만 파일시스템을 다루는 데 있어 이 개념들은 꼭 알고 넘어가야 해요.다음과 같은 내용을 차근차근 알아보겠습니다.하드디스크와 블록 디바이스란?파티션의 개념과 종류마운트란 무엇이며, 왜 필요한가? 하드디스크와 블록 디바이스리눅스에서는 하드디스크나 SSD 같은 저장 장치를 블록 디바이스라고 부릅니다.이들은 /dev 디렉토리 아래의 파일로 표현됩니다.예시:/dev/sda → 첫 번째 하드디스크 /dev/sdb → 두 번째 하드디스크각 디스크는 데이터를 일정한 크기의 블록 단위로 나눠 저장하고 읽어오는 방식으로 작동합니다. 파티션(Partition) 이란?하드디스크를 여러 개의 논리적 단위로 나누는 것을 파티션 분할이라고 ..
리눅스에서 네트워크 방화벽을 직접 제어하려면 iptables를 사용할 줄 알아야 합니다.iptables는 네트워크 패킷을 필터링하고 제어할 수 있는 강력한 도구로,UFW나 firewalld 같은 방화벽 프론트엔드도 내부적으로 iptables를 사용합니다.iptables의 기초적인 구조와 간단한 규칙 설정 방법을 알아보겠습니다. 1. iptables 기본 체인 이해하기iptables는 기본적으로 세 가지 체인(Chains)으로 작동합니다:INPUT: 서버로 들어오는 패킷 처리OUTPUT: 서버에서 나가는 패킷 처리FORWARD: 서버를 거쳐 다른 호스트로 전달되는 패킷 처리(라우터용)기본 정책을 먼저 설정할 수 있습니다:sudo iptables -P INPUT DROPsudo iptables -P FOR..