#!/bin/bash
# Read ip.txt and names.txt into arrays 'ips' and 'names'. This assumes that
# the files have the same number of lines, and that both files are in the
# correct order (i.e. line N of ip.txt corresponds to line N of name.txt),
# so that the indices for both arrays match.
mapfile -t ips < ip.txt
mapfile -t names < name.txt
# Don't use all-caps variable names in your own scripts, they're probably already
# used by other programs. $USER certainly is. Use lowercase variable names.
user="ubuntu"
key="test.pem"
for i in "${!ips[@]}"; do
knife bootstrap "${ips[$i]}" -ssh-port 22 \
--ssh-user "$user" --sudo --i "$key" \
--no-host-key-verify -N "${names[$i]}" --run-list "role[webserver]"
done
ПРИМЕЧАНИЕ:mapfile
— это bash
, встроенный -. Это синоним readarray
.
Также обратите внимание, :я не запускаю chef
здесь, поэтому я понятия не имею, будет ли ваша команда knife bootstrap
делать то, что вы хотите. Я предположил, что синтаксис правильный и вы использовали соответствующие параметры.
Я пытался сделать что-то в одиночку (да, я сам отвечаю на свой вопрос. Я запаниковал )и сделал это, чтобы повторно -получить доступ к своему аккаунту:
mount
. sudo
я открыл /etc/default/grub в текстовом редакторе Я не эксперт ни в системах Linux, ни в программировании, поэтому я не знаю, был ли это хороший метод. В любом случае, я подумал об этом, потому что нашел в /boot/grub/grub.cfg:
`if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root
--hint='cryptouuid/HEX_string_of_my_encrypted_disk'
else
search --no-floppy --fs-uuid --set=root HEX_string_of_the_swap_partition
Так что я подумал, что в качестве загрузочного диска выбирается раздел подкачки моего криптодиска вместо фактического криптодиска, и поэтому я искал вариант, написанный выше, и -прокомментировал его.
Сейчас система работает нормально, но вначале через экран было отправлено сообщение, похожее на:
hibernation device not found
или что-то очень похожее. Что, я думаю, просто ожидаемо, так как у меня больше нет памяти подкачки.
Итак, это ОДНО решение, опять же, не уверен, что оно лучшее.