Я использую удар после этого испытания?

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

3
12.09.2012, 08:37
2 ответа

Теперь я имею то, что я думаю, проблематичный сценарий, поскольку я на самом деле выполняю 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 выяснять, какие переменные будут экспортируемыми таким образом.

4
27.01.2020, 21:17
  • 1
    Вы учили меня так в Вашем ответе.. Я был полностью забывающим о разности btw set и env! Большое спасибо за Ваш вход, @Jim Париж! –  Robottinosino 16.10.2012, 08:57

Да, Вы все еще используете удар. BASH_VERSION переменная оболочки, не переменная среды: это только определяется в той одной оболочке, это не экспортируется в другие процессы. (См. Различие между переменными среды и экспортируемыми переменными среды в ударе и Что могут иметь переменные оболочки объемов?).

С тех пор $0 шоу -sh, та оболочка является оболочкой входа в систему. Это - удар, но запустилось под именем sh. Когда удар запускается как sh, это ведет себя по-другому: это выключает некоторые определенные для удара функции, чтобы быть более совместимым с другими оболочками.

Не беспокойтесь su команда. Для получения интерактивной оболочки входа в систему как корня работать sudo -i. Можно указать альтернативную оболочку для выполнения, например. sudo -i zsh. Выполнять интерактивную оболочку, которая сохраняет некоторые Ваши переменные среды и не выполняет корень .profile или другие файлы входа в систему, выполненные sudo -s.

1
27.01.2020, 21:17

Теги

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