오늘도 기록하는 중 GitHub

Linux 4

리눅스 커널 모듈

🐧 리눅스 커널리눅스 커널은 하드웨어와 응용 프로그램 간의 중재자로 작동한다. 시스템의 물리적 자원(CPU, 메모리, 장치)을 관리하며, 다음과 같은 주요 기능을 수행한다.하드웨어 추상화: 복잡한 하드웨어 접근을 단순화하여 사용자 프로그램이 쉽게 활용할 수 있게 한다.프로세스 관리: PID(Process ID)를 통해 프로세스 스케줄링과 자원 할당을 최적화한다.메모리 관리: 가상 메모리와 스왑 공간을 활용해 물리적 메모리 이상의 용량을 제공한다.시스템 호출 제공: read(), write()와 같은 저수준 연산을 표준화된 인터페이스로 노출한다.이번엔 리눅스 커널 모듈에 대해서 알아보겠다.✒️ 커널 모듈리눅스 커널 모듈은 동적으로 로드/언로드 가능한 코드 조각으로, 시스템 재부팅 없이 커널 기능을 확장할..

Linux 2025.05.15

시스템 로그 분석 및 모니터링(logrotate)

로그는 중요하다로그 파일은 시스템 관리자가 서버의 상태를 파악하고 문제를 해결하는 데 필수적인 정보를 제공한다. 웹 서버, 애플리케이션 서버, 데이터베이스 등 모든 서비스는 자신의 활동을 로그 파일에 기록한다. 이러한 로그 파일들은 시간이 지날수록 크기가 커지게 되는데, 방치하면 디스크 공간을 빠르게 소진시켜 시스템 장애를 일으킬 수 있다.Logrotate란 무엇인가Logrotate는 리눅스 시스템에서 로그 파일을 자동으로 관리하고 압축, 백업, 삭제, 로테이션 등을 수행하는 유틸리티다로그 파일이 지나치게 커지는 것을 방지하고, 디스크 공간을 효율적으로 관리할 수 있게 도와준다대부분의 리눅스 배포판에는 logrotate가 기본적으로 포함되어 있으며, 필요한 경우 패키지 관리자를 통해 쉽게 설치할 수 있다..

Linux 2025.05.15

리눅스

Linux Shell 파일 구성자동화 목적의 리눅스 쉘 파일을 구성해보려고 한다.다음과 같은 상황을 가정하고 파일을 작성해보자.간단한 spring 앱을 실행하려고 한다.깃헙에 커밋을 푸시하면 이를 탐지해 github actions에서 스프링 어플리케이션을 실행할 인스턴스에 ssh로 접속하여 자동화 스크립트를 실행한다.스크립트 파일에는 다음과 같은 내용이 담겨 있다.깃헙 레포지토리(spring-app-simple)에서 변경사항을 Pull해온다.gradle로 빌드한다.기존 앱이 실행중인지 프로세스에서 확인한다. 실행중이면 종료한다.8080번 포트로 들어오는 트래픽을 처리하도록 한다.nohup 명령어로 백그라운드에서 실행하도록 한다.로그는 ./spring 경로에 저장한다.#!/usr/bin/env bashse..

Linux 2025.04.28

Shell

Shell이란?리눅스나 유닉스 시스템에서 자동화된 작업을 수행하기 위한 프로그램이다. 사용자와 운영체제 커널 사이의 인터페이스 역할을 하며, 사용자의 명령을 해석하고 실행한다.shell의 종류는 다음과 같다.bash : Bourne-Again Shell(프롬프트 : #, 경로 : /bin/bash)sh : Bourne Shell(프롬프트 : $, 경로 : /bin/sh)csh : C Shell(프롬프트 : %, 경로 : /bin/csh)ksh : Kron Shell(프롬프트 : $, 경로 : /bin/ksh)tcsh : TENEX C Shell(프롬프트 : >, 경로 : /bin/tcsh)Shell 명령어 기호shell 명령어를 다음과 같은 기호와 함께 사용하면 다양한 작업이 효율적으로 가능해진다.| :..

Linux 2025.04.23
반응형