차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 | ||
linuxfromscratch:12.1:145-systemd-255 [2024/05/27 12:25] – 만듦 - 바깥 편집 127.0.0.1 | linuxfromscratch:12.1:145-systemd-255 [2024/06/18 03:29] (현재) – [8.75.1. systemd 설치] baecy | ||
---|---|---|---|
줄 1: | 줄 1: | ||
+ | ^ Linux From Scratch - Version 12.1-systemd | ||
+ | ^ Chapter 8. Installing Basic System Software | ||
+ | |[[.: | ||
+ | |Jinja2-3.1.3 | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ===== 8.75. Systemd-255 ===== | ||
+ | |||
+ | systemd 패키지에는 시스템의 시작, 실행 및 종료를 제어하는 프로그램이 포함되어 있습니다. | ||
+ | |||
+ | * **빌드 시간:** 0.7 SBU | ||
+ | * **디스크 공간:** 247 MB | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ==== 8.75.1. systemd 설치 ==== | ||
+ | |||
+ | 기본 udev 규칙에서 불필요한 두 그룹인 // | ||
+ | |||
+ | <code bash> | ||
+ | sed -i -e ' | ||
+ | -e ' | ||
+ | </ | ||
+ | |||
+ | 이제 **systemd-resolved**의 DNSSEC 확인 보안 취약성과 인스턴스화된 systemd 장치에서 **systemd-analyze verify**을 실행하는 버그를 수정합니다. | ||
+ | |||
+ | <code bash> | ||
+ | patch -Np1 -i ../ | ||
+ | </ | ||
+ | |||
+ | systemd 컴파일을 준비합니다. | ||
+ | |||
+ | <code bash> | ||
+ | mkdir -p build | ||
+ | cd build | ||
+ | |||
+ | meson setup \ | ||
+ | --prefix=/ | ||
+ | --buildtype=release | ||
+ | -Ddefault-dnssec=no | ||
+ | -Dfirstboot=false | ||
+ | -Dinstall-tests=false | ||
+ | -Dldconfig=false | ||
+ | -Dsysusers=false | ||
+ | -Drpmmacrosdir=no | ||
+ | -Dhomed=disabled | ||
+ | -Duserdb=false | ||
+ | -Dman=disabled | ||
+ | -Dmode=release | ||
+ | -Dpamconfdir=no | ||
+ | -Ddev-kvm-mode=0660 | ||
+ | -Dnobody-group=nogroup | ||
+ | -Dsysupdate=disabled | ||
+ | -Dukify=disabled | ||
+ | -Ddocdir=/ | ||
+ | .. | ||
+ | </ | ||
+ | |||
+ | === meson 옵션의 의미 === | ||
+ | |||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | |||
+ | 패키지를 컴파일합니다. | ||
+ | |||
+ | <code bash> | ||
+ | ninja | ||
+ | </ | ||
+ | |||
+ | 패키지를 설치합니다: | ||
+ | |||
+ | <code bash> | ||
+ | ninja install | ||
+ | </ | ||
+ | |||
+ | 매뉴얼 페이지를 설치합니다: | ||
+ | |||
+ | <code bash> | ||
+ | tar -xf ../ | ||
+ | --no-same-owner --strip-components=1 | ||
+ | -C / | ||
+ | </ | ||
+ | |||
+ | **systemd-journald**에 필요한 ''/ | ||
+ | |||
+ | <code bash> | ||
+ | systemd-machine-id-setup | ||
+ | </ | ||
+ | |||
+ | 시스템에 대한 기본 설정을 합니다. | ||
+ | |||
+ | <code bash> | ||
+ | systemctl preset-all | ||
+ | </ | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ==== 8.75.2. Systemd 패키지 구성 ==== | ||
+ | |||
+ | * **설치된 프로그램: | ||
+ | * **설치된 라이브러리: | ||
+ | * **설치된 디렉터리: | ||
+ | |||
+ | === 간략한 설명=== | ||
+ | |||
+ | * **busctl** \\ D-Bus 버스를 인트로스펙트하고 모니터링하는 데 사용됩니다. | ||
+ | * **coredumpctl** \\ systemd 저널에서 코어 덤프를 검색하는 데 사용됩니다. | ||
+ | * **halt** \\ 실행 레벨이 0인 경우를 제외하고, | ||
+ | * **hostnamectl** \\ 시스템 호스트명 및 관련 설정을 쿼리하고 변경하는 데 사용됩니다. | ||
+ | * **init** \\ 커널이 하드웨어를 초기화한 후 처음 시작하는 프로세스로, | ||
+ | * **journalctl** \\ systemd 저널의 내용을 쿼리하는 데 사용됩니다. | ||
+ | * kernel-install \\ kernel과 initramfs 이미지를 /boot에 추가하고 제거하는 데 사용됩니다; | ||
+ | * **localectl** \\ 시스템 로케일 및 키보드 레이아웃 설정을 쿼리하고 변경하는 데 사용됩니다. | ||
+ | * **loginctl** \\ 시스템d 로그인 관리자의 상태를 조사하고 제어하는 데 사용됩니다. | ||
+ | * **machinectl** \\ systemd 가상 머신 및 컨테이너 등록 관리자의 상태를 조회하고 제어하는 데 사용된다. | ||
+ | * **networkctl** \\ systemd-networkd로 구성된 네트워크 링크의 상태를 조회하고 구성하는 데 사용된다. | ||
+ | * **oomctl** \\ systemd 메모리 부족 데몬을 제어한다. | ||
+ | * **portablectl** \\ 로컬 시스템에서 휴대용 서비스를 연결하거나 분리하는 데 사용됩니다. | ||
+ | * **poweroff** \\ 커널이 시스템을 중지하고 컴퓨터를 끄도록 지시합니다 (halt 참조). | ||
+ | * **reboot** \\ 커널에 시스템을 재부팅하도록 지시합니다 (halt 참조). | ||
+ | * **resolvconf** \\ DNS 서버 및 도메인 구성을 **systemd-resolved**로 등록합니다. | ||
+ | * **resolvectl** \\ 네트워크 이름 확인 관리자에게 제어 명령을 보내거나 도메인 이름, IPv4 및 IPv6 주소, DNS 레코드 및 서비스를 확인합니다. | ||
+ | * runlevel \\ '' | ||
+ | * **shutdown** \\ 시스템을 안전하게 종료하여 모든 프로세스에 신호를 보내고 로그인한 모든 사용자에게 알립니다. | ||
+ | * **systemctl** \\ systemd 시스템 및 서비스 관리자의 상태를 점검하고 제어하는 데 사용됩니다. | ||
+ | * **systemd-ac-power** \\ 시스템이 외부 전원에 연결되어 있는지 여부를 보고합니다. | ||
+ | * **systemd-analyze** \\ 시스템 시작 성능을 분석하고 문제가 있는 systemd 장치를 식별하는 데 사용됩니다. | ||
+ | * **systemd-ask-password** \\ Linux 명령줄에 지정된 메시지를 사용하여 사용자로부터 시스템 암호 또는 암호 구문을 쿼리하는 데 사용됩니다. | ||
+ | * **systemd-cat** \\ 프로세스의 STDOUT 및 STDERR 출력을 systemd 저널과 연결하는 데 사용됩니다. | ||
+ | * **systemd-cgls** \\ 선택한 리눅스 제어 그룹 계층 구조의 내용을 트리로 재귀적으로 표시합니다. | ||
+ | * **systemd-cgtop** \\ 로컬 리눅스 제어 그룹 계층 구조의 최상위 제어 그룹을 CPU, 메모리 및 디스크 I/O 로드 순서대로 표시합니다. | ||
+ | * **systemd-creds** \\ 자격 증명을 표시하고 처리합니다 | ||
+ | * **systemd-delta** \\ ''/ | ||
+ | * **systemd-detect-virt** \\ 시스템이 가상 환경에서 실행되고 있는지 여부를 감지하고 그에 따라 udev를 조정합니다. | ||
+ | * **systemd-dissect** \\ OS 디스크 이미지를 검사하는 데 사용됩니다. | ||
+ | * **systemd-escape** \\ systemd 유닛 이름에 포함할 문자열을 이스케이프하는 데 사용됩니다. | ||
+ | * **systemd-hwdb** \\ 하드웨어 데이터베이스(hwdb)를 관리하는 데 사용됩니다. | ||
+ | * **systemd-id128** \\ id128(UUID) 문자열을 생성하고 출력합니다. | ||
+ | * **systemd-inhibit** \\ 종료, 절전 또는 유휴 억제 잠금이 적용된 프로그램을 실행하는 데 사용되며, | ||
+ | * **systemd-machine-id-setup** \\ 시스템 설치 도구에서 설치 시 ''/ | ||
+ | * **systemd-mount** \\ 디스크를 일시적으로 마운트하거나 자동 마운트하는 데 사용됩니다. | ||
+ | * **systemd-notify** \\ 데몬 스크립트가 초기화 시스템에 상태 변경 사항을 알리기 위해 사용합니다. | ||
+ | * **systemd-nspawn** \\ 경량 네임스페이스 컨테이너에서 명령 또는 전체 OS를 실행하는 데 사용됩니다. | ||
+ | * **systemd-path** \\ 시스템 및 사용자 경로를 쿼리하는 데 사용됩니다. | ||
+ | * **systemd-repart** \\ systemd가 OS 이미지(예: | ||
+ | * **systemd-resolve** \\ 도메인 이름, IPV4 및 IPv6 주소, DNS 리소스 레코드 및 서비스를 확인하는 데 사용됩니다. | ||
+ | * **systemd-run** \\ 임시 .service 또는 .scope 단위를 생성 및 시작하고 그 안에서 지정된 명령을 실행하는 데 사용되며, | ||
+ | * **systemd-socket-activate** \\ 소켓 장치에서 수신 대기하고 소켓에 성공적으로 연결되면 프로세스를 시작하는 데 사용됩니다. | ||
+ | * **systemd-sysext** \\ 시스템 확장 이미지를 활성화합니다 | ||
+ | * **systemd-tmpfiles** \\ '' | ||
+ | * **systemd-umount** \\ 마운트 지점을 마운트 해제합니다. | ||
+ | * **systemd-tty-ask-password-agent** \\ 보류 중인 systemd 암호 요청을 나열 또는 처리하는 데 사용됩니다. | ||
+ | * **telinit** \\ init에 변경할 실행 수준을 알려줍니다. | ||
+ | * **timedatectl** \\ 시스템 시계와 그 설정을 쿼리하고 변경하는 데 사용됩니다. | ||
+ | * **udevadm** \\ udevd 데몬을 제어하고, | ||
+ | * libsystemd \\ 메인 시스템드 유틸리티 라이브러리입니다. | ||
+ | * libudev \\ Udev 디바이스 정보에 액세스하는 라이브러리입니다. |