Podman으로 rootless 컨테이너 운영하기 — UID 매핑, 볼륨 권한, Pod, Quadlet

Docker는 root 권한으로 도는 dockerd 데몬에 명령을 보내는 구조라서, docker 그룹에 사용자를 넣는 순간 그 사용자는 사실상 root가 된다. docker run -v /:/host로 호스트 파일시스템 전체를 마운트할 수 있기 때문이다.…

Continue ReadingPodman으로 rootless 컨테이너 운영하기 — UID 매핑, 볼륨 권한, Pod, Quadlet

QEMU(arm64) 임베디드 리눅스 타깃 만들기 (4) — 루트 파일 시스템과 패키지 설치

3편에서 커널이 ext4 루트를 마운트하는 데까지 갔지만 그 안이 mkfs 직후 상태라 No working init found로 멈췄다. 이제 그 빈 파티션을 채운다. 두 단계로 간다. 먼저 BusyBox 하나로 셸이 뜨는…

Continue ReadingQEMU(arm64) 임베디드 리눅스 타깃 만들기 (4) — 루트 파일 시스템과 패키지 설치

Ubuntu 24.04에서 udev 규칙 작성하기 — 장치 심볼릭 링크부터 이벤트 실행까지

USB 디스크를 두 개 꽂으면 /dev/sdb와 /dev/sdc가 부팅마다 뒤바뀐다. 특정 시리얼 장치에만 권한을 열어주고 싶은데 chmod는 재부팅하면 원래대로 돌아간다. 둘 다 udev 규칙으로 푸는 문제다. udev는 커널이 올린 uevent를 받아…

Continue ReadingUbuntu 24.04에서 udev 규칙 작성하기 — 장치 심볼릭 링크부터 이벤트 실행까지

systemd 서비스 유닛 파일 작성 실전 예제

서버에서 상시 실행되는 스크립트나 데몬을 만들 때 가장 흔한 실수는 nohup ./script.sh &나 crontab의 @reboot 항목으로 급하게 띄우는 것이다. 이런 방식은 서버가 재부팅되거나 프로세스가 죽었을 때 아무도 재시작해주지 않고, 로그는…

Continue Readingsystemd 서비스 유닛 파일 작성 실전 예제