Как sudo обрабатывает $HOME по-другому с тех пор 19.10?

В выпусках Ubuntu до Ubuntu 19.10 Горностай Eoan, когда я выполняю команду с sudo, та команда получает мой корневой каталог в $HOME переменная среды. Это - поведение, о котором я долго ожидал и предупреждал других людей. Если я хочу sudo сбрасывать $HOME переменная среды, так, чтобы это обратилось к корневому каталогу целевого пользователя вместо моего собственного, я должен передать -H опция (или -i, хотя это делает больше).

ek@Kip:~$ lsb_release -d
Description:    Ubuntu 18.04.3 LTS
ek@Kip:~$ sudo printenv HOME  # Shows ek's home, not root's.
/home/ek
ek@Kip:~$ sudo -u as printenv HOME  # Shows ek's home, not as's.
/home/ek
ek@Kip:~$ sudo -H printenv HOME  # Shows root's home.
/root
ek@Kip:~$ sudo -Hu as printenv HOME  # Shows as's home.
/home/as

Когда я сначала обновил до Ubuntu 19.10, я был удивлен обнаружить это sudo кажется, сбрасывает $HOME независимо от того, что! Я продолжаю наблюдать это теперь, когда 19.10 выпущен, и я установил обновления - и в недавно установленных системах, и один я обновил до 19,10.

ek@Cord:~$ lsb_release -d
Description:    Ubuntu 19.10
ek@Cord:~$ sudo printenv HOME  # Shows root's home, even without -H or -i.
/root
ek@Cord:~$ sudo -u as printenv HOME  # Shows as's home, even without -H or -i.
/home/as
ek@Cord:~$ sudo -H printenv HOME  # Also shows root's home.
/root
ek@Cord:~$ sudo -Hu as printenv HOME  # Also shows as's home.
/home/as

Я думал, что это могло бы произойти из-за обновленных конфигурационных файлов. Но я проверил, и always_set_home не появляется ни в ком Defaults строка в моих 19.10 /etc/sudoers файл.

Что делает sudo обработка $HOME по-другому начиная в 19,10, и почему это изменение было внесено? Делает это делает безопасным использовать плоскость sudo в случаях, где я ранее использовал бы sudo -H?

64
задан 7 November 2019 в 07:00

1 ответ

В течение многих лет Ubuntu поставляла исправленную версию sudo это сохраняет $HOME по умолчанию. Помимо Ubuntu и ее производных, очень немного других операционных систем (возможно, никакие другие) делают это. Было решено, чтобы это вызвало больше проблем, чем это решает, и запускающийся в Ubuntu 19.10, $HOME больше не одна из нескольких переменных среды sudo сохраняет.

С точки зрения того, что изменение и как оно влияет на пользователей, ключевые пункты:

  • С Ubuntu 19.10, sudo command делает что sudo -H command делает в предыдущих выпусках. Это может действительно использоваться в случаях, которые ранее советовали бы sudo -H, включая запустить приложения GUI как корень или другого пользователя. При запущении графических программ, поскольку корень вообще остается спорным. Но в 19,10 можно работать sudo gedit с тем же самым эффектом как sudo -H gedit. В 19,10, управляет как sudo gedit больше не создавайте раздражающие проблемы принадлежности файла в своем корневом каталоге.
  • Это применяется даже на системы, обновленные до 19,10 от более раннего выпуска, даже когда обновление не изменяет Ваш /etc/sudoers файл. Изменение находится в исходном коде sudo сама программа, не в ее конфигурационных файлах по умолчанию. (Это может быть переопределено в a sudoers файл, но Вы, вероятно, знали бы, сделали ли Вы это.)
  • Это не делает - и не будет - относиться к выпускам до 19,10. Прежде 19.10, sudo сохраняет $HOME по умолчанию, и будущее обновляет к sudo не изменит это. Например, 18.04 LTS будут всегда иметь старое поведение, даже в будущих доработанных версиях.
  • sudo -H command все еще хорошо работает. Если Вы имеете привычку использовать это, без проблем. Вы просто не имеете к в 19,10 системах.
  • Большинство команд Вы работаете с sudo не будет вести себя по-другому. В подавляющем большинстве ситуаций, куда Вы не передали бы -H, Вы могли иметь. Некоторые пользователи действительно полагаются или иначе предпочитают старое поведение сохранения $HOME. Но это часто имело непреднамеренные эффекты. Таким образом, при доверии этому Вы все еще не могли бы хотеть переопределять изменение в a sudoers файл.

См. также ответ WinEunuuchs2Unix на то, Почему пользователи никогда не должны использовать нормальный sudo для запущения графических приложений?


Почему изменение

Как журнал изменений выражается (под "sudo (1.8.27-1ubuntu2) eoan"):

Это восстанавливает обработку sudo $HOME к тому, что все остальные делают

"Все остальные" обращаются к восходящему потоку sudo проект (размещенный здесь) и также по-видимому все другие операционные системы, которые содержат sudo, кроме тех, которые происходят из Ubuntu.

Существует больше к нему, все же. Это, как также полагают, исправляет ошибку безопасности, как описано в патче Ubuntu для добавления ДОМОЙ к env_keep делает пользовательские команды уязвимыми по умолчанию. История была кратко получена в итоге в этом комментарии там Steve Langasek (кого Вы, возможно, услышали о), который я заключаю в кавычки полностью:

Это изменение было первоначально представлено в ответ на ошибку № 760140.

Восходящее изменение в sudo никогда не сопровождалось CVE, и изменение поведения никогда не применялось к предыдущим релизам Ubuntu, таким образом, это не казалось безопасностью, чувствительной в то время.

Я не настроен против изменения этого для поведения способа, которым описывает Simon, но я подчиняюсь Службе безопасности здесь.

Todd C. Miller, который поддерживает восходящий поток sudo проект (очень активно, и много лет теперь), также попросился входа по проблеме. Он объяснил причину sudo сброс (т.е. не сохраняет), $HOME:

В четверг, 16 мая 2019 7:48:40 - 0400, Dan Streetman записал:

У меня есть cc'ed sudo-пользователи, таким образом, вопрос восходящему потоку sudo список может быть получен в итоге как:
Как, вероятно, это было бы для восходящего потока sudo для добавления ДОМОЙ к env_keep по умолчанию?

Крайне маловероятно. До sudo 1.7.4 ДОМАШНИЕ и ПОЧТОВЫЕ переменные среды были сохранены в среде по умолчанию. Это может привести к программам с помощью файлов конфигурации корневой каталог исходного пользователя, который имеет последствия безопасности, таким образом, значение по умолчанию было изменено в 1.7.4.

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

Мы спрашиваем, потому что Ubuntu несет патч, который добавляет ДОМОЙ к env_keep, в отличие от значения по умолчанию в восходящем направлении или любого другого Linux/Unix. Мы рассматриваем удаление, которые исправляют, для соответствия восходящим значениям по умолчанию, не включая ДОМ в env_keep.

Я поддержал бы это. Я полагаю, что сброс ДОМОЙ является более безопасным значением по умолчанию.

- todd

(Я изменил форматирование из исходного сообщения для отображения правильно в этом носителе.)

С 19,10, нисходящий поток sudo в Ubuntu ведет себя как восходящий поток sudosudo в других операционных системах, включая Debian), много лет вели себя. Для более подробной информации об истории этого изменения и разработок, которые предшествовали, это, включая многочисленные ссылки для дополнительных материалов для чтения, видит"sudo и $HOME: Прошлые 20 лет" разделяют ниже.

Ха? иначе. Почему это (иногда) имеет значение что sudo делает с $HOME

Программы Вы выполняете ту потребность местоположение Вашего корневого каталога часто, исследуют значение $HOME переменная среды. Один важный случай - когда программа пытается сохранить и получить доступ к конфигурационным файлам в корневом каталоге пользователя, выполняющего его. Программы обычно идут значением $HOME. Иногда, когда Вы запускаете программу как пользователь замены - например, как корневая учетная запись - она обращается, чтобы иметь то использование программы Ваши настройки. Но это может также стать грязным двумя способами:

  1. Обычно при выполнении команды как другой пользователь Вы хотите, чтобы она работала главным образом тот же путь, как будто тот пользователь выполнил ее. Но если это - команда, поведение которой может быть радикально изменено тем, что Вы выполнили его - который происходит, если его поведение в большой степени настраивается данными, считанными из файлов, найденных в каталоге, названном в $HOME- затем эта цель не достигается.

    Когда Вам разрешают выполнить любое действие, Вы выбираете как любой пользователь включая корень (который в Ubuntu присужден членством в sudo группа), проблемой является главным образом один из несчастного случая. Однако, если Вы - ограниченный пользователь, и Вам разрешили выполнить только определенные команды с sudo, затем способность управлять, что делают те команды, имеет серьезные последствия безопасности. Отчет об ошибках, который привел к изменению в 19,10, был конкретно мотивирован той проблемой (и включает востребованный пример его).

  2. Если Вы выполняете команду как другой пользователь, и команда делает изменения в свою конфигурацию в каталоге названными в $HOME, попытка предпринята для записи изменений в файлах в том месте. Когда пользователь замены не является корнем, как в sudo -u username command, это обычно приводит к сбою и производит сообщения об ошибках, который является мягко раздражающим, но не серьезным.

    Но в общем падеже, в котором пользователь замены является корнем, как sudo command, это успешно выполняется, но если какие-либо новые файлы создаются, они принадлежат корню, и Ваша учетная запись пользователя больше не имеет полный доступ ко всем своим собственным конфигурационным файлам. Это может быть зафиксировано chownлуг файлы назад, таким образом, проблема является самой серьезной в случае графических приложений, сложность которых может сделать его так больше файлов в большем количестве мест, включен (и где это, как сообщали, иногда делало вход в систему трудным, хотя обычно проблема менее серьезна, чем это).

Что изменилось, и почему все 19,10 систем имеют изменение

Короткий белый список переменных среды, которые не сбрасываются по умолчанию, трудно кодируется в sudo самостоятельно. В релизах Ubuntu до 19,10, добавляет определенный для Ubuntu патч $HOME к этому белому списку. Это компилируется в двоичный файл, используемый sudo, так обновление до версии sudo это не имеет патча, удаляет его из белого списка.

Патч был удален в 19,10. Так обновление до 19,10 или выше будет всегда применять изменение, даже когда никакие конфигурационные файлы, связанные с sudo изменяются.

Все еще возможно настроить любую версию sudo сохранить $HOME (см. ниже). В чрезвычайно необычном случае, что Вы сделали это прежде 19.10 - когда такая конфигурация не будет иметь никакого значения - и сохранять ту конфигурацию через обновление, $HOME был бы все еще сохранен. Но Вы, по-видимому, помнили бы сделавший эту странную вещь.

Если Ваше обновление 19,10 (или позже) привело к сбою и дало Вам единственную частично обновленную систему с версией sudo до 19,10, затем sudo в той системе все еще сохраняет $HOME по умолчанию. Это - почти единственный случай где sudo сохранил бы $HOME в 19,10 (или позже) без Вас знающий об этом - хотя Вам все еще сообщили бы, во время обновления версии, что не все пакеты могли быть обновлены.

Самый легкий способ видеть непосредственно, что патча не стало в исходном коде sudo в Ubuntu 19.10 должен сравнить https://git.launchpad.net/ubuntu / + source/sudo/tree/debian/patches? h=ubuntu/disco-security к https://git.launchpad.net/ubuntu / + source/sudo/tree/debian/patches? h=ubuntu/eoan.

Однако, если Вы не уверены, как Ваша система настроена, можно работать sudo printenv HOME узнать.

Сброс $HOME в Ubuntu 19.04 и ранее

Хотя обновления sudo в Ubuntu 19.04 и ранее может включать изменения в документации для объяснения ситуации, пути sudo обработки $HOME в тех выпусках не был и не будет изменен никакими обновлениями. Большинство пользователей не захочет потрудиться вручную изменяться как sudo работы над системами, где они уже используют его без проблем. Однако, если Вам нравится, можно сделать sudo сброс $HOME в тех системах, даже не обновляя их.

Какое-то конкретное время Вы работаете sudo, можно использовать -H/--set-home опция сбросить $HOME:

sudo -H command

Или можно использовать -i. Это действительно больше, чем сбрасывает $HOME. sudo -i command ведет себя, как будто Вы вошли в систему как корень, работал command, и вышел из системы; sudo -i отдельно ведет себя, как будто Вы вошли в систему как корень и размещаете Вас в интерактивную корневую оболочку. Это отличается от sudo -s, который запускает интерактивную оболочку, которая не является оболочкой входа в систему. Перед Ubuntu 19.10, sudo -s сохраняет $HOME; то есть, независимо от версии, -s опция не несет поведения, которое влияет как $HOME рассматривается. Это значимо для использования -H и -s вместе. Можно также использовать любой из -H, -i, и -s с -u user стать user а не корень. Наконец, использование sudo через графический frontends gksu или gksudo (все еще доступный в 16.04 LTS, хотя Вы, возможно, должны установить gksu пакет) сброс $HOME.

Если Вы хотите реконфигурировать sudo так, чтобы это всегда сбрасывало $HOME, можно включить always_set_home опция в a sudoers файл:

Defaults    always_set_home

Вы добавили бы ту строку к /etc/sudoers или, лучше, в новый файл в /etc/sudoers.d/. Так или иначе необходимо использовать visudo отредактировать файл, таким образом, Вы извлекаете пользу из проверки синтаксиса. (Синтаксическая ошибка в любом sudoers причины файла sudo отказаться работать вообще. Это - стычка, хотя она может быть зафиксирована.)

Например, в некоторых из моих пред19.10 систем, я создал и отредактировал /etc/sudoers.d/always_set_home путем выполнения:

sudo visudo -f /etc/sudoers.d/always_set_home

В файле я записал вышеупомянутое Defaults строка. Имя файла не должно быть always_set_home- это может быть тем, что Вы любите, пока это содержит нет . или ~ символ. Слово на Defaults строка действительно, конечно, должна быть точно always_set_home.

(Одна причина предпочесть делать новый файл в /etc/sudoers.d/ к изменению существующего /etc/sudoers файл - это, если будущее обновление когда-нибудь изменяет значение по умолчанию /etc/sudoers файл, можно принять новый файл, не теряя настройки. Другая причина состоит в том, что сразу ясно, что Вы изменили конфигурацию, и где Ваши изменения могут быть найдены.)

Если Вы делаете это и более позднее желание выполнить человека sudo команда, которая сохраняет $HOME, можно сделать это тот же способ, которым Вы сделали бы это в 19,10 (см. ниже).

Сохранение $HOME в Ubuntu 19.10 и позже

Путь sudo обработки $HOME был изменен по причине. (См. вышеупомянутые разделы, а также подробный раздел истории ниже.), Но если Вы действительно хотите сделать sudo продолжите сохранять $HOME, даже в 19,10 и позже, можно настроить это поведение в a sudoers файл.

Какое-то конкретное время Вы работаете sudo, можно сказать этому сохранять $HOME с --preserve-env=HOME:

sudo --preserve-env=HOME command

Это - форма --preserve-env это документируется как --preserve-env=list в sudo страница справочника. Также возможно использовать --preserve-env без операнда списка, который совпадает с -E; это сохраняет все переменные среды. Но редко существует серьезное основание сделать это, особенно если Ваша цель состоит в том, чтобы только сохранить $HOME. Если Вам не нравится вводить --preserve-env=HOME, Вы могли определить псевдоним оболочки или окружить функцию или записать сценарий, который позволяет Вам выполнить более короткую команду, чтобы сделать это. Еще лучше должен был бы редко сохранять $HOME (см. раздел ниже по альтернативам выполнению так).

В более общем плане можно сделать sudo сохраните какую-то конкретную переменную среды varname с --preserve-env=varname. (Можно также видеть код, который эффективно сохраняет $HOME путем установки его явно в команде sudo выполнения, такой как с sudo HOME="$HOME" command. Это также работает. Это очень отличается от HOME="$HOME" sudo command, который не сохранил бы sudo от сброса $HOME.)

Или если Вы действительно хотите сделать sudo всегда сохраняйте $HOME, можно сделать это путем добавления $HOME кому: env_keep в a sudoers файл:

Defaults    env_keep += "HOME"

Это может войти /etc/sudoers или файл в /etc/sudoers.d/. Хотя я подчеркиваю, что не рекомендую делать это вообще, если бы Вы решаете сделать это затем, я предложил бы создать и отредактировать /etc/sudoers.d/keep-home (назовите файл, что Вы любите, пока имя не содержит . или ~) путем выполнения:

sudo visudo -f /etc/sudoers.d/keep-home

Затем можно поместить это Defaults строка в файле.

Причина использовать += вместо просто = это существует горстка других переменных среды, трудно кодированных в sudo самостоятельно, это сохраняется по умолчанию, и что Вы, вероятно, хотите сохраненный. Если Вы использовали =, затем только переменные среды, которые Вы перечислили явно в файле, будут сохранены. В этом случае это было бы справедливо $HOME. Больше информации о грамматике sudoers файлы доступны в sudoers (5).

Что касается того, почему я предлагаю делать файл в /etc/sudoers.d/ вместо редактирования /etc/sudoers- и почему необходимо определенно использовать visudo так или иначе - см. мои комментарии в "Сбросе $HOME в Ubuntu 19.04 и ранее" разделяют выше.

Альтернативы сохранению $HOME

Большую часть времени Вы используете sudo, лучшая альтернатива сохранению $HOME ничего не должен делать. Большинство sudo команды имеют тот же эффект (и некоторая работа немного лучше) без $HOME сохраненный. Однако я знаю о двух популярных вариантах использования для сохранения $HOME.

Используя Вашу конфигурацию текстового редактора и/или плагины для редактирования файлов, принадлежавших корню или другому пользователю. sudoedit, или эквивалентно sudo -e, идеальная альтернатива для этого. Это выполняет редактора как Вас, Вы редактируете временную копию файла, и файл обновляется при выходе из редактора. Так как редактор работает как Вы, это использует Вашу конфигурацию и плагины автоматически, и делает так без любого риска сбоя непрозрачными и неожиданными способами с отклоненными ошибками или созданием разрешения файлов в Вашем корневом каталоге, недоступном Вам. Отредактировать file:

sudoedit file

Отредактировать file с editor вместо редактора по умолчанию:

SUDO_EDITOR=editor sudoedit file

Например, SUDO_EDITOR=vim sudoedit /etc/apt/sources.list редактирования /etc/apt/sources.list с vim.

Решить что редактора использовать, sudoedit консультируется с переменной среды $SUDO_EDITOR; если это сброшено, это консультируется $VISUAL; если это сброшено, это консультируется $EDITOR; если это сброшено, это пробует команды редактора из трудно кодированного списка, который на практике в Ubuntu означает, что это использует editor. Обычно это разрешает /usr/bin/editor, который является символьной ссылкой. Если Вы хотите изменить редактора по умолчанию в масштабе всей системы затем, можно измениться что /usr/bin/editor точки к путем выполнения sudo update-alternatives --config editor. Можно также установить одну из тех трех переменных среды, которая является хорошим способом измениться что sudoedit редактирования с всего для одного пользователя.

При создании программ, которые Вы только запускаете, поскольку корень использует определенные конфигурационные файлы. Если программа, которую Вы запускаете как корень, заглядывает $HOME для его конфигурации затем можно просто вставить ту конфигурацию (или перемещение что конфигурация к) корневой каталог корня, /root.

Сброс $HOME когда Вы не знаете то, что выпускает, Вы используете

Можно иногда писать команду и не знать, на каком релизе Ubuntu (или что операционные системы помимо Ubuntu) она будет работать. Например, можно писать сценарий, что Вы будете работать на нескольких машинах.

sudo продолжает принимать -H опция, с тем же эффектом это всегда имело. Это просто происходит что, запускающийся на 19,10, sudo без -H делает то же самое (если Вы не настроили его, чтобы сделать иначе), как sudo -H.

Записать портативный sudo команды, которые сбрасывают $HOME, можно продолжить использовать:

sudo -H command

(Также как прежде, если все действия, выполненные в Вашем сценарии, должны быть сделаны как корень, вероятно, лучше не использовать sudo в Вашем сценарии и просто запущенный скрипт как корень с sudo.)

sudo и $HOME: Прошлые 20 лет

На рубеже веков, восходящем потоке sudo проект, представленный env_reset опция, которая делает sudo сброс большинство переменных среды. Эта опция включена, если не отключено явно в a sudoers файл. (Возможно включить его явно, который Defaults env_reset в Debian и Ubuntu /etc/sudoers файл делает, но это не на самом деле необходимо.) Прежде sudo имел env_reset, все переменные среды были сохранены неизменные. С env_reset, была сохранена только горстка переменных. Это включало $HOME.

В июле 2010, $HOME был удален из того маленького белого списка и таким образом больше не сохранялся по умолчанию.

В сентябре 2010, отчет об ошибках о документировании этого в sudo пакет в Debian был зарегистрирован. Насколько я могу сказать, не было никакого противоречия о, или возражение на, само изменение, от разработчиков Debian. (Но посмотрите ниже.)

В феврале 2011 изменения произошли далее ниже Debian разработчикам Ubuntu и Ubuntu, обсудил, было ли это желательно.

В апреле 2011 об изменении сообщили как ошибка, сославшись на то обсуждение. (О некотором поведении, следующем из изменения, сообщили как ошибка за день до этого.), По крайней мере, в то время, это считалось, регрессия ("специалист по обслуживанию Debian уже попытался зафиксировать это однажды, но кажется, что фиксация была неполной"). Я не нашел никакой подобный отчет об ошибках Debian, но это не означает, что не было того; кроме того, изменение, возможно, было внесено без одного. Я подозреваю, тем не менее, что это, возможно, была ошибочная ссылка на ту ошибку документации.

На следующий день релиз разработки Ubuntu был обновлен с нисходящим, патчем только для Ubuntu, чтобы повторно добавить $HOME к списку переменных среды sudo сохраненный по умолчанию. Я полагаю, что это было сделано быстро, чтобы превратить его в релиз Ubuntu 11.04. Эффект был этим sudo в 11,04, как в предыдущих релизах Ubuntu, сохраненных $HOME по умолчанию.

В ноябре 2011 об ошибке сообщили о как документация для sudo в сказанной Ubuntu $HOME был сброшен. Таким образом, страница справочника в Ubuntu правильно описала поведение восходящего потока sudo но не исправленное поведение в Ubuntu.

В сентябре 2014 об ошибке сообщили, указав на некоторые проблемы с наличием sudo сохранить $HOME по умолчанию и утверждение, что проблема с запущением графических программ с нормальным sudo не то, что это по сути опасно (часто цитируемый к этой странице Wiki), но что sudoнеобычная обработка $HOME в Ubuntu делает это опасным и должен считаться ошибкой. Кажется, что был значительный интерес к этому отчету об ошибках, включая от разработчиков Ubuntu, даже при том, что пройдет некоторое время, прежде чем это было бы зафиксировано.

В марте 2016, ошибка, которая позже стала бы основной ссылкой для проблем с sudo сохранение $HOME сообщался. Первоначально, этот отчет об ошибках сфокусировался конкретно на проблеме безопасности, что пользователи, которые не являются администраторами (т.е. не может выполнить произвольные команды как корень), но кому разрешили выполнить определенные команды с sudo, может злонамеренно изменить поведение некоторых программ и в некоторых случаях даже получить полный контроль над системой. Это рекомендовало узкое изменение, которое попытается обратиться к тому случаю а именно, при тихом наличии $HOME сохраненный, когда члены sudo команды выполнения группы как корень или другой пользователь.

В апреле 2019 об ошибке сообщили, возразив против поведения sudo сохранение $HOME по умолчанию, даже когда sudo -s используется.

Позже в том месяце, обсуждение, возобновленное на ошибке в марте 2016, к возможному разрешению удаления определенного для Ubuntu патча в целом. Это расширило фокус того отчета об ошибках вне определенной уязвимости системы обеспечения безопасности, которую он описал. Цель создания sudo в обработке Ubuntu $HOME тот же путь в восходящем направлении sudosudo в других операционных системах), рассматривает, это, запускающийся в Ubuntu 19.10, было ясно сформулировано.

В мае 2019 об ошибке сообщили о том, как программы (включая неграфические программы), что использование launchpadlib переносит проблемы владения конфигурационного файла потому что sudo сохраняет $HOME.

Неделю спустя другое обсуждение списка рассылки, "как sudo обрабатывает $HOME", произошло (см. также эту страницу архива), демонстрируя диапазон представлений, на как sudo должен рассматривать $HOME. Одно предпочтение, которое было бесспорно, было то, что, если изменение должно было быть внесено, это должно только быть к 19,10 и позже и не быть сделано в любых обновлениях для предыдущих выпусков. Вопрос возник ли в восходящем направлении sudo продолжил бы сбрасывать $HOME в будущих версиях.

Восходящий поток sudo специалист по обслуживанию при консалтинге об этом ясно дал понять, что никакое такое восходящее изменение не планируется и поддерживало представление что нисходящая версия sudo в Ubuntu должен также сбросить $HOME по умолчанию. То сообщение, добавленное первоначально в sudo-пользовательском списке рассылки, было заключено в кавычки в комментарии об отчете об ошибках в марте 2016.

В июне 2019 разработчики Ubuntu планировали удалять патч, который делает sudo в Ubuntu сохраняют $HOME.

Приблизительно неделю спустя изменение было внесено в репозиториях Ubuntu. Это изменение применяет запуск в 19,10. Единственное изменение, которое будет внесено, чтобы sudo в более ранних выпусках должен обновить документацию так это ясно и правильно описывает поведение sudo в тех выпусках.

Выражение признательности

84
ответ дан 22 November 2019 в 23:34

Другие вопросы по тегам:

Похожие вопросы: