Cara menutup tty


14

Saya telah membuka beberapa ttys dan saya tidak tahu kombinasi tombol yang digunakan untuk menutup tty. Saya menggunakan Arch Linux.


2
Anda tidak membukanya, mereka terbuka. Anda baru saja mengubah VT. Jika Anda ingin keluar dari salah satunya, gunakan exit. Jika Anda belum masuk, jangan khawatir. Itu ada di sana sebelumnya, hanya saja Anda tidak melihatnya.
goldilocks

1
@goldilocks, VTs dapat dialokasikan dan ditutup secara dinamis. Yang pertama selalu dialokasikan ketika konsol ada di dalamnya, initdan X umumnya mengalokasikan yang berikutnya, tetapi Anda dapat mengalokasikan lebih banyak. Membuka /dev/ttyxperangkat sudah cukup untuk mengalokasikannya.
Stéphane Chazelas

@StephaneChazelas: Cukup adil. Saya baru saja menyimpulkan dari "menggunakan kombinasi tombol" yang ngwdaniel sebenarnya tidak memulai apa pun yang init belum muncul. Jika demikian, tidak perlu menutupnya (dan seperti yang Anda tunjukkan dalam jawaban Anda, itu tidak mudah dilakukan).
goldilocks

Anda berarti mengurangi jumlah tty yang tersedia?
daisy

@goldilocks terima kasih, ini adalah jawaban yang saya cari. Saya seorang pemula yang bodoh dan saya pikir itu adalah saya yang membuka ttys oleh <Alt> + <F2> dll
ngwdaniel

Jawaban:


10

"Menutup" a TTY

  • Jika systemdbukan inityang digunakan maka ini tidak akan membantu Anda.
  • sysvinitadalah tidak lagi didukung oleh Arch Linux

systemd's systemctldigunakan untuk mengontrol semua service unitspada sistem. Untuk mempelajari lebih lanjut tentang referensi itu man systemd.unit. Menghentikan gettylayanan pada yang diinginkan ttyakan melakukan tugas yang dimaksud. Di bawah ini adalah perintah untuk melakukan tindakan ini dan saya juga telah menambahkan tes sehingga Anda dapat mengkonfirmasi hasilnya.

# systemctl stop getty@ttyX.service

  • Ganti Xdengan ttynomornya yang ingin Anda tutup
    • Jika [F4] digunakan untuk beralih ke ttymaka layanan dinamai getty@tty4.service.
  • Prosedur ini juga akan menutup semua aplikasi / klien yang dijalankan dari yang ditentukantty .

Uji

  1. Beralih ke tty4dan masukkan usernamedan password.
    • <CTRL>+<ALT>+[F4]
  2. Luncurkan editor teks favorit Anda
    • vim foo.bar
  3. Beralih kembali ke tty1atau ke mana pun ttyAnda berada
    • <CTRL>+<ALT>+[F1]
  4. Buka jendela terminal dan periksa apakah vimsedang berjalan
    • pgrep vim
      • pgrep mengembalikan nomor proses sinyal dari aplikasi yang ditentukan. Beberapa nomor akan dikembalikan jika ada beberapa contoh aplikasi yang sama
        • (jika ada empat terminal windows terbuka maka pgrepakan menampilkan empat nomor proses)
  5. Sebagai root berhenti pada gettylayanan untuktty4
    • # systemctl stop getty@tty4.service
  6. Periksa kembali apakah vimmasih aktif di tty4tempat dibuka dan dieditfoo.bar
    • pgrep vim (jika tidak ada output / output kurang dari pada langkah 4, maka tidak ada proses)
  7. Periksa status getty@.serviceuntuktty4
    • systemctl status getty@tty4.service | grep -i "Active"
      • Memipipkan output grep -i "Active"hanya akan menampilkan baris yang diperlukan yang harus Anda amati untuk mengonfirmasi bahwa gettytelah dinonaktifkan
        • Active: inactive (dead)

Anda dapat menggunakan whoperintah untuk mendaftar pengguna yang saat ini dicatat dan nomor tty.
Djolo

5

Saya percaya itu adalah deallocvt perintah yang Anda cari.

Pertama, pastikan VT tidak lagi digunakan. Misalnya, jika ada gettydimulai dengan respawning oleh initdi konsol itu, tidak ada gunanya mencoba untuk deallocate itu, Anda akan perlu untuk menghapus tty bahwa dari inittabpertama dan memberitahu inituntuk reload config nya. Jika ada shell, keluar dari shell, dll.

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.