아무도 Chromium을 실행하지 마세요.

아무도 Chromium을 실행하지 마세요.

도대체 어떻게 Chromium을 무인 사용자로 실행할 수 있나요? 선택된 실패(Openbox에서):

su nobody chromium

이 계정은 현재 사용할 수 없습니다

sudo -u nobody chromium

[0316/203558.490760: 치명적: chrome_main_delegate.cc(442)] 확인 실패: process_type.empty(). 프로세스 유형에 대한 사용자 데이터 디렉터리를 가져올 수 없습니다: zygote...

sudo -u nobody chromium --user-data-dir=/root

프로토콜이 지정되지 않았습니다.

[595:595:0316/203827.174040: 오류: browser_main_loop.cc (279)] Gtk: 디스플레이를 열 수 없습니다: :0

sudo -u nobody chromium --user-data-dir=/home

프로토콜이 지정되지 않았습니다.

[615:615:0316/203909.792019: 오류: browser_main_loop.cc(279)] Gtk: 디스플레이를 열 수 없습니다: :0

내 사양:

Linux 아치 4.10.1-1-ARCH #1 SMP PREEMPT Sun Feb 26 21:08:53 UTC 2017 x86_64 GNU/Linux Chromium 57.0.2987.98

cat /etc/passwd:
...
nobody:x:99:99:nobody:/:/usr/bin/nologin
...

나는 Chromium을 루트로 실행하지 않는 것이 강력히 권장되고 Chromium을 실행하기 위해 사용자를 만드는 것이 어리석은 것처럼 보이기 때문에 누구도 좋아하지 않습니다.

고쳐 쓰다:

xhost local:root; su -pc 'env -i DISPLAY="${DISPLAY}" chromium' nobody

X 세션에서 루트로 실행일하다( X 서버에 루트로 로컬 연결을 설정하려는 경우 local:root보다 훨씬 안전합니다 +.) 그래도 두 가지 오류가 있습니다.

액세스할 수 없는 홈 디렉터리: 권한이 거부되었습니다. [629:629:0323/170000.968320:ERROR:child_thread_impl.cc(762)] 알 수 없는 채널 연결 인터페이스 요청: ui::mojom::GpuMain

먼저 없애라

mkdir /home/nobody; chown -R nobody:nobody /home/nobody; su -pc 'env -i DISPLAY="${DISPLAY}" HOME=/home/nobody chromium' nobody

답변1

현재 세션이 시작된 사용자로 X:

$ xhost +
$ su - -c "DISPLAY=\"${DISPLAY}\" /bin/sh"

첫 번째 단계 xhost +는 모든 사용자가 현재 X세션 에 연결할 수 있도록 허용하는 것입니다 1 . 이미 root2 인 경우 두 번째 단계는 필요하지 않습니다. 다음으로 다음으로 변경 nobody하고 실행합니다 chromium.

# su -p -c "env -i DISPLAY=\"${DISPLAY}\" chromium" nobody

환경을 보호 -p하고 잠긴 사용자가 "로그인"할 수 있도록 허용하십시오. 그런 다음 env -i환경을 청소하면 더 안전할 수도 있지만 원하는 것일 수도 있고 아닐 수도 있습니다.


1 다른 특정 사용자에게만 액세스 권한을 부여하는 방법이 있다고 가정하는데 그것이 무엇인지 모르겠습니다.
2root 일반적인 관행은 일반적인 일상 활동을 위한 비계정을 만들고 root관리 작업용으로만 전환하는 것입니다.

관련 정보