удалили /etc/pam.d/common

Динамические имена переменных сложны в bash, но их можно сделать с помощью перенаправления переменных.

numbers=(0 1 2 3 4 5 6 7 8)
colors=(red blue green)
loop_sequence=(numbers numbers colors numbers colors colors)

# keep track of where you are in each array
declare -A idx=([numbers]=0 [colors]=0)

for varname in "${loop_sequence[@]}"; do 
    tmp="${varname}[${idx[$varname]}]"   # construct the array reference
    echo "$varname => ${!tmp}"           # variable indirection gets the value
    (( idx[$varname]++ ))
done

выходы

numbers => 0
numbers => 1
colors => red
numbers => 2
colors => blue
colors => green

Чтобы бесконечно повторять последовательность loop_sequence, вы можете:

declare -A idx=([numbers]=0 [colors]=0)
# store the array sizes for convenience
declare -A size=([numbers]=${#numbers[@]} [colors]=${#colors[@]})
while true; do 
    for varname in "${loop_sequence[@]}"; do 
        tmp="${varname}[${idx[$varname]}]"
        echo "$varname => ${!tmp}"
        # loop the array index
        (( idx[$varname] = (idx[$varname]+1) % size[$varname] ))
    done
done | less
1
09.09.2018, 23:37
1 ответ

Если ваша веб-консоль имеет доступ к редактированию Grub,вы можете изменить часть init=строки загрузки на:init=/bin/bash

Это приведет вас прямо в оболочку bash.

Оттуда вам нужно будет перемонтировать систему с чтения -только на чтение -запись.

mount -o remount,rw /

Как только система прочитает -запись, вы сможете восстановить свои файлы.

Также пока там, при желании, можно установить пароль root.

-1
28.01.2020, 02:11

Теги

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