Kadang-kadang, biasanya setelah crash atau shutdown mendadak, screen
menolak untuk memulai. Perintah suka
screen
screen -ls
screen -r
screen -d
menghasilkan output berikut
Tidak dapat membuat direktori '/ var / run / screen': Izin ditolak
Apa masalahnya di sini? Bagaimana saya bisa memperbaikinya?
sumber
Saya mengalami ini ketika menjalankan distro berbasis Centos / RHEL 7, dan tidak ada yang bernama 'pembersih layar' di mana saja di bawah / etc.
Solusi yang saya temukan adalah menjalankannya
sudo screen
dan kemudian segera keluar dari sana.Setelah itu saya bisa menjalankan layar tanpa hak istimewa, jadi sepertinya membersihkan / var / menjalankan dengan tepat ketika diberi kesempatan.
sumber
Saya dapat memperbaiki masalah ini dengan menjalankan perintah berikut.
sumber
TL; DR : Di Debian Stretch dan yang lebih baru, pastikan
systemd-tmpfiles-setup.service
sudah berhasil dimulai:Jika dinonaktifkan (
Loaded: ... ;disabled; ...
) maka Anda mungkin ingin mengaktifkannya dengansystemctl enable systemd-tmpfiles-setup.service
. Jika Anda ingin menggunakan layar dalam wadah buruh pelabuhan maka Anda harus menjalankan systemd dalam gambar wadah Anda atau Anda harus menjalankansystemctl start systemd-tmpfiles-setup.service
atau/etc/init.d/screen-cleanup start
( seperti yang disarankan oleh Huey ) setiap kali setelah masuk ke wadah Anda.Detail: Sejak Debian Stretch, skrip startup
/etc/init.d/screen-cleanup
tidak dieksekusi, karena secara default layanan ini di-mask (/lib/systemd/system/screen-cleanup.service -> /dev/null
), jadi systemd mengabaikannya.Alih-alih
systemd-tmpfiles-setup.service
membuat/run/screen
saat boot, seperti yang dikonfigurasi dalam/usr/lib/tmpfiles.d/screen-cleanup.conf
:d /run/screen 0775 root utmp
sumber
systemctl enable systemd-tmpfiles-setup.service
yang @Jacob menyarankan bertahan di reboot.