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

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]

Я понятия не имею, что я сделал или как это исправить.

user98034
источник
Я бы поспорил, что что-то не так в вашем .profile или .bashrc, вызывая эту ошибку, и заставил бы его не запускаться.
Матье Риглер,
.bashrc <- что это? Я не могу Google это LOL ... Я новичок в Mac;] У меня даже нет папки / etc
user98034
В любом случае OS X не создает исходный текст ~ / .bashrc, поэтому проверьте ~ / .profile и другие подобные файлы, чтобы узнать, являются ли они источником ~ / .bashrc —cc @Matthieu
grg
и ~ / .bash_profile
user151019

Ответы:

8

Перейдите в «Настройки» → «Основные» и установите для «Оболочки» значение «Команда» и введите следующее:

/bin/bash -x

Откройте новую оболочку и посмотрите, что выполняется, затем удалите соответствующие строки из файлов вашего профиля.

Grg
источник
все такой же. В настройках (общая с док-станции) я не могу включить «общие», «стартовый диск» и «уведомление»;] что-то сломано, я думаю. OSX yosmite
user98034
Я знаю. Но сейчас я не могу открыть эти вкладки в общих настройках, так что может быть что-то сломано.
user98034
@ Пользователь А, я понимаю, что ты имеешь в виду. Да, это указало бы на то, что что-то еще не так - возможно, переустановите OS X?
grg
Есть ли простой способ сделать это? У меня есть 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 (выход) Да, Enter
Просто иди
источник
1
Ваш ответ, кажется, не добавляет ничего кроме ответа grgarside.
Джон Н
Это делает: я не могу ввести команду в пути, который предлагает grg. И ответ JustGo дал мне способ, которым я мог запускать команды оболочки, чтобы решить проблему. Я даже не мог взломать точечные файлы в текстовом редакторе: Apple «услужливо» не раскрывает их в поисковике. Так что, если ваша оболочка завершает свою работу так же быстро, как вы ее открываете, как в случае с этой проблемой, это может быть
F1Linux
1

Я знаю, что это старо ... но у меня была та же проблема, и я не мог найти никакой информации, чтобы решить эту проблему, поэтому я решил поделиться решением здесь.

Надеюсь, это поможет кому-то еще. :)

После обновления Mac с OS X 10.6.8 (Snow Leopard) до 10.11.4 (El Capitan) он больше не будет открывать оболочку в терминале. Откроется окно терминала, на котором будет отображаться только [Процесс завершен].

Журнал консоли показал ошибки:

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-терминал /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 /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 с рабочим Терминалом, и Терминал сразу начал работать правильно. 😃

bu11etpr00f
источник
0

Это может быть что-то столь же простое, как некоторые скрытые права доступа. У меня были некоторые проблемы с запуском оболочки, когда я перенес машину на Yosemite, и исправление разрешений позаботилось о проблеме.

Попробуйте использовать функцию «Восстановить разрешения» на загрузочном диске с помощью Disk Utility.app. Надеемся, что во время работы в окне журнала отобразится ряд файлов с неправильными разрешениями. Если у вас есть несколько файлов с плохими разрешениями, промойте и повторяйте, пока не получите чистый журнал.

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

Дастин Уилер
источник
0

Ни одно из других решений не помогло мне. Похоже, что мой терминал выплевывал процесс завершен, потому что у меня было мало места на диске. Удаление файлов не помогло. Мне пришлось удалить мои снимки машины времени.

Стив Мозер
источник
-1

Следующее решило это для меня:

  1. Перейти к: Терминал> Настройки
  2. Прокрутите вниз до: Shell
  3. Изменить /bin/bashна:/bin/sh
vamc
источник
-1
  1. Перейти к значку терминала в Dock, нажмите правую кнопку мыши и нажмите New Command
  2. /bin/bash -x и снова откройте терминал (он показывает вашу проблему)
  3. Перейдите в «Настройки» → «Основные» и установите для «Оболочки» значение «Команда» и введите следующее: /bin/sh
  4. Закройте окно настроек терминала
  5. Снова откройте терминал (он должен работать)
  6. vi /Users/<your_user>/.bash_profileудалите строки, найденные в шаге 2.
  7. Перейдите в «Настройки» → «Основные» и установите для «Оболочки» значение «Команда» и введите следующее: /bin/bash
  8. Откройте терминал, он должен работать сейчас
Фанни Де Сянсоба
источник