Làm cách nào tôi có thể bắt đầu phiên 'màn hình' với tư cách là người dùng không root


11

Có cách nào để tôi có thể mở phiên 'màn hình' mới trên hộp RHEL của mình với tư cách là người dùng không root? Khi tôi cố mở một màn hình mới bằng lệnh 'screen' với tư cách là người dùng không phải root, nó sẽ thất bại và tôi nhận được thông báo sau:

Cannot open your terminal '/dev/pts/2' - please check.

Tôi đã nghiên cứu một chút và thấy mọi người đề nghị thay đổi quyền trên / dev / pts để cấp cho người dùng không root (người đang cố mở màn hình) quyền truy cập đọc / ghi. Mặc dù nó có thể hoạt động, nó không giống như một giải pháp gọn gàng. Có cách nào 'hợp pháp' cho phép người dùng không root để mở phiên màn hình không?

Đã chỉnh sửa: Tôi gặp sự cố này trên các máy RHEL 5.5, 6.2 và 6.5 của mình. Phiên bản màn hình trên tất cả các hộp này là 'Phiên bản màn hình 4,00,03 (FAU) ngày 23 tháng 10 năm 06'.

Tái bút: - Tôi biết rằng tôi có thể mở phiên màn hình dưới dạng root và 'su' để bắt đầu lệnh / tiến trình của mình, nhưng đó không phải là điều tôi đang tìm kiếm.

Câu trả lời:


7

Đây là một vấn đề đã biết, nếu bạn ssh là root ở đâu đó và sau đó sutrở thành người dùng bình thường:

$ ssh root@server
# su -l anthon
$ screen 
Cannot open your terminal '/dev/pts/3' - please check.

Đó là ví dụ được mô tả trong các bài viết này từ năm 2005

Giải pháp là đăng nhập trực tiếp với tư cách là người dùng mà bạn muốn screenphiên chạy.


Tôi đăng nhập như người dùng bình thường. Vẫn không thể chạy screen.
codezombie

Có thể screenkhông được cài đặt trên hệ thống của bạn hoặc một số lý do không xác định khác gây ra điều đó. Không thể nói. Bạn nên đăng một câu hỏi mới (có nhiều thông tin hơn) và xóa bình luận của bạn.
Anthon

VPS được quản lý và bộ phận hỗ trợ cho biết nó không được hỗ trợ trên các hệ thống được quản lý. Tôi có thể sử dụng nhị phân sẵn sàng của màn hình hay không?
codezombie

1
Phần nào của bạn nên đăng một câu hỏi mới mà bạn không hiểu? Bình luận không phải để đăng câu hỏi và câu trả lời. Thở dài .... screenchạy như root (sử dụng setuid), vì vậy nếu bạn có thể sắp xếp nó trên hệ thống được quản lý của mình, chỉ cần cài đặt nhị phân từ .deb hoặc .rpm. Trong trường hợp của bạn, tôi sẽ xem xét việc sử dụng tmuxthay thế (không yêu cầu chạy bằng root.
Anthon

Cảm ơn tôi hoàn toàn hiểu những gì bạn nói nhưng tôi khá chắc chắn rằng nó sẽ được đặt thành bản sao nếu tôi đăng
codezombie

1

Bạn phải sử dụng script /dev/nulltrước khi sử dụng screen. Sau khi rời khỏi screenbạn phải exit.


Hoặc có tất cả trong một lệnh để bạn không phải thoát phiên script:sudo -su user script -c bash /dev/null
basic6
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.