시스템 전체의 PulseAudio 데몬을 생성하려고 합니다.(나는 이것과 관련된 보안 문제를 알고 있습니다). 그러나 PulseAudio 데몬을 통해 루트로 플레이하면 액세스 거부 오류가 발생합니다. 아마도 루트 사용자가 pulse-access 그룹에 속하지 않기 때문인 것 같습니다.
나는 그것을 추가하려고 시도했습니다 :
adduser root pulse-access
불행하게도 이 오류가 다시 발생합니다.
addgroup: group 'root' in use
저는 고급 useradd 등의 명령이 없는 작은 BusyBox에서 실행 중입니다.
이 두 명령에만 액세스할 수 있는 특정 그룹에 사용자를 추가할 수 없는 이유는 무엇이며 어떻게 할 수 있습니까?
PulseAudio를 시스템 전체 데몬으로 실행 https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/
답변1
BusyBox는 FEATURE_ADDUSER_TO_GROUP을 비활성화한 상태로 컴파일할 수 있습니다(buildroot-2017.08의 기본 동작). 이 경우 addgroup 또는 adduser를 그룹에 추가할 수 없습니다. 적어도 이론상으로는 이 기능을 활성화해도 여전히 동일한 오류가 발생하기 때문입니다.
간단한 해결책: /etc/group을 직접 편집한 다음 사용자를 직접 추가하세요. 예를 들어:
pulse-access:x:1003:pulse,root
빌드루트 빌드에 대해 이 작업을 수행할 때 fakeroot 스크립트 단계에 다음을 추가할 수 있습니다.
# Add root user to pulse-access group
if [ -e ${TARGET_DIR}/etc/group ]; then
sed -i '/^pulse-access:/s/\(.*\)/\1,root/;s/:,/:/' ${TARGET_DIR}/etc/group
fi