Làm cách nào tôi có thể chạy / usr / bin / Xorg mà không cần sudo?


8

Câu hỏi này là về việc thực thi /usr/bin/Xorgtrực tiếp trên Ubuntu 14.04.

Và tôi biết rằng có tồn tại Xdummy, nhưng tôi không thể làm cho trình điều khiển giả hoạt động đúng với GPU nvidia để nó không phải là một tùy chọn.

Tôi sao chép toàn hệ thống xorg.conf/usr/lib/xorg/modules, và sửa đổi chúng một chút. (Được chỉ định ModulePathtrong tôi xorg.confquá)

Chạy lệnh sau khi root hoạt động tốt:

Xorg -noreset +extension GLX +extension RANDR +extension RENDER -logfile ./16.log -config ./xorg.conf :16

Nhưng nếu tôi làm điều đó với tư cách là người dùng không root (quyền truy cập tệp nhật ký là OK) thì lỗi này xảy ra:

(EE) 
Fatal server error:
(EE) xf86OpenConsole: Cannot open virtual console 9 (Permission denied)
(EE) 
(EE) 
Please consult the The X.Org Foundation support 
     at http://wiki.x.org
 for help. 
(EE) Please also check the log file at "./16.log" for additional information.
(EE) 
(EE) Server terminated with error (1). Closing log file.

Bạn có thể vui lòng giúp tôi chạy Xorg mà không cần sudo ??


Tôi không nghĩ rằng có thể chạy X là không root; nó cần truy cập trực tiếp vào nhiều thứ phần cứng và hệ thống.
dirkt

3
thiết lập setuidbit trên Xorg:chmod +s $(which Xorg)
Serge

@dirkt Có thể trên các hệ thống gần đây nhưng không phải với tất cả các trình điều khiển. Xem ví dụ: Ubuntu , Debian , Fedora , Gentoo , Arch ,
Mạnh

Cảm ơn các bạn! Có vẻ như lời khuyên của bạn đã làm việc cho tôi!
noname

Câu trả lời:


5

Để xác định ai được phép chạy X cấu hình nó với

dpkg-reconfigure x11-common

Có ba tùy chọn: chỉ root, chỉ người dùng console hoặc bất kỳ ai. Các mục được đặt tại /etc/X11/Xwrapper.config.


Vì Debian 9 và Ubuntu 16.04, tập tin này không tồn tại. Sau khi cài đặt xserver-xorg-legacy, tập tin sẽ xuất hiện lại và nội dung của nó phải được thay đổi từ:

allowed_users=console

đến:

allowed_users=anybody
needs_root_rights=yes

Bạn cũng cần chỉ định thiết bị đầu cuối ảo để sử dụng khi bắt đầu X, nếu không, có thể xảy ra lỗi. Ví dụ:

Xorg :8 vt8

3

X cần truy cập vào các thiết bị đầu vào (chuột và bàn phím) và màn hình và card đồ họa để xuất.

Để đạt được điều này cho X không root, bạn có thể thay đổi nhóm Xorgtừ rootđến input, đặt bit setgit và thêm người dùng của bạn vào nhóm video:

chown root:input /usr/lib/xorg/Xorg
chmod g+s /usr/lib/xorg/Xorg
adduser YOURUSERNAME video

(Thay vào đó, bạn có thể thêm người dùng của mình vào cả hai videoinput, nhưng điều đó không được khuyến khích. Một người dùng trong nhóm inputcó thể theo dõi đầu vào của người dùng khác. Ví dụ: GUI trong X có thể do thám mật khẩu gốc được nhập vào console / tty.)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.