Saya baru-baru ini mulai menyewa ruang di server jauh sehingga saya dapat bekerja pada suatu proyek. Saya menemukan bahwa cara yang relatif tidak menyakitkan untuk mengaksesnya pada mesin windows adalah melalui Putty. Namun, ada satu hal yang selalu membuatku jengkel ketika menggunakannya: karena tampaknya tidak ada alasan karakter acak kadang-kadang dimasukkan pada kursor.
Sebagian besar waktu itu hanya tilde tunggal, tetapi jarang memuntahkan apa yang tampak seperti beberapa urutan melarikan diri ([[8 atau 8 sejenisnya). Itu hanya akan terjadi ketika saya fokus pada jendela, apakah saya mengetik atau 20 kaki dari keyboard. Jika dibiarkan cukup lama, itu akan meludahkan gelombang secara acak (rata-rata sekitar 1 menit).
Akhirnya, perilaku ini tampaknya tidak konsisten ketika menjalankan program seperti nano atau antarmuka mysql: di nano, alih-alih menyisipkan tildes, ia akan menetapkan tanda (ctrl- ^); di mysql, baris akan menjadi tidak dapat diedit.
Pertanyaan saya adalah ini: Apakah ada orang lain yang mengalami perilaku semacam ini di Putty? Dan jika demikian, apa yang dapat dilakukan untuk mencegah / memperbaiki perilaku ini?
Jawaban:
Saya memiliki masalah yang sama dengan Putty dan menemukan bahwa itu disebabkan oleh aplikasi yang saya sebut "caffeine" yang secara efektif menekan tombol F13 setiap menit untuk menghentikan screen saver agar tidak diaktifkan (kebijakan grup mencegah saya mengubah batas waktu screen saver pada mesin saya). Menonaktifkan aplikasi memecahkan masalah saya.
sumber
Jika Anda lebih suka menjalankan Putty dan Kafein, ikuti langkah-langkah berikut:
F15
Ctrl+V
(Ini diperlukan untuk mendapatkan kode khusus untuk kunci. Mis. CobaCtrl+V
diikuti olehF12
)F15
adalah^[[28~
, di mana^[
adalah melarikan diri). Hentikan Kafein~
~/.inputrc
(buat file baru jika tidak ada)"\e[28~":""
~
ketika menggunakan terminal Putty dengan server linux itusumber
Saya menemukan solusi shreyansp menjadi yang paling (tapi tidak cukup) yang memuaskan :)
Inilah upaya saya untuk meningkatkan itu (tentu saja YMMV). Semoga ini bisa bermanfaat bagi mereka yang mencari solusi :)
Solusi saya berperilaku sebagai berikut:
TL; DR: Solusi saya diterapkan antara langkah 2 dan 3 (lihat di bawah) dengan
-key:0E
parameter kafein:Keluar dari Kafein & luncurkan kembali dengan:
caffeine.exe 5 -key:0E
(untuk pengujian mudah)caffeine.exe 50 -key:0E
(untuk screen saver wajib yang disetel pada 1 menit)read
program pada host jarak jauh dan perhatikan bagaimana tidak ada penekanan tombol yang diterima setiap 5 atau 50 detik.read
denganCtrl+C
Shreyansp mengusulkan solusi di mana perbaikan akan diterapkan antara langkah 5 dan 10 (lihat di bawah).
Efek samping dari hal itu (pada konfigurasi saya) adalah bahwa, dengan setiap penekanan tombol yang diteruskan dari kafein ke host jarak jauh:
yang biasanya saya inginkan, tetapi hanya ketika saya (manusia) menekan tombol tetapi tidak secara teratur oleh kafein :)
'"\e[28~"'
ke'""'
(kunci kosong?) menyebabkan interaksi sesi jarak jauh menggantung selama beberapa detikUntuk mengujinya dengan mudah, keluar dari Kafein & luncurkan kembali dengan interval 5 detik dan Kode Kunci-Virtual 07:
caffeine.exe 5 -key:07
read
program pada host jarak jauh dan saksikan bagaimana penekanan tombol diterima setiap 5 atau 50 detik.read
denganCtrl+C
Keystroke 'pipeline', seperti yang saya mengerti:
$TERM=xterm
,vt100
,vt102
,vt220
, dll) diterjemahkan dari 'line protocol' ke dalam kode kunci.~/.inputrc
~/.bashrc
(berdasarkan pada perintah bind builtin)screen
program (yang termasuk$TERM=screen
untuk langkah 5. dan kembali lagi pada langkah 6. hingga 10.)Catatan: Begitu sampai ke langkah 4., menjadi sangat sulit untuk secara tepat mengontrol berbagai lapisan 'terjemahan' / 'pemetaan'. Saya akan merekomendasikan menghindari itu jika Anda bisa.
Latar belakang:
Saya menggunakan
caffeine.exe -key:07
selama bertahun-tahun sebelum harus berurusan dengan pfsense 2.3.3-RELEASE-p1 (berdasarkan FreeBSD 10.3-RELEASE).Kemudian,
caffeine.exe -key:07
diterima di sisi lain sebagai^[[28~
... yang tampaknya dipetakan keCtrl+^
(Set Mark) di Nano.Ini cukup menjengkelkan (bayangkan seseorang menekan dan mempertahankan Tombol Shift saat Anda memindahkan tanda sisipan teks di Notepad).
Sebelumnya, saya melakukan banyak kustomisasi di Putty Settings,
~/.tcshrc
,~/.inputrc
,~/.bashrc
,~/.nanorc
,~/.screenrc
untuk mendapatkan apa yang saya anggap fungsi dasar (Backspace
,Delete
,Home
,End
,PgUp
,PgDown
,Ctrl+Left
,Ctrl+Right
, Numpad0-9
, numpad./*-+
) bekerja secara konsisten antara bash / nano / layar.Setelah saya menemukan
caffeine.exe -key:07
'bug' ini, saya tidak ingin melacaknya lagi :)Diuji pada:
Windows 8.1 64-bit Enterprise (6.3.9600) / Putty 0.66 / pfsense 2.3.3-RELEASE-p1 (berdasarkan FreeBSD 10.3-RELEASE) / bash 4.4.12-release / nano 2.7.3 / screen 4.04. 00
Referensi:
Kafein:
Undefined
kode 1 yang berfungsi untuk pengaturan Anda)Readline / inputrc / bash / bashrc / (builtin) bind:
Dempul:
sumber
Ini benar-benar terlihat seperti urutan pelarian, atau karakter kontrol, yang mungkin menjelaskan mengapa Anda tidak melihatnya di program lain seperti notepad.
Saya tidak yakin tombol mana yang harus ditekan untuk mendapatkan output ini, tetapi saya akan bermain-main sedikit dan mencoba mencari tahu. Bisakah Anda menyebutkan urutan lain yang ditampilkan? Perilaku mysql dan nano mungkin hanya interpretasi lain dari urutan pelarian yang tampaknya masuk.
Akhirnya, pertanyaannya adalah apa yang menyebabkan input-input utama ini. Apakah Anda, secara kebetulan, menggunakan laptop yang, misalnya, secara otomatis mengontrol cahaya latar menggunakan beberapa perangkat lunak berpemilik? Saya telah melihat beberapa perangkat lunak aneh yang sudah diinstal sebelumnya sebenarnya meniru penekanan tombol alih-alih menggunakan API. Anda mungkin ingin menggunakan sesuatu seperti inputlog pada diri Anda sendiri.
sumber
~
(dan mendengar beeb) ketika sebenarnya sesuatu seperti\e[3~
dikirim.~
akan menunjukkan urutan pelarian.)Saya menggunakan opsi -key: 07 pada commandline untuk meluncurkan caffiene .. Sepertinya untuk menghentikan masalah Putty.
Masukkan saja ini ke file bat
caffeine.exe -kunci: 07
sumber
caffeine.exe -key:0E
(lihat jawaban saya di bawah). Tampaknya bekerja dengan baik dengan Windows (8.1 64-bit) dan Putty dengan senang hati mengabaikannya :)Seseorang di forum Cisco menyarankan untuk mengubah parameter kecepatan konsol untuk menyelesaikan masalah ini.
http://www.dslreports.com/forum/r27090677-HELP-Cisco-1800-garbled-output-in-putty
Anda pasti sudah mencoba semua variasi kecepatan konsol di Putty seperti yang disebutkan dalam 1 ?
Catatan: Jika baud rate diatur berbeda dari laju default, karakter ganjil terlihat di CLI. Periksa table1 untuk menetapkan nilai baud untuk nilai Konfregasi yang berbeda.
sumber
Saya juga memiliki masalah yang sama dan menemukan bahwa caffeine.exe memang masalahnya. Pada awalnya saya pikir itu tidak dapat disebabkan oleh caffeine.exe karena saya menggunakan ini selama 2+ tahun di laptop lama saya. Saya mencoba mengubah caffeine.exe - alih-alih, tetapi itu mengirim ^ C. Menemukan program lain, Mouse Jiggler, yang menjaga screen saver tetapi tidak mengirim urutan Escape di sesi Putty saya lagi.
sumber
Solusi yang lebih baik adalah mengkonfigurasi pengaturan pada sesi dempul Anda sehingga Caffine tidak mengganggu itu.
Di Putty di bawah Keyboard Terminal pilih opsi SCO. Dalam Putty di bawah Terminal Bell, ubah tindakan ke Tidak Ada (untuk mematikan bunyi genta lonceng).
Caffine masih akan melakukan hal itu dan tidak mengganggu sesi dempul Anda. (Saya tidak menggunakan tombol Fn selama sesi dempul jadi saya tidak tahu apa yang terjadi jika Anda ingin menggunakan kunci Fn).
sumber
2017-09-20: Memecahkan injeksi arang dengan memulai kafein dengan «caffeine.exe -useshift -noicon» di penjadwal tugas yang dipicu saat masuk. Tidak ada ikon, tidak ada karakter yang disuntikkan lagi di sesi mintty / bash saya. Itu sangat menjengkelkan. Terima kasih semuanya atas petunjuk Anda.
sumber