인프라 9

RHEL 리눅스 권한 체계

Overview최근 업무 상 RHEL(Red Hat Enterprise Linux)을 사용하는 경우가 증가하면서, 해당 시스템의 파일 권한 체계를 이해하고 문제 발생 시 원활하게 대응할 필요가 있다. 본 문서에서는 기본적인 권한 체계를 설명한 후, 권한이 다를 경우 발생할 수 있는 문제와 해결 방안을 살펴본다.파일 권한 관리모든 파일 또는 디렉토리에는 세 가지 수준의 소유권이 있다.사용자(Owner, u) – 파일을 소유한 계정그룹(Group, g) – 소유자가 속한 그룹기타(Others, o) – 위 두 그룹에 속하지 않는 사용자그리고 각 소유권에는 아래와 같이 세 가지의 권한이 할당 될 수 있다.읽기(r) – 파일 내용을 읽을 수 있음쓰기(w) – 파일을 수정하거나 삭제할 수 있음실행(x) – 실행 ..

인프라 2025.02.20

RHEL 디렉토리 구조

Overview최근 RHEL을 사용할 경우가 많아 해당 시스템에 대한 디렉토리 구조를 살펴보려 한다Root 디렉토리 구조리눅스의 디렉토리 파일은 트리 구조로 구성되어 있다. 리눅스에서는 수많은 파일을 관리하기 위해 이러한 디렉토리 개념을 사용한다.모든 디렉토리의 최상위 디렉토리가 Root 디렉토리이다. / 로 표시 한다.디렉토리 구성 및 기능디렉토리 위치디렉토리 이름디렉토리 설명/bin바이너리필수적인 실행 파일(명령어) 저장 (ls, cp, mv 등)/sbin시스템 바이너리시스템 관리용 명령어 (fdisk, iptables, shutdown 등)/boot부트리눅스의 부팅에 필요한 정보를 가진 파일들이 있는 디렉토리/dev디바이스시스템 장치 파일을 저장하는 디렉토리 (예: /dev/sda - 하드디스크, ..

인프라 2025.02.20

rhel 환경에서 PDF 용량 줄이기

Overviewrhel 환경에서 Chrome을 활용하여 html을 pdf 변환 하는 작업이 완료되었다. 하지만 변환된 파일이 기존 파일인 html 파일보다 최대 3~4배까지 용량이 늘어나는 현상이 있으므로 이걸 줄이는 방법을 알아보도록 하자.PDF 용량이 큰 이유HTML 파일이 PDF 파일로 변환 될 때 파일크기가 증가하는 이유는 여러가지가 있지만 크게 3가지로 정리할 수 있다Rendering Contents : HTML 페이지는 텍스트 기반의 코드로 구성되어 있지만, PDF 파일은 이를 완전한 페이지 이미지로 렌더링한다. 페이지에 CSS 스타일링, 복잡한 레이아웃, 폰트 임베딩 등 추가되면 파일의 크기가 커진다이미지 및 자원 : HTML 페이지에 포함된 이미지가 고해상도이거나 외부 자원을 사용하는 경우..

인프라 2025.02.18

Docker에서 rhel8.8 설치하기/rhel8.8 Container에 chrome headless 설치하기

Overviewrhel 환경에서 Chrome을 활용한 PDF 변환이 필요한 상황이 생겼다. 그에 대한 테스트로 도커 컨테이너 내부에 rhel을 설치하고, rhel 환경에서 chrome headless를 설치해보도록 하자, 그 다음 pdf 변환 테스트를 진행해보자Doker에 rhel8.8 설치하기도커를 사용하여 rhel 8.8환경의 컨테이너 설치를 먼저 해보자 Red Hat Container Catalog에서 사용 가능한 rhel 8.8의 이미지를 찾아본다.image를 찾아보면 최소화된 버전만 존재하는데, 이유는 컨테이너는 경량화를 목표로 사용하기 때문에 취지에 맞는 경량화 버전만 제공한다고 한다. 그래서 필요한 설정과 명령어들은 직접 설치를 해야한다.(dockerfile을 활용한 표준버전 설치도 가능하지..

인프라 2025.02.18

PM2 살펴보기

OverviewNode js로 제작한 홈페이지를 AWS 상에서 서버를 돌려야하는 상황이 생긴다면, 항상 관리를 수동으로 할 수는 없다. Node 진영에는 프로세스 매니저인 PM2가 존재하고 있으므로 이것을 살펴보고 실제 적용시키도록 하자.PM2가 필요한 이유?노드는 기본적으로 싱글 스레드로 동작한다. 노드 애플리케이션은 단일 CPU에서 돌아가기 때문에 CPU의 멀티코어 시스템은 사용할 수 없다. 싱글 스레드의 단점이 모든 코어를 사용하지 못해 최대 성능을 내지 못하는 경우가 생기는 것이다.그래서 노드는 클러스터 모듈을 통해 단일 프로세스를 멀티 프로세스로 늘리는 방법을 제공한다.하지만 클러스터를 사용하는 방법도 완벽하게 자동 매니지먼트가 되진 않는다. 따라서 이런 최적화 작업들을 직접 구현하는 것보다 솔..

인프라 2025.02.18

Offline에서 Docker 설치하기

저번에 yum repo를 오프라인에서 설치를 해보았다. 온라인 환경에서 컨테이너를 이미지로 만들어 오프라인 환경으로 옮긴 후 다시 컨테이너로 만들면 각종 프로그램들을 수월하게 사용할 수 있다고 생각한다. 이젠 docker를 설치해보자 (설치 환경은 RHEL 8.4) Docker docker는 왜 쓰는 걸까? docker는 실행 시점에 상관없이 구성 시점을 고정할 수 있다. 이것이 다른 서버 구성 도구와 가장 다른 부분이자 여러 서버를 똑같은 상태로 만들 수 있는 것이다. 넓게 보면 Docker는 TDD의 구조와 동일하다 TDD 순서 : 테스트 작성 → 테스트 실패 → 코드 작성/수정 → 테스트 성공 → 중복 코딩 리펙토링 → 반복 Docker 순서 : 도커파일 생성 → 도커이미지 생성 실패 → 도커파일 ..

인프라 2023.02.02

Offline에서 yum.repo local 설정

오프라인 환경에서 yum package를 사용하려고 한다. USB에 관련 파일을 담아 설정하는 방법으로 진행해보자 진행하기 전에 yum에 대해 먼저 알아본다. Yum yum yum이란 Yellodog Update Modified의 약자로 레드헷 계열의 리눅스 배포판에서 사용하는 패키지 설치관리 도구이다. 사용한다면 rpm명령어가 해결하지 못했던 패키지 의존성 문제를 해결할 수 있다. (참고로 발음은 냠냠 소리를 뜻하는 “염”이라고 한다…) 패키지 의존성 : A 패키지를 설치 시 B 패키지를 먼저 설치 해야하는 것. (필요한 패키지를 먼저 설치 다만, yum 명령어는 패키지 저장소 서버로 부터 다운 받아 설치하게 되므로 인터넷이 연결되어 있을 때 빛을 발한다. 하지만 현 상황은 offline에서 사용해야 ..

인프라 2023.02.01

Offline PC 에 RHEL 8.4 설치하기

금융회사들과 일을 하다보면 회사 내부망에서 일을 해야할 상황이 많다. 이러한 상황을 대비해서 오프라인 PC에 OS 설치해보고 사용 연습을 해보려한다. RHEL Red Hat Enterprise Linux의 약자로 상용시장을 위해 개발한 사용 오픈 소스 Linux 배포판이다. 설치방법이 여러가지가 있지만, 이 글에서는 백지상태의 PC에서 OS를 설치하는 방법을 소개한다. 설치 방법 RHEL iso 다운로드 Red Hat Enterprise Linux | Red Hat Developer A stable, proven foundation that’s versatile enough for rolling out new applications, virtualizing environments, and creating..

인프라 2023.01.27

CI/CD

Jenkins와 Docker 등 CI/CD Tool만 알고 개념적인 부분에서는 지식이 부족한 거 같아 한번 정리하면서 공부해 보려한다. CI/CD 개발 단계를 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법이다. 새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제를 해결하기 위한 좋은 방법이다. CI (Continuous Integration) 개발자를 위한 자동화 프로세스인 지속적인 통합을 의미한다. 제대로 구현되면 코드의 새로운 변경 사항이 정기적으로 빌드 및 테스트를 거쳐 공유 repository에 병합된다. 여러 개발자가 동시에 코드작업을 해도 충돌을 피할 수 있다. CI의 핵심 목표 버그를 신속하게 찾아 해결 소프트웨어의 품질 개선 새로운 업데이트의 검증 및 릴리즈 시간..

인프라 2023.01.10