Как игнорировать подписи при использовании apt update?

Обратите внимание, что имена переменных в верхнем регистре, как правило, небезопасны. $ENV, например, является особенным во многих оболочках. В этих оболочках его значение должно быть путем к файлу, который будет получен перед запуском определенных типов оболочек. Оболочка bashиспользует $ENVв режиме POSIX.

Так, вbash:

declare -A account
account["develop"]=12345678
account["staging"]=9128312
account["production"]=123123

mode=$run_mode

aws events put-targets \
    --rule {{ stack_name | lower }}-hello-world \
    --targets "Id"="1","Arn"="arn:aws:lambda:us-west-2:${account[$mode]}:function:hello-wolrd"

Это устанавливает ассоциативный массив, account, который содержит данные для режимов разработки, подготовки и производства. Затем он определяет используемый нами режим и выполняет команду с правильными данными из массива account. Предполагается, что переменная run_modeявляется переменной окружения, содержащей одну из строк develop, stagingили production.

Ассоциативные массивы были введены в bash4.0.

Я использовал вашу команду awsтак, как вы ее написали (, за исключением добавления новых строк и моей accountпеременной ), хотя {{ stack_name | lower }}-hello-world, вероятно, не соответствует вашим ожиданиям (он попытается выполнить lowerкак команду ). Поскольку я не знаю aws, я не знаю, как это должно выглядеть, но, вероятно, это следует процитировать.


Устранение проблем пользователя mosvy в комментариях:В случае, когда переменные DEV_ACCOUNTи т. д. являются переменными среды, и правильный выбор должен быть сделан на основе того, что представляет собой переменная ENV:

declare -A account
account["DEV"]=$DEV_ACCOUNT
account["STAGE"]=$STAGE_ACCOUNT
account["PRD"]=$PRD_ACCOUNT

mode=$ENV

# the rest as before

0
28.02.2021, 00:22
1 ответ

Если у вас возникла эта проблема, потому что вы загрузили Kali для WSL напрямую в виде пакета.appx (не из магазина MS Store)-Я читал в другом посте, что этот пакет кажется сломанным. (Версия для MS Store у меня работала без проблем)

Но если у вас нет доступа к MS Store --Чтобы решить конкретную проблему недопустимой подписи -, у меня сработало следующее:

wget https://http.kali.org/kali/pool/main/k/kali-archive-keyring/kali-archive-keyring_2020.2_all.deb

apt install./kali-archive-keyring_2020.2_all.deb

как root (или используйте sudo )вторая команда выдает ошибку в конце, которую можно игнорировать. После этого apt -получить обновление работало без проблем.

Если kali -архив -keyring _2020.2 _all.deb был обновлен, вы можете проверить здесь наличие новых версий и изменить ссылку :https://http.kali.org/kali/pool/main/k/kali-archive-keyring/

0
06.05.2021, 15:16

Теги

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