ดำเนินการให้เสร็จสิ้นทันทีหลังจากเปิด Terminal


12

หลังจากฉันเปิด Terminal ใน OS X:

Last login: Tue Oct 28 10:29:21 on ttys000 login(14773,0x7fff7572f300) malloc: * error for
object 0x7fd4bb715110: pointer being freed was not allocated * set a breakpoint in
malloc_error_break to debug

[Process completed]

ฉันไม่รู้ว่าฉันทำอะไรหรือแก้ไขอย่างไร


ฉันจะเดิมพันบางอย่างผิดปกติใน. profile หรือ. bashrc ของคุณซึ่งทำให้เกิดข้อผิดพลาดและทำให้เชลล์ไม่สามารถเริ่มต้นได้
Matthieu Riegler

.bashrc <- นั่นคืออะไร ฉันลาดเท google มัน lol ... ฉันใหม่กับ mac;] ฉันไม่มีแม้แต่โฟลเดอร์ / etc
user98034

OS X ไม่ได้แหล่งที่มา ~ / .bashrc ด้วยตัวเองดังนั้นให้ตรวจสอบ ~ / .profile และไฟล์อื่น ๆ เพื่อดูว่าพวกเขาแหล่งที่มา ~ / .bashrc —cc @Matthieu
grg

และ ~ / .bash_profile
user151019

คำตอบ:


8

ไปที่การตั้งค่า→ทั่วไปและตั้งค่าเชลล์ที่เปิดด้วยไปที่คำสั่งและป้อนต่อไปนี้:

/bin/bash -x

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


ยังเหมือนเดิม. ในการตั้งค่า (ทั่วไปจากท่าเรือ) ฉันไม่สามารถเปิด "ทั่วไป", "เริ่มดิสก์" และ "แจ้งให้ทราบ";] สิ่งที่เสียฉันเดา OSX yosmite
user98034

ฉันรู้ว่า. แต่ตอนนี้ฉันไม่สามารถเปิดแท็บเหล่านั้นในค่ากำหนดทั่วไปได้ดังนั้นอาจมีสิ่งอื่น ๆ อีกมากมายเสียหาย
user98034

@user อ่าฉันเห็นว่าคุณหมายถึงอะไร ใช่นั่นจะบ่งบอกว่ามีบางอย่างผิดปกติ - บางทีติดตั้ง OS X อีกครั้ง
grg

มีวิธีง่าย ๆ ที่จะทำมันได้หรือไม่ ฉันมี mac mini
user98034

@ user98034 บางทีทุกคนสมมติว่าคุณไม่มีความรู้ ไฟล์ที่มีชื่อขึ้นต้นด้วยจุดเช่น. profile และอื่น ๆ โดยทั่วไปจะมองไม่เห็น คุณสามารถแสดงรายชื่อไฟล์ใน Terminal.app โดยพิมพ์ "ls -a" คุณสามารถดูสิ่งที่อยู่ในไฟล์เช่น. profile โดยพิมพ์ "cat .profile" จากนั้นคุณสามารถเปิดอีกหน้าต่างหนึ่ง (เชลล์) ใน Terminal.app คุณสามารถพิมพ์คำสั่งในหนึ่งโดยหนึ่งหรือคุณสามารถคัดลอกและวางจากหน้าต่างหนึ่งไปยังอีก เมื่อดูในหน้าต่างใหม่คุณจะเห็นผลของแต่ละคำสั่งทีละรายการ
David Epstein

4
  1. ไปที่ไอคอน Terminal บน Dock กดคลิกขวาแล้วกด New Command 2./bin/bash -x (แสดงปัญหาของคุณ)
  2. sudo nano .bash_profile (เปิดที่ปัญหานี้)
  3. ลบสิ่งนี้ Ctrl + X (ออก) ใช่ Enter

1
คำตอบของคุณดูเหมือนจะไม่เพิ่มอะไรเลยนอกจากคำตอบของ grgarside
John N

มันทำ: ฉันไม่สามารถป้อนคำสั่งในเส้นทางที่เสนอ grg และคำตอบของ JustGo ทำให้ฉันมีวิธีที่ฉันสามารถเรียกใช้คำสั่งเชลล์เพื่อแก้ไขปัญหา ฉันไม่สามารถเปิดไฟล์ดอทในโปรแกรมแก้ไขข้อความได้ด้วยซ้ำ: Apple "เป็นประโยชน์" ไม่เปิดเผยในเครื่องมือค้นหา ดังนั้นหากเชลล์ของคุณกำลังจะสิ้นสุดลงอย่างรวดเร็วในขณะที่คุณเปิดมันเช่นเดียวกับกรณีของปัญหานี้นี่เป็นวิธีใน
F1Linux

1

ฉันรู้ว่านี่เก่า ... แต่ฉันมีปัญหาเดียวกันและไม่สามารถหาข้อมูลใด ๆ เพื่อแก้ไขปัญหานี้ได้ฉันจึงตัดสินใจแบ่งปันโซลูชันที่นี่ด้วย

หวังว่ามันจะช่วยให้คนอื่น :)

หลังจากอัพเกรด Mac จาก OS X 10.6.8 (Snow Leopard) เป็น 10.11.4 (El Capitan) มันจะไม่เปิดเชลล์ใน Terminal อีกต่อไป มันจะเปิดหน้าต่างเทอร์มินัลโดยมีเพียง [กระบวนการเสร็จสิ้น] ปรากฏขึ้นบนหน้าจอ

บันทึกคอนโซลแสดงข้อผิดพลาด:

login: in openpam_load_module(): no pam_serialnumber.so found
login: pam_start(): system error

โพสต์นี้ ( https://discussions.apple.com/message/11861278#11861278 ) ชี้ให้ฉันเห็นทิศทางที่ถูกต้อง

ฉันตรวจสอบเนื้อหาของ /private/etc/pam.d/login.term บน Mac ที่ได้รับผลกระทบและบน Mac ที่ใช้งานได้

Broken Mac Terminal /private/etc/pam.d/login.term

# login: auth account password session
auth       optional       pam_krb5.so
auth       optional       pam_mount.so
auth       sufficient     pam_serialnumber.so serverinstall legacy
auth       required       pam_opendirectory.so
account    required       pam_nologin.so
account    required       pam_opendirectory.so
password   required       pam_deny.so
session    required       pam_uwtmp.so
session    optional       pam_mount.so

Working Mac Terminal /private/etc/pam.d/login.term

# login: account session
account    required       pam_nologin.so
account    required       pam_opendirectory.so
session    required       pam_uwtmp.so

ฉันแก้ไขเนื้อหาของ Mac ด้วย Terminal ที่เสียหายเพื่อให้ตรงกับ Mac กับ Terminal ที่ใช้งานได้และ Terminal ก็เริ่มทำงานได้อย่างถูกต้องทันที 😃


0

นี่อาจเป็นสิ่งที่ง่ายเหมือนการอนุญาตที่ถูก borked ฉันมีปัญหาบางอย่างในการเริ่มต้นเชลล์เมื่อฉันย้ายเครื่องไปยัง Yosemite และการซ่อมแซมสิทธิ์ช่วยดูแลปัญหา

ลองใช้ฟังก์ชัน "ซ่อมแซมสิทธิ์" บนดิสก์เริ่มต้นของคุณโดยใช้ Disk Utility.app หวังว่าขณะที่มันทำงานหน้าต่างบันทึกจะแสดงชุดของไฟล์ที่มีสิทธิ์ที่ไม่ถูกต้อง หากคุณมีมากกว่าหนึ่งหรือสองไฟล์ที่มีสิทธิ์ที่ไม่ถูกต้องให้ล้างและทำซ้ำจนกว่าคุณจะได้รับบันทึกที่สะอาด

หมายเหตุ: บางครั้งจะมีไฟล์บางไฟล์ที่ใช้งานยูทิลิตีการซ่อมแซม (ไม่สามารถจำเฉพาะตอนนี้ได้) แต่สำหรับ Mac mini เครื่องใหม่คุณควรจะสามารถทำการรันได้อย่างสมบูรณ์ในการลองครั้งที่สองหรือครั้งที่สาม


0

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


-1

ต่อไปนี้แก้ไขได้สำหรับฉัน:

  1. ไปที่: เทอร์มินัล> ค่ากำหนด
  2. เลื่อนลงไปที่: Shell
  3. เปลี่ยน/bin/bashเป็น:/bin/sh

-1
  1. ไปที่ไอคอน Terminal บน Dock กดคลิกขวาแล้วกด New Command
  2. /bin/bash -x และเปิดเทอร์มินัลใหม่ (แสดงปัญหาของคุณ)
  3. ไปที่การตั้งค่า→ทั่วไปและตั้งค่าเชลล์ที่เปิดด้วยไปที่คำสั่งและป้อนต่อไปนี้: /bin/sh
  4. ปิดหน้าต่างการตั้งค่าเทอร์มินัล
  5. เปิด Terminal อีกครั้ง (ควรใช้งานได้)
  6. vi /Users/<your_user>/.bash_profileลบบรรทัดที่พบในขั้นตอนที่ 2
  7. ไปที่การตั้งค่า→ทั่วไปและตั้งค่าเชลล์ที่เปิดด้วยไปที่คำสั่งและป้อนต่อไปนี้: /bin/bash
  8. เปิด Terminal มันควรจะทำงานได้แล้ว
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.