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 sbird@example.com
sbird@example.com 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?

Jawaban:


4

Untuk langsung menjawab pertanyaan Anda:

ssh sbird@example.com 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.


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?


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.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.