Рейтинг:4

Терминал, открытый из Терминал, открытый из Файлов, не может найти пользовательские настройки

флаг cn

Я только что выполнил новую установку Ubuntu 21.04 (ранее использовал 20.10) на своем рабочем столе. Однако у меня возникла проблема с терминалом GNOME.

Если я открываю Терминал с помощью сочетания клавиш или контекстного меню на рабочем столе, все работает нормально. Однако, если я открываю Терминал через файловый браузер (Файлы), начальное окно работает нормально, но любые последующие вкладки/окна Терминала, которые я открываю из этого окна, не могут найти настройки моего терминала.

Так:

  • Откройте терминал с помощью сочетания клавиш / контекстного меню рабочего стола: ХОРОШО
  • Откройте новое окно/вкладку Терминала из предыдущего: ХОРОШО
  • Откройте новое окно терминала через контекстное меню «Файлы»: ХОРОШО
  • Откройте новое окно/вкладку Терминала из предыдущего: СЛОМАННЫЙ

Каждый раз четвертая ситуация показывает судо чаевые (поэтому явно не могу найти ~/.sudo_as_admin_successful), показывает текущее местоположение в подсказке как /home/<имя пользователя> скорее, чем ~, не производит вывод для эхо $HOME, и т.д.

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

Я скопировал чистый .профиль и .bashrc от /и т.д./скал/, а также выйти из системы и перезагрузить компьютер, но ничего не помогло.

vanadium avatar
флаг cn
Не могу воспроизвести это в Ubuntu 21.04, хотя мой экземпляр является обновлением, без чистой установки.
Рейтинг:3
флаг cn

Мне удалось это исправить, но я понятия не имею, что произошло.

Исправить

Перейдите в гамбургер-меню окна Терминала > «Настройки» > «Имя профиля» элемент боковой панели > вкладка «Команда» и установите флажок «Выполнять команду как оболочку входа». . Я оставил все остальные настройки, как я их нашел:

введите описание изображения здесь

Re: Комментарий @steeldriver ниже, если я оставлю эту опцию неотмеченной, она будет отключена во всех окнах терминала, как в тех, которые работают, так и в тех, которые не работают. Таким образом, предположительно проверка этого параметра не влияет на изначально работающие окна и вступает в игру только в четвертом, изначально сломанном сценарии.

Объяснение

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

флаг hr
Это может быть "правильный" ответ, но было бы интересно узнать, почему это необходимо - процессы *должны* наследовать рабочую среду от своего родителя, поэтому мне интересно, почему этого не происходит в данном случае?
08915bfe02 avatar
флаг cn
@steeldriver Я немного расширил ответ - AFAICT, процессы *наследуют* родительскую среду.
флаг hr
Спасибо за обновление - на самом деле я имел в виду наследование * переменных среды * (вещи, которые вы увидите в выводе команды `printenv`), а не пользовательские настройки терминала - которые AFAIK хранятся в базе данных dconf, а не унаследовано как таковое.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.