권한 및 소유권 – Linux Foundation for DevOps

발행: (2025년 12월 26일 오전 04:05 GMT+9)
8 min read
원문: Dev.to

I’m sorry, but I don’t have access to the content of the article at the link you provided. If you can paste the text you’d like translated here, I’ll be happy to translate it into Korean while preserving the formatting and technical terms as requested.

소개

DevOps 역할을 준비하는 사람으로서, 저는 lean 접근법으로 Linux를 배우고 있습니다 — 실제 서버를 운영하고 디버깅하는 데 필요한 것만 집중합니다.

이 글에서는 권한 및 소유권을 다루며, DevOps 관점에서 핸즈‑온 시연을 포함합니다 (YouTube 재생목록은 여기에서 확인하세요).

Objective

Linux 파일 permissions and ownership이(가) 어떻게 작동하는지 배우고, 서버, 컨테이너 및 CI 환경에서 실수로 애플리케이션을 손상시키거나 접근을 차단하지 않도록 안전하게 작업할 수 있습니다.

DevOps에 왜 중요한가

  • Linux 서버에 애플리케이션 배포
  • 파일 접근이 필요한 컨테이너 실행
  • CI/CD 파이프라인에서 “permission denied” 오류 수정
  • 구성 파일, SSH 키 및 스크립트 보안

권한이 잘못되면 시스템이 조용히 또는 위험하게 실패합니다.

Scope

Included

  • rwx 권한 및 숫자 모드(755, 644)
  • chmod, chown, chgrp
  • user, group, others
  • 기본 sudo 사용법

Explicitly excluded (for now)

  • ACLs
  • SELinux / AppArmor
  • 고급 Linux 보안 모델

Minimum Required Concepts

ConceptPurpose
rwx (read, write, execute)파일을 열고, 수정하고, 실행할 수 있는 사람을 제어합니다.
user / group / others권한이 적용되는 대상을 정의합니다.
chmod파일 및 디렉터리 권한을 변경합니다.
chown파일 소유자를 변경합니다.
chgrp파일 그룹을 변경합니다.
Numeric modes (755, 644)스크립트와 CI에서 권한을 빠르게 설정하는 방법입니다.
sudo명령을 루트 권한으로 안전하게 실행합니다.

실용적인 사용법 (로컬 환경)

오늘날 실천 방법:

  • 파일을 생성하고 권한을 변경하기
  • 스크립트 실행을 차단하고 허용하기
  • 사용자 간 파일 소유권 변경하기
  • sudo를 사용해 보호된 파일을 수정하기
  • permission denied 오류를 재현하고 해결하기

모든 작업은 로컬 Linux 머신 또는 VM에서 수행됩니다.

데모

방향 — rwx, 사용자, 그룹, 기타

  • 소유권(사용자, 그룹, 기타)과 해당 권한(rwx)을 표시합니다.
  • ls -l을 사용하여 현재 디렉터리의 권한을 확인합니다.
  • file 명령으로 파일 유형을 식별하고 소유자, 그룹, 기타에 대한 권한을 검사합니다.

숫자 모드

숫자 값을 설명합니다:

  • 7rwx
  • 6rw-
  • 5r-x
  • 4r--
  • 3-wx
  • 2-w-
  • 1--x

stat을 사용하여 숫자 모드와 사람이 읽을 수 있는 권한을 함께 표시합니다.

접근 차단 및 복구 — chmod

  • 스크립트 파일을 만들고 nano로 편집한 뒤 명령을 추가하고 실행을 시도합니다.
  • break라는 디렉터리를 만들고 실행(x) 권한을 제거한 뒤 영향을 관찰합니다.

소유권 — chown

  • 스크립트 파일의 소유자를 root로 변경합니다.
  • 파일을 실행했을 때 발생하는 일과 그 이유(동작 여부)를 설명합니다.

그룹 — chgrp

  • 스크립트 파일의 그룹을 root로 변경합니다.
  • 그룹 권한이 충분하지 않을 때 실행이 실패할 수 있는 이유를 설명합니다.

sudo 기본

  • sudo를 사용하여 읽기, 쓰기, 실행 작업을 수행합니다.
  • 결과와 파일 권한을 변경하지 않고 sudo가 실행에 어떤 영향을 미치는지 설명합니다.

운영 신뢰 (현재 상태)

After completing these demos, you should be able to:

  • -rwxr-xr--와 같은 권한 문자열을 해석하여 정확히 누가 무엇을 할 수 있는지 알 수 있다.
  • 파일의 모드에 따라 실행하기 전에 파일이 어떻게 동작할지 예측할 수 있다.
  • chmod를 사용하여 실행을 중단하고 복구하도록 의도적으로 조작할 수 있다.
  • chown으로 소유자를 변경하고 그 영향이 실행에 어떻게 미치는지 이해한다.
  • chgrp을 사용해 그룹 멤버십을 통해 접근을 제한하거나 허용한다.
  • 필요할 때 sudo를 사용해 권한을 우회하고 추측 없이 작업한다.

DevOps 시나리오 (미래 지향)

이러한 동작은 다음과 같은 실제 DevOps 실패와 직접적으로 연결됩니다:

  • 빌드 스크립트에 +x 플래그가 없어 CI/CD 파이프라인이 실패함.
  • 마운트된 볼륨이 root 소유라서 Docker 컨테이너가 충돌함.
  • 설정 파일의 그룹 소유권이 잘못되어 웹 서버가 403 오류를 반환함.
  • 권한이 너무 넓게 설정돼 SSH가 키 사용을 거부함.
  • 소유권이 실수로 변경돼 클라우드 VM 설정 스크립트가 실패함.

메모 및 관찰

  • Permission denied는 거의 항상 잘못된 소유자이거나 x가 없음을 의미합니다.
  • r는 있지만 x가 없는 파일은 읽을 수는 있지만 실행할 수 없습니다.
  • 소유자를 root로 변경하면 실행이 조용히 차단되거나 허용될 수 있습니다.
  • 그룹 소유권은 그룹 권한이 허용할 때만 의미가 있습니다.
  • sudo는 파일 권한을 변경하지 않으며, 누가 명령을 실행하는지를 변경합니다.

상태 및 다음 단계

현재 상태: ⏳ 활성

다음 작업 카드: 사용자 및 그룹

작고 검증된 진행이 넓고 검증되지 않은 지식보다 낫다.

Back to Blog

관련 글

더 보기 »

Friday Five — 2026년 1월 16일

Red Hat Summit 등록이 이제 열렸습니다—2026년 조지아주 애틀랜타에서 열리는 Red Hat Summit을 위해. 올해 행사는 ...