gunakan layar gnu ketika ssh'ed sebagai pengguna, tetapi su sebagai yang lain

8

Di bawah ini adalah apa yang terjadi ketika mencoba menggunakan layar gnu. Intinya, semuanya berfungsi dengan baik sampai saya su sebagai pengguna lain. maka saya mendapatkan Cannot open your terminal '/dev/pts/7' - please check.kesalahan

l413:~$ ssh [email protected]
[email protected] password: 
sbird@example:~$ screen
[screen is terminating]
sbird@example:~$ su - gradplan
Password: 
gradplan@example:~$ screen 
Cannot open your terminal '/dev/pts/7' - please check.
gradplan@example:~$ 

Bagaimana saya bisa masuk sebagai sbird, su to gradplan, dan masih menggunakan layar?

Alexander Bird
sumber

Jawaban:

4

Untuk langsung menjawab pertanyaan Anda:

ssh [email protected] su grandplan -c “script /dev/null -qc \"screen\""

Jangan mengubah izin pada / dev / pts / X Anda - itu hanya akan menciptakan celah keamanan yang tidak perlu.

Joseph Riopelle
sumber
11

Ketik script /dev/nullsebelum memulai screen.

$ su - gradplan
$ screen
Cannot open your terminal '/dev/pts/15' - please check.
$ script /dev/null
Script started, file is /dev/null
$ screen
# do whatever inside the screen
[detached]
$

ref: ServerFault: Mengapa pengalihan 'skrip' ke / dev / null / memungkinkan 'layar' bekerja sementara dituntut sebagai pengguna lain?

masuk
sumber
Untuk pembaca masa depan, saya menemukan su'ing di dalam layar untuk benar-benar menjadi praktik yang lebih baik, tetapi karena ini menjawab apa yang sebenarnya saya minta lebih baik, saya menerimanya sebagai jawaban yang tepat.
Alexander Bird
1

Jika kamu:

ls -l /dev/pts/7

Anda akan melihatnya dimiliki oleh sbird, ketika Anda beralih ke gradplan, ia tidak memiliki izin untuk menyentuh perangkat itu.

Anda dapat mencoba melakukannya

chmod a+rw /dev/pts/X

(X menjadi titik mana Anda saat ini terhubung, karena itu akan berubah) sebelum Anda menyaring.

Atau Anda dapat menyaring sebagai sbird, maka di setiap jendela layar su ada.

superfro
sumber