Terminal Mac OS X tidak masuk

9

Saya menjalankan Mac OS X versi 10.6.3 dan ketika saya membuka terminal (dengan terminal.app atau iterm) itu hanya hang pada proses login. Saya sudah mencoba memulai kembali, mengubah perintah startup ke / bin / bash, dan menghapus file preferensi terminal. Semua sia-sia.

Wuffers
sumber

Jawaban:

5

Mungkin Anda memiliki bug di file .bashrc Anda ... Anda dapat mencoba menempelkan pernyataan echo di .bashrc Anda, atau menghapusnya, atau mencoba tcsh alih-alih bash untuk melihat apakah itu masalahnya ...

Brian Postow
sumber
OK, saya tidak tahu apa yang terjadi tetapi itu berhasil sekarang. Apakah Anda pikir saya harus menandai ini sebagai diselesaikan atau tidak?
Wuffers
Jika proses saat ini benar-benar "login", itu biasanya berarti login sedang menunggu untuk membuat sesi login dan bahkan belum mencoba untuk memulai shell. Untuk memverifikasi ini, lihat di Activity Monitor dan lihat apakah Anda melihat shell berjalan atau jika Anda hanya melihat proses "masuk".
Chris Page
6

Saya punya masalah serupa.
Dalam kasus saya, Terminal akan berhenti mengatakan 'Terminal - login - 80x24' pada judul .

Saya tidak ingin menginstal ulang Terminal dari disk OS X, jadi saya mengikuti beberapa prosedur berbeda, dan pada akhirnya salah satu dari mereka sepertinya berhasil. Saya tidak yakin mana yang paling penting, tetapi saya memutuskan untuk membagikan langkah-langkah persis saya jika seseorang menemukan mereka bermanfaat:

1. Minggir com.apple.Terminal.plistdari ~/Library/Preferences/.

com.apple.Terminal.plist

Beberapa melaporkan bahwa file konfigurasi Terminal mungkin kacau dan mencegah aplikasi dari memulai.
Pindahkan file ini di suatu tempat untuk cadangan, keluar dari Terminal dan mulai lagi.

Dalam kasus saya, mengatur ulang konfigurasi mengubah pengaturan font dan warna ke default, tetapi masalahnya tetap ada. Jika Anda melakukannya, lanjutkan ke langkah kedua:

2. Coba jalankan shell selain bash

mengganti shell yang digunakan oleh Terminal

Beberapa saran untuk mengganti shell default di Terminal ke /bin/zshdan restart Terminal untuk melihat apakah masalahnya khusus untuk bash. Dalam kasus saya, melakukan itu tidak mengubah apa pun, dan Terminal akan tetap bertahan login.

3. Coba pindahkan .bash*file dari direktori home

Saya ingat bahwa selama sesi sebelumnya saya membuat .bash_profilefile di direktori saya. Mungkin ada yang salah dengan itu. Jika Anda belum membuat sendiri, beberapa penginstal bisa membuat (atau mengedit) itu, terutama jika perangkat lunak tidak spesifik untuk Mac OS.

Sayangnya, Finder tidak menampilkan file tersembunyi secara default dan tidak menyediakan cara mudah untuk melakukan ini. Namun, dalam kasus saya, saya menemukan bahwa Automator sebenarnya dapat menjalankan perintah bash dengan sukses :

memindahkan file bash dengan Automator

Ini skrip yang saya gunakan:

cd ~

mkdir backup
for F in .bash*
do
    mv $F backup
done

Itu memindahkan semua file dimulai dengan .bashdi direktori home saya ke backupsubdirektori.

4. Reboot

Restart aplikasi tidak berfungsi untuk saya pada saat ini tetapi saya memutuskan untuk mencoba reboot juga .
Setelah reboot, Terminal bekerja. Voa!

Saya memindahkan yang disimpan com.apple.Terminal.plistkembali ke ~/Library/Preferences/, mengganti yang sekarang, dan memutuskan untuk tidak mengembalikan .bash*file lama (dan agak tidak terlalu berguna) dan backupdirektori yang dihapus .

Saya tidak tahu apakah itu kebetulan atau kombinasi dari langkah-langkah spesifik yang menyelesaikan masalah, tetapi saya senang bahwa Terminal bekerja lagi, dan saya harap Anda juga akan melakukannya.

Terminal bekerja kembali

Dan
sumber
1
TFW Anda mencoba memecahkan masalah terminal yang bodoh dan jawaban SO yang Anda temukan adalah oleh Dan Abramov sebelum ia adalah Dan Abramov ...
BarthesSimpson
1

Jika proses saat ini benar-benar "login", itu biasanya berarti login sedang menunggu untuk membuat sesi login dan bahkan belum mencoba untuk memulai shell. Untuk memverifikasi ini, lihat di Activity Monitor dan lihat apakah Anda melihat shell berjalan atau jika Anda hanya melihat proses "masuk". Perhatikan bahwa jika Anda memiliki terminal lain yang terbuka, Anda mungkin melihat "proses masuk" dan proses shell lainnya untuk mereka, jadi berhati-hatilah dengan proses yang sedang Anda periksa. Proses masalah biasanya yang terbaru dengan nomor id proses (PID) tertinggi.

Saya menyadari Mark Szymanski mengatakan bahwa reboot tidak membantu dalam kasusnya, tetapi saya pikir saya harus menyebutkan ini: jika benar-benar terjebak dalam "login", penyebab paling umum adalah Anda menjalankan "sudo" dan kemudian menutup terminal. selagi menunggu Anda memasukkan kata sandi. Jika Anda melakukan ini, sudo menunggu selamanya untuk kata sandi dan ini memblokir semua login sampai Anda mematikan proses sudo. Cara paling sederhana untuk mengatasi masalah ini adalah dengan reboot. Atau, Anda dapat membunuh sudo dari Activity Monitor (atau dari terminal lain jika kebetulan sudah ada yang terbuka). Pada Mac OS X Lion 10.7, sudo akan melihat kapan terminal hilang dan berhenti menunggu kata sandi, sehingga masalah ini seharusnya tidak lagi terjadi.

Penyebab lain keterlambatan login adalah jika Anda terhubung ke jaringan Open Directory dan server direktori lambat atau tidak responsif. Laporkan ini ke admin jaringan Anda. Ini biasanya hanya menyebabkan penundaan beberapa detik, tetapi dalam beberapa kasus mereka dapat bertahan hingga beberapa menit.

Chris Page
sumber
0

Masalahnya bukan pada shell atau jaringan. Hapus file * .asl:

sudo rm -rf /private/var/log/asl/*.asl

Dibutuhkan waktu, karena ia memulai shell baru. Tetapi setelah itu, itu berfungsi dengan baik lagi.

Mirko Ebert
sumber