루트 액세스로 Ubuntu 18.04에서 그래픽 애플리케이션 사용

루트 액세스로 Ubuntu 18.04에서 그래픽 애플리케이션 사용

Ubuntu 18.04로 업그레이드한 이후 더 이상 다음을 수행할 수 없습니다.

sudo su -

gparted

이제 루트는 Display:0에 액세스할 수 없고 아직 해결책을 찾지 못했기 때문입니다.

이 문제를 해결하는 방법을 아는 사람이 있나요?

gparted로는 괜찮은데, 다른 프로그램을 사용하면 같은 일을 하는 다른 프로그램이 없어서 전혀 작동하지 않습니다. 나는 루트로 모든 것을 시작하는 방법을 알고 있기 때문에 루트로 시작하고 싶지 않습니다.

답변1

kdesudo, gsudo(제 생각엔) 그리고 몇 가지 더요.

아니면 복사해서 쓰셔도 됩니다~/bin/xsudo

#!/bin/bash

inner() {
    su  - "$user" -c "xauth list" |
        grep "$(echo "$display" |
                cut -d ':' -f 2 |
                cut -d '.' -f 1 |
                sed -e s/^/:/ ) " |
        xargs -n 3 xauth add &&
        "$@"
}

if [ "$1" = "---innermode" ]
then
    shift
    user="$1"
    display="$2"
    shift 2
    inner "$@"
else
    self="$0"
    sudo "${self}" ---innermode "$USER" "$DISPLAY" "$@"
fi

답변2

pkexecGUI 응용 프로그램을 루트로 실행할 수 있습니다 .

$ pkexec gparted

또는:

$ pkexec bash
# gparted

pkexec인증을 위해 PolicyKit을 사용하므로 사용자가 이를 사용할 수 있도록 하려면 PolicyKit을 설치해야 할 수도 있습니다 pkexec.매뉴얼 페이지라이센스에 대한 자세한 내용.

답변3

sudo 권한이 있는 일반 사용자로 X 세션에 로그인한 경우 터미널을 열고 사용하면 sudo gparted제대로 작동합니다.

su명령은 다르게 동작하며 다른 사용자가 되어 특정 명령을 실행할 수는 있지만 X 서버에 대한 연결은 차단합니다.

관련 정보