우리는 일반 사용자로 로그인해 있으면서, 어떤 X 응용 프로그램을
루트로서 실행시킬 필요가 있다. 아마 우리는 단순히 커널을
(xterm 실행 중) $ su - Password: # xlogo -render Xlib: connection to ":0.0" refused by server Xlib: No protocol specified Error: Can't open display: :0.0
우리에게 다행스럽게도, 이것을 할 수 있는 몇몇 방법들이 있다. 제안 중 몇몇은 안전하지 않은 해킹에 불과하기 때문에, 여러분은 어느 것이 여러분의 요구에 가장 적합한지를 결정해야만 한다.
이런 곳에 경고가 없다면 이런 문서가 왜 존재하겠는가? 우리는 시작하기 전에 몇몇 경고와 문제점을 간단히 다룰 것이다.
일반적으로 X를 루트(수퍼유저)로서 실행하는 것은 나쁜 생각이다. 심지어 X 프로그램을 루트로서 실행하는 것도 뜨거운 논쟁거리이다.
X를 루트로 실행하는 것은 다음 위험과 관련이 있다.
이들의 대부분이 적절하지 않게 설정된 X 시스템에서 발생하지만, X를 루트로서 실행하는 것은 여전히 나쁜 생각이다.
X를 루트로 실행하는 잘못은 대개 리눅스를 처음 쓰는 사용자들이 저지른다.
예를 들어 살펴 보자. 나는 젠투 IRC 채널을 일주일에 몇 번 정도 방문해서
X를 루트로 실행하는 사람들이 있는지 확인하는 습관을 들였다.
거의 언제나 내 채널의 방문자 중에는 루트 사용자로서 IRC에 연결하는
사람들이 있었다. 보안 위험에 대해 말해 보자! 사용자가 연결할 때 쓰는
클라이언트에 따라 나는 더럽고 나쁜 짓을 할 수 있다.
예를 들어 나는 그들에게
#!/bin/sh logout
이제 사용자가 DCC 전송 자동 시작 기능을 켜 놓았다면 어떻게 될까?
사용자가 기본 사용자 디렉토리를
상상력이 너무 풍부한 것 같은가? 생각해 보라! 이것은 왜 루트를 사용하는 것이 좋지 않은가에 대한 많은 예들 중 단 하나에 불과하다. 이제 내부 작업과 X의 복잡도도 생각해 보면 여러분은 우리의 딜레마를 알 수 있을 것이다.
Sux는
Sux의 설치는 emerge 만큼이나 쉽다!
# emerge x11-misc/sux
다음은 Sux의 사용의 몇 예이다.
$ sux -c /usr/bin/X11/xlogo -render Password:(루트 비밀번호를 입력하고 엔터를 누르라)
$ sux - Password:(루트 비밀번호를 입력하고 엔터를 누르라) # xlogo -render
KDE 사용자들은 또 다른 선택이 있다.
# kdesu -c "/usr/bin/X11/xlogo -render"(여러분은 diffuser와 같은 다른 사용자를 지정할 수도 있다) # kdesu -u diffuser -c "/usr/bin/X11/xlogo -render"
# kdesu /usr/bin/X11/xlogo(여러분은 diffuser와 같은 다른 사용자를 지정할 수도 있다) # kdesu -u diffuser /usr/bin/X11/xlogo
위의 작업을 수행하는 수 많은 다른 방법들이 있지만, 나는 위의 방법들이 가장 쉽다고 생각한다.
여러분이 도움을 받았으면 좋겠고 여러분의 새로운 지식과 함께 행운을 빈다.