Процес завершено відразу після відкриття терміналу


12

Після того, як я відкрию термінал в 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, що спричинило цю помилку, і він не зможе запустити оболонку.
Матьє Ріглер

.bashrc <- що це? Я не можу google це lol ... Я новий для mac;] У мене навіть немає папки / etc
user98034

OS X у жодному разі не дає джерела ~ / .bashrc, тому перевірте ~ / .profile та інші подібні файли, щоб побачити, чи вони джерело ~ / .bashrc —cc @Matthieu
grg

та ~ / .bash_profile
користувач151019

Відповіді:


8

Перейдіть до Налаштування → Загальні та встановіть команду «Оболонки» у команду та введіть наступне:

/bin/bash -x

Відкрийте нову оболонку і подивіться, що виконується, а потім видаліть відповідні рядки з файлів профілю.


ще те саме. У налаштуваннях (загальних від дока) я не можу ввімкнути "загальний", "запустити диск" і "помітити";] щось зламається, напевно. OSX yosmite
user98034

Я знаю. Але я зараз не можу відкрити ці вкладки в загальних налаштуваннях, тому може бути порушено більше речей.
user98034

@user Ах, я бачу, що ти маєш на увазі. Так, це вказувало б на те, що щось не так - можливо, перевстановіть OS X?
гр

чи є просто спосіб це зробити? У мене є mac mini
user98034

@ user98034 Можливо, всі припускають знання, яких у вас немає. Файли з іменами, що починаються з крапки, як-от .profile тощо, як правило, невидимі. Ви можете перелічити назви файлів у Terminal.app, ввівши "ls -a". Ви можете побачити, що є у такому файлі, як .profile, ввівши "cat .profile". Потім ви можете відкрити інше вікно (оболонку) у Terminal.app. Ви можете вводити команди по черзі, або можете копіювати та вставляти з одного вікна в інше. Заглянувши у нове вікно, ви зможете побачити ефект кожної команди окремо.
Девід Епштейн

4
  1. Перейдіть до значка терміналу на Dock, натисніть правою кнопкою миші та натисніть кнопку New Command 2./bin/bash -x (це показує вашу проблему)
  2. sudo nano .bash_profile (відкрити це проблемне місце)
  3. видаліть це, Ctrl + X (вихід) Так, введіть

1
Здається, ваша відповідь не додає нічого, крім відповіді grgarside.
Джон 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.

Зламаний 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

Робочий 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 зі зламаним терміналом, щоб він відповідав Mac з робочим терміналом, і Terminal негайно почав правильно працювати. 😃


0

Це може бути настільки ж простим, як деякі обмежені дозволи. У мене виникли проблеми із запуском оболонки, коли я перемістив машину в Йосеміті, і ремонт дозволу вирішив проблему.

Спробуйте скористатися функцією "Відновлення дозволів" на вашому запуску диска за допомогою Disk Utility.app. Будемо сподіватися, що під час його запуску у вікні журналу з’явиться серія файлів із неправильними дозволами. Якщо у вас є більше одного або двох файлів із поганими дозволами, промийте та повторіть, поки не отримаєте чистий журнал.

Примітка: періодично з’являться файли, які відключають утиліту ремонту (наразі не можу згадати конкретні відомості), але на новому Mac mini ви повинні мати можливість виконати чистий запуск у другій чи третій спробі.


0

Жодне інше рішення не працювало для мене. Здається, мій термінал виплюнув процес, тому що мені було мало місця на диску. Видалення файлів не допомогло. Мені довелося видалити локальні знімки моєї машини часу.


-1

Для мене це вирішили:

  1. Перейдіть до: Термінал> Налаштування
  2. Прокрутіть униз до: Оболонка
  3. Змінити, /bin/bashщоб:/bin/sh

-1
  1. Перейдіть до піктограми терміналу на доці, натисніть правою кнопкою миші та натисніть кнопку Нова команда
  2. /bin/bash -x та знову відкрийте термінал (він показує вашу проблему)
  3. Перейдіть до Налаштування → Загальні та встановіть команду «Оболонки» у команду та введіть наступне: /bin/sh
  4. Закрийте вікно Налаштування терміналу
  5. Знову відкрити термінал (він повинен працювати)
  6. vi /Users/<your_user>/.bash_profile, видаліть рядки, знайдені на кроці 2.
  7. Перейдіть до Налаштування → Загальні та встановіть команду «Оболонки» у команду та введіть наступне: /bin/bash
  8. Відкрийте термінал, він повинен працювати зараз
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.