Как работают резервные копии, использующие LVM?

Если вы делаете многое с преобразованием json в командной строке, это стоит вашего времени, чтобы получить инструмент jq и научиться использовать его.

http://stedolan.github.io/jq/

Хотя ответы выше показывают, что вы можете сделать минимальные преобразования без фактического разбора json, в конечном итоге вы либо заново изобретете buggy json parser через regexp или вернетесь к использованию собственного json parser на вашем языке выбора.

jq является быстрым, простым в использовании и очень удобным инструментом, чтобы иметь в вашем инструментарии.

BWT, ваши тестовые данные недействительны json, что усложнит приведенные выше решения. Если вы исправите его на

{ "a":123 , "b": "sd", "c": "x45", "d": 1, "e": "" }
{ "a":5 , "b": "bfgg", "c": "x4c", "d": 31, "e": "" }

Тогда эта команда jq действительно захочет, чтобы

 jq -c '{a,b,c}' test.json

{"a":123,"b":"sd","c":"x45"}
{"a":5,"b":"bfgg","c":"x4c"}

-121--78057-

С помощью smbclient , установленного на машине * nix, вам вообще не нужно монтировать общий ресурс Windows. Например, чтобы получить файл C :\Directory\file.txt и скопировать его в/tmp на компьютере с Linux, выполните следующие действия:

smbclient '//windowsserver/c$' -c 'lcd /tmp; cd Directory; get file.txt' -U administrator%password

Для получения дополнительной информации см. https://superuser.com/a/562728/48742 . Это обсуждалось там.

-121--40865-

Да, ваша стандартная версия не является POSIX-стандартной, как вопрос, связанный с примечаниями. Однако следующее:

if some-command args; then ...

Я бы сказал, что это единственная портативная форма , если , так как, это то, о чем , если все. если что-то делает, если some-command (которая может быть функцией, конструкцией оболочки или исполняемым файлом 1 ) возвращает 0 для аргументов и входных данных, с которыми она выполняется.

При запуске , если [] или , если [[]]] , и [[]] - это программы или сборки оболочек, возвращающие 0 , если условие имеет значение true. При преобразовании [ в test вы увидите, что форма всегда выполняется без скобок:

if [ ... ]
# same as 
if /bin/test ...

1 Для большей точности рассмотрим, как , если конструкция определена :

Команда , если должна выполнить составного списка и использовать ее выход для определения необходимости выполнения другого составного списка .

Формат конструкции if следующий:

 if compound-list
тогда
составный список
[elif компаунд-лист
тогда
компаунд-лист]...
[остальное
компаунд-лист]
fi

Обратите внимание, что составной список не совпадает с составной командой .

0
15.05.2015, 01:56
1 ответ

Я думаю, что вы пропустили раздел '13 .4.3. Сделать резервную копию ». LVM можно использовать, чтобы принять копию данных в момент времени, поэтому у вас есть последовательный ** изображение этих данных. Таким образом, вы можете использовать другой инструмент (например, tar, fbackup etc) для выполнения фактического резервного копирования. Если вы хотите использовать LVM в качестве механизма резервного копирования само по себе, да, вам нужно сделать снимок LVM.

** В примере появляются снимки LVM (с этикетки) для баз данных. Любое приложение или базу данных, работающая на LVM, должна быть остановлена ​​перед снимком, чтобы обеспечить согласованность (если база данных / приложения не имеет поддержки для резервных копий LVM).

2
28.01.2020, 02:36

Теги

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