Я не полагаю, что Вы должны. .crt
файл только содержит общедоступную половину ключа, это не содержит копию закрытого ключа, и Вы не изменили содержание закрытого ключа так или иначе — Вы только что перенесли его в симметричном слое шифрования (дешифрованный паролем). Почему Вы полагаете, что необходимо обновить сертификат?
Теперь я имею то, что я думаю, проблематичный сценарий, поскольку я на самом деле выполняю sh для того, что я вижу, это - моя оболочка входа в систему для корня, в конце концов, но мне установили переменную среды BASH_VERSION от моего более раннего входа в систему, проведенного с помощью sudo механизма? Исправьте меня, если я неправ.
К счастью, Вы неправы. BASH_VERSION
и переменные аналогичной среды установлены, но не экспортированы, таким образом, они не существуют для дочерних процессов.
Сравните вывод:
set | grep ^BASH
с
env | grep ^BASH
Оба set
и env
переменные среды дисплея. set
встроенная оболочка, и она видит BASH_*
переменные. env
внешняя программа, и Вы заметите, что она не видит BASH_*
переменные вообще.
Если бы Вы действительно хотели экспортировать те переменные в дочерние процессы, то Вы могли бы сделать это вручную, и затем это обнаружилось бы в env
:
$ export BASH_VERSION
$ env | grep ^BASH
BASH_VERSION=4.2.36(1)-release
Но если Вы вручную не экспортировали их как это, можно быть абсолютно уверены что присутствие BASH_VERSION
средства, что Вы на самом деле выполняете удар. См. также вывод export -p
выяснять, какие переменные будут экспортируемыми таким образом.
Да, Вы все еще используете удар. BASH_VERSION
переменная оболочки, не переменная среды: это только определяется в той одной оболочке, это не экспортируется в другие процессы. (См. Различие между переменными среды и экспортируемыми переменными среды в ударе и Что могут иметь переменные оболочки объемов?).
С тех пор $0
шоу -sh
, та оболочка является оболочкой входа в систему. Это - удар, но запустилось под именем sh
. Когда удар запускается как sh
, это ведет себя по-другому: это выключает некоторые определенные для удара функции, чтобы быть более совместимым с другими оболочками.
Не беспокойтесь su
команда. Для получения интерактивной оболочки входа в систему как корня работать sudo -i
. Можно указать альтернативную оболочку для выполнения, например. sudo -i zsh
. Выполнять интерактивную оболочку, которая сохраняет некоторые Ваши переменные среды и не выполняет корень .profile
или другие файлы входа в систему, выполненные sudo -s
.
set
иenv
! Большое спасибо за Ваш вход, @Jim Париж! – Robottinosino 16.10.2012, 08:57