Возвращает статус команды Busybox `timeout`

Сделайте свежую установку самой новой версии Linux Mint на текущий раздел Mint. (Убедитесь, что вы используете то же имя пользователя, что и раньше.) Когда все будет готово, замените вашу копию папки /home на ту, которая находится внутри системы, например, так: sudo cp -r /path/to/your/backup /home/yourusername/

ВАЖНО:

Если вы скопировали всю директорию /home (из корневого каталога), вам нужно скопировать ее в тот же каталог. Но если вы сделали резервную копию только каталога /ваше имя пользователя/ (или ~), вам нужно заменить ту же часть. Вы должны быть абсолютно уверены в том, в какой каталог его вставить, иначе вы можете вызвать серьезные проблемы. Таким образом, все будет восстановлено, только вам придется установить все ваши программы заново, вручную.

Если вам нужна дополнительная информация о том, какие части конфигурации сохранять в резервной копии, посмотрите здесь: Какие каталоги мне нужно резервировать?

5
16.10.2016, 22:03
1 ответ

Alpine Linux, вероятно, имеет более раннюю версию busybox. Простое решение - добавить к исходной команде другую команду, у которой есть побочный эффект, который вы можете проверить, например, запись вывода в стандартный вывод или файл.

Например, предположим, что вам нужен тайм-аут 1 для исходной команды sleep 2 , вместо

timeout 1 sleep 2

do

ok=$(timeout 1 bash -c 'sleep 2; echo ok')

and test $ ok для ок. Очевидно, что если ваша команда пишет в stdout, вам необходимо перенаправить ее, например скопировать на fd 3 и перенаправить на него:

exec 3>&1
ok=$(timeout 1 bash -c 'my command >&3; echo ok')
exec 3>&-

или выполнить echo ok в файл.

3
27.01.2020, 20:41

Теги

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