Mac OS X Terminal ไม่ได้ลงชื่อเข้าใช้


9

ฉันกำลังเรียกใช้ Mac OS X เวอร์ชั่น 10.6.3 และเมื่อฉันเปิด terminal (ด้วย terminal.app หรือ iterm) มันแค่แฮงค์ในกระบวนการล็อกอิน ฉันลองรีสตาร์ทเปลี่ยนคำสั่งเริ่มต้นเป็น / bin / bash และลบไฟล์การตั้งค่าเทอร์มินัล ทั้งหมดไม่มีประโยชน์

คำตอบ:


5

เป็นไปได้ว่าคุณมีข้อผิดพลาดในไฟล์. bashrc ของคุณ ... คุณสามารถลองติด echo statement ใน. bashrc ของคุณหรือลบมันออกหรือลอง tcsh แทน bash เพื่อดูว่าเป็นปัญหาหรือไม่


ตกลงฉันไม่รู้ว่าเกิดอะไรขึ้น แต่ตอนนี้ใช้งานได้ คุณคิดว่าฉันควรทำเครื่องหมายว่าแก้ไขแล้วหรือไม่?
Wuffers

หากกระบวนการปัจจุบันคือ "เข้าสู่ระบบ" จริงๆแล้วโดยปกติหมายถึงการเข้าสู่ระบบกำลังรอที่จะสร้างเซสชั่นการเข้าสู่ระบบและยังไม่ได้พยายามที่จะเริ่มเปลือก เพื่อตรวจสอบสิ่งนี้ดูในการตรวจสอบกิจกรรมและดูว่าคุณเห็นเปลือกทำงานหรือถ้าคุณเห็นกระบวนการ "เข้าสู่ระบบ"
Chris หน้า

6

ฉันมีปัญหาที่คล้ายกัน
ในกรณีของเทอร์มิจะแผงลอยว่า 'Terminal - เข้าสู่ระบบ - 80x24' ในชื่อ

ฉันไม่ต้องการติดตั้ง Terminal จากดิสก์ OS X อีกครั้งดังนั้นฉันจึงทำตามขั้นตอนต่าง ๆ และท้ายที่สุดหนึ่งในนั้นก็ทำงานได้ ฉันไม่แน่ใจว่าสิ่งใดสำคัญที่สุด แต่ฉันตัดสินใจแชร์ขั้นตอนที่แน่นอนในกรณีที่มีคนพบว่ามีประโยชน์:

1. ย้ายออกไปจากcom.apple.Terminal.plist~/Library/Preferences/

com.apple.Terminal.plist

บางรายงานว่าไฟล์กำหนดค่าเทอร์มินัลอาจเกิดความสับสนและป้องกันไม่ให้แอปเริ่มทำงาน
ย้ายไฟล์นี้ไปที่อื่นเพื่อสำรองข้อมูลออกจากเทอร์มินัลแล้วเริ่มใหม่อีกครั้ง

ในกรณีของฉันการรีเซ็ตการกำหนดค่าเปลี่ยนแบบอักษรและการตั้งค่าสีเป็นค่าเริ่มต้น แต่ปัญหายังคงอยู่ ถ้าเป็นเช่นนั้นให้ทำตามขั้นตอนที่สอง:

2. ลองเรียกใช้เชลล์นอกเหนือจาก bash

การเปลี่ยนเชลล์ที่ใช้โดย Terminal

คำแนะนำในการเปลี่ยนเชลล์เริ่มต้นในเทอร์มินัลเป็น/bin/zshและรีสตาร์ทเทอร์มินัลเพื่อดูว่าปัญหานั้นจำเพาะกับการทุบตีหรือไม่ loginในกรณีของการทำเช่นนั้นการเปลี่ยนแปลงอะไรและเทอร์มิยังคงแขวนที่

3. ลองย้าย.bash*ไฟล์ออกจากโฮมไดเร็กตอรี่

ฉันจำได้ว่าในช่วงเซสชั่นก่อนหน้าฉันสร้าง.bash_profileไฟล์ในไดเรกทอรีของฉัน บางทีมีบางอย่างผิดปกติกับมัน หากคุณยังไม่ได้สร้างด้วยตัวเองตัวติดตั้งบางตัวอาจสร้าง (หรือแก้ไข) โดยเฉพาะอย่างยิ่งหากซอฟต์แวร์นั้นไม่เฉพาะกับ Mac OS

น่าเสียดายที่ Finder ไม่แสดงไฟล์ที่ซ่อนอยู่ตามค่าเริ่มต้นและไม่มีวิธีที่ง่ายในการทำเช่นนี้ อย่างไรก็ตามในกรณีของฉันฉันพบว่าAutomator สามารถเรียกใช้คำสั่ง bash ได้สำเร็จ :

ย้ายไฟล์ bash ด้วย Automator

นี่คือสคริปต์ที่ฉันใช้:

cd ~

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

มันย้ายไฟล์ทั้งหมดที่เริ่มต้นด้วย.bashในไดเรกทอรีบ้านของฉันไปยังbackupไดเรกทอรีย่อย

4. รีบูต

ตอนนี้การรีสตาร์ทแอพไม่ได้ผลสำหรับฉัน แต่ฉันก็ตัดสินใจลองรีบูทด้วย
หลังจากรีบูตเครื่องเทอร์มินัลทำงาน Voila!

ฉันย้ายไฟล์ที่บันทึกไว้com.apple.Terminal.plistกลับไป~/Library/Preferences/เป็นแทนที่ไฟล์ปัจจุบันและตัดสินใจที่จะไม่กู้คืนไฟล์เก่า (และค่อนข้างไม่เป็นประโยชน์) .bash*และbackupไดเรกทอรีที่ถูกลบ

ฉันไม่รู้ว่ามันเป็นเรื่องบังเอิญหรือเป็นขั้นตอนเฉพาะที่ผสมผสานกันเพื่อแก้ไขปัญหา แต่ฉันดีใจที่ Terminal ทำงานอีกครั้งและฉันหวังว่าคุณจะทำเช่นนั้น

สถานีทำงานอีกครั้ง


1
TFW คุณพยายามที่จะแก้ปัญหาขั้วที่โง่และคำตอบที่คุณพบคือ Dan Abramov ก่อนที่เขาจะเป็น Dan Abramov ...
BarthesSimpson

1

หากกระบวนการปัจจุบันคือ "เข้าสู่ระบบ" จริงๆแล้วโดยปกติหมายถึงการเข้าสู่ระบบกำลังรอที่จะสร้างเซสชั่นการเข้าสู่ระบบและยังไม่ได้พยายามที่จะเริ่มเปลือก เพื่อตรวจสอบสิ่งนี้ดูในการตรวจสอบกิจกรรมและดูว่าคุณเห็นเปลือกทำงานหรือถ้าคุณเห็นกระบวนการ "เข้าสู่ระบบ" โปรดทราบว่าหากคุณเปิดเทอร์มินัลอื่นคุณอาจเห็น "ล็อกอิน" และกระบวนการเชลล์อื่น ๆ สำหรับพวกเขาดังนั้นโปรดระมัดระวังเกี่ยวกับกระบวนการที่คุณกำลังตรวจสอบ กระบวนการปัญหามักจะเป็นกระบวนการล่าสุดที่มีหมายเลขรหัสกระบวนการสูงสุด (PID)

ฉันรู้ว่ามาร์ค Szymanski กล่าวว่าการรีบูตไม่ได้ช่วยในกรณีของเขา แต่ฉันคิดว่าฉันควรพูดถึงเรื่องนี้ต่อไป: ถ้ามันติดอยู่ใน "เข้าสู่ระบบ" สาเหตุที่พบบ่อยที่สุดคือคุณวิ่ง "sudo" แล้วปิดสถานี ในขณะที่รอให้คุณป้อนรหัสผ่าน หากคุณทำเช่นนี้ sudo จะรอรหัสผ่านถาวรและจะบล็อกการเข้าสู่ระบบทั้งหมดจนกว่าคุณจะฆ่ากระบวนการ sudo วิธีที่ง่ายที่สุดในการแก้ไขปัญหาคือการรีบูท อีกทางหนึ่งคุณสามารถฆ่า sudo จาก Activity Monitor (หรือจากเทอร์มินัลอื่นหากคุณมีหนึ่งอันเปิดอยู่แล้ว) ในฐานะของ Mac OS X Lion 10.7, sudo จะสังเกตเห็นเมื่อเครื่องหายไปและหยุดรอรหัสผ่านดังนั้นปัญหานี้ไม่ควรเกิดขึ้นอีกต่อไป

อีกสาเหตุหนึ่งของความล่าช้าในการเข้าสู่ระบบคือถ้าคุณเชื่อมต่อกับเครือข่าย Open Directory และเซิร์ฟเวอร์ไดเรกทอรีช้าหรือไม่ตอบสนอง รายงานสิ่งนี้ต่อผู้ดูแลระบบเครือข่ายของคุณ ซึ่งมักจะทำให้เกิดความล่าช้าในไม่กี่วินาที แต่ในบางกรณีพวกเขาสามารถนานถึงหลายนาที


0

ปัญหาไม่ได้เป็นเปลือกหรือเครือข่าย ลบไฟล์ * .asl:

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

มันต้องใช้เวลาเพราะมันเริ่มเชลล์ใหม่ แต่หลังจากนั้นก็ทำงานได้ดีอีกครั้ง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.