솔루션
Wayland에서는 높은 권한 (sudo -H, gksu ...)으로 GUI 응용 프로그램을 실행하기가 어려운 경우가 많습니다. 명령 행 도구를 사용하여 이러한 작업을 수행하는 것이 좋습니다.
그러나 GUI 도구가있는 경우 잘 작동하고 높은 권한이 필요한 해결 방법이 있습니다. (나는 Synaptic Package Manager synaptic
와 파티션 도구 Gparted와 같은 두 가지 표준 도구를 gparted
사용합니다. MakeUSB를 사용하여 USB 부팅 드라이브를 만들지 mkusb
만 그래픽없이 높은 권한이 필요한 부분을 실행할 수 있습니다.)
xhost
과 sudo -H
Wayland에서 로그인 한 사용자가 아닌 다른 사용자가 그래픽 응용 프로그램을 소유 할 수있는 해결 방법이 있습니다.
xhost +si:localuser:root
gksu
및 gksudo
표준 우분투 함께 번들로 제공되지 않으며, 여기에 작동하지 않습니다,하지만 그들은으로 Xorg에서 작동합니다.
대신에 당신은 사용할 수 있습니다
sudo -H
나중에 로그인 한 사용자가 아닌 다른 사용자가 그래픽 응용 프로그램을 소유하지 못하도록하는 것이 좋습니다.
xhost -si:localuser:root
GVFS 관리자 백엔드
Ubuntu 17.10 (gvfs> = 1.29.4)에서는 gvfs admin 백엔드를 사용할 수 있습니다. 전체 경로가 필요합니다.
gedit admin:///path/to/file
이론적으로, (폴킷를 사용)를 GVFS 관리 백엔드 방법은 더 나은과 (보다 안전 xhost
하고 xudo -H
에 관계없이 사용하는 UI의).
전체 응용 프로그램을 루트로 실행하지 않습니다. 권한 상승은 반드시 필요한 경우에만 발생합니다. 다음 링크 및 링크를 참조하십시오.
노틸러스 관리자
nautilus-admin
상승 된 권한을 가진 파일 작업 및 상승 된 권한 을 사용 하는 것도 가능합니다 gedit
. 이것은 다음 AskUbuntu 답변에 설명되어 있습니다.
기능을 통해 Wayland 데스크탑에 루트에 대한 임시 액세스 gks
피하십시오 sudo GUI-program
. 시스템이 일반 사용자 ID의 구성 파일을의 구성으로 겹쳐 쓰고 일반 사용자 ID root
에 맞게 소유권과 권한을 설정하는 소유권과 권한을 설정할 root
수 있습니다. sudo -H
구성 파일을 root
홈 디렉토리 에 쓰는 GUI 응용 프로그램을 실행해야합니다 /root
. 예:
sudo -H gedit myfile.txt
그러나 잊어 버릴 위험이 있습니다 -H
. 대신 함수를 만들 수 있습니다 (예 :gks
gks () { xhost +si:localuser:root; sudo -H "$@"; xhost -si:localuser:root; }
~/.bashrc
별칭 근처에 저장하십시오 . 그럼 당신은 실행할 수 있습니다
gks gedit myfile.txt
당신이 사용하는 방법과 유사한 방법으로 gksudo
전에.
테스팅
당신은 어떻게 확인할 수 있습니다 sudo
, sudo -H
그리고 gks
작업 다음 명령을
sudodus@xenial32 ~ $ sudo bash -c "echo ~"
/home/sudodus
sudodus@xenial32 ~ $ sudo -H bash -c "echo ~"
/root
sudodus@xenial32 ~ $ gks () { xhost +si:localuser:root; sudo -H "$@"; xhost -si:localuser:root; }
sudodus@xenial32 ~ $ gks bash -c "echo ~"
localuser:root being added to access control list
/root
localuser:root being removed from access control list
sudodus@xenial32 ~ $
그리고 물론
gks gedit myfile.txt
이전 섹션의 예에 따라.
Alt-F2 및 Gnome Shell 메뉴를 통해 작동하는 방법
에 간단한 한 줄 함수를 추가하는 대신 ~/.bashrc
bash 없이도 작동하는 시스템을 만들 수 있습니다. 사용하기 편리하지만 설정이 더 복잡합니다. 한 줄 기능은이보다 복잡한 시스템 사용을 방해하므로 대안 중 하나만 설치해야합니다.
세 개의 파일
쉘 스크립트 gks
:
#!/bin/bash
xhost +si:localuser:root
if [ $# -eq 0 ]
then
xterm -T "gks console - enter command and password" \
-fa default -fs 14 -geometry 60x4 \
-e bash -c 'echo "gks lets you run command lines with GUI programs
with temporary elevated permissions in Wayland."; \
read -p "Enter command: " cmd; \
cmdfile=$(mktemp); echo "$cmd" > "$cmdfile"; \
sudo -H bash "$cmdfile"; rm "$cmdfile"'
else
xterm -T "gks console - enter password" -fa default -fs 14 -geometry 60x4 -e sudo -H "$@"
fi
xhost -si:localuser:root;
데스크탑 파일 gks.desktop
:
[Desktop Entry]
Version=1.0
Categories=Application;System;
Type=Application
Name=gks
Description=Run program with temporary elevated permissions in Wayland
Comment=Run program with temporary elevated permissions in Wayland
Exec=gks %f
Icon=/usr/share/icons/gks.svg
Terminal=false
StartupNotify=false
GenericName[en_US.UTF-8]=Run program with temporary elevated permissions in Wayland
아이콘 파일 gks.svg
은 다음과 같습니다.
이 링크에서 아이콘 파일 또는 3 개의 파일이 모두 포함 된 타르볼을 다운로드 할 수 있습니다.
wiki.ubuntu.com/Wayland/gks
[추출 또는 복사 및 붙여 넣기] 파일을 다음 위치에 복사하십시오.
sudo cp gks /usr/bin
sudo cp gks.desktop /usr/share/applications/
sudo cp gks.svg /usr/share/icons
로그 아웃 / 로그인 또는 재부팅하면 바탕 화면 아이콘이 작동해야합니다. 함수가있는 간단한 솔루션과 같은 터미널 창에서 작동합니다.
Alt F2 상자:
그놈 쉘 메뉴 :
gks 콘솔 및 gparted :
사용자 정의 스크립트 및 데스크탑 파일
높은 권한이 필요한 GUI 응용 프로그램이 거의없는 경우 사용자 지정 스크립트와 데스크톱 파일을 만들 수 있으며 명령 (응용 프로그램 이름)을 입력하지 않아도됩니다. 암호 만 입력하면 이전 버전의 Ubuntu와 비교하여 어렵지 않습니다 (어쨌든 암호를 입력해야합니다).
xlogo
프로그램 패키지와 함께 제공 되는 간단한 GUI 프로그램의 예 x11-apps
:
쉘 스크립트 gkslogo
(와 비교하여 단순화 됨 gks
)
#!/bin/bash
xhost +si:localuser:root
xterm -T "gks console - enter password" -fa default -fs 14 -geometry 60x4 -e sudo -H xlogo
xhost -si:localuser:root;
데스크탑 파일 gkslogo.desktop
:
[Desktop Entry]
Version=1.0
Categories=Application;System;
Type=Application
Name=gkslogo
Description=Run program with temporary elevated permissions in Wayland
Comment=Run program with temporary elevated permissions in Wayland
Exec=gkslogo
Icon=/usr/share/icons/gks.svg
Terminal=false
StartupNotify=false
GenericName[en_US.UTF-8]=Run program with temporary elevated permissions in Wayland
게으르고 같은 아이콘 파일을 사용했습니다. gks.svg
[복사하여 붙여 넣기] 파일을 다음 위치에 복사하십시오.
sudo cp gkslogo /usr/bin
sudo cp gkslogo.desktop /usr/share/applications/
gks [logo] 콘솔 및 xlogo :
gksudo
Wayland 세션 에서 작동하지 않는 경우 Xorg 세션으로 전환하여 시도 할 수 있습니다 .