LINUX.ORG.RU

Нужно ли делать резервную копию /var или /run?

 , ,


1

1

Начал трещать винт и я решил сделать скриптец для резервного копирования, чтобы сохранить всякие настроечки и можно было в случае беды относительно быстро переустановить и перенастроить всё как было.

Понятно, что /etc и $HOME копировать нужно, а всякие /bin и /lib необязательно - их можно заново переустановить.

Собственно вопрос: есть ли что-то полезное в /var и /run, что не может быть полностью восстановлено переустановкой дистрибутива и программ? Например, где хранится список включенных пользователем systemd сервисов и т.п.?


Если хомяка не полностью копируешь, тебя могут заинтересовать конфиги для какой-нибудь утилиты отдельной из ~/.config, или ~/.local/share.
Если хочешь иконки и темы скопировать, они лежат в /usr/share в папках icons, themes, fonts.
Копировать весь /etc смысла не вижу какого-то, если чистую систему ставишь. Файлы конфигов зависят от DE/WM, обычно тож в хомяке. Сервисы сам перепроверишь запущенные.

fehhner ★★★★★ ()

Если у тебя кде, я не рекомендую копировать от него все конфиги, а настроить просто по новой, хотя дело твоё.

fehhner ★★★★★ ()

/run у вас скорее всего tmpfs, так что копировать его вообще смысла не имеет. В /var/lib по дефолту свои данные кладут всякие эластиксерчи и постгресы, так что нужно смотреть по установленным приложениям.

micronekodesu ★★★ ()
Ответ на: комментарий от micronekodesu

У меня сервачёк небольшой крутится, там есть майскуль. Я обычно просто логинюсь и делаю бекап бд, так надёжнее.

fehhner ★★★★★ ()
Ответ на: комментарий от fehhner

Я и на GNOME не конфиги бэкаплю, а в скрипт дописываю вызовы sed с gsettings и установку пакетов с нужными либами\софтом. При необходимости потом анаконде ks файл подсовываю.

mogwai ★★★★ ()
Ответ на: комментарий от micronekodesu

Раз /var какими-то прогами используется, значит буду и его копировать. Ну а /run действительно tmpfs - я мог и сам догадаться глянуть.

смотреть по установленным приложениям.

Ну, не буду же я после установки кадой программы смотреть что она там куда пишет и обновлять скрипт резервного копирования. У меня идея простая: скопировать всё, что не занимает необоснованно много места, а в случае беды потом уже тратить время и разбираться, что там нужное, а что нет.

dsxl ()
Ответ на: комментарий от fehhner

Ну я так и сказал:

Понятно, что /etc и $HOME копировать нужно

Если хочешь иконки и темы скопировать, они лежат в /usr/share

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

dsxl ()
Ответ на: комментарий от mogwai

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

dsxl ()
Ответ на: комментарий от dsxl

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

Ну а вдруг, скачал, установил через графическую приблуду и вылетело из головы? Я напомнил.

fehhner ★★★★★ ()
Ответ на: комментарий от dsxl

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

Так это будет не просто разворачивание бэкапа на чистый диск а вдумчивое в нем копание с выбором нужных данных?

micronekodesu ★★★ ()
Ответ на: комментарий от micronekodesu

Ну да. Чтобы развернуть бекап на чистый диск нужно копировать весь рут. Ну а если делать как я - без /bin, /lib и т.д., - одних конфигов не хватит для восстановления работоспособности.

dsxl ()
Ответ на: комментарий от dsxl

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

micronekodesu ★★★ ()
Ответ на: комментарий от micronekodesu

Спасибо за совет, но мне не подходит.

в случае факапа не придется копаться в бэкапе

Факап - это разовое событие, которое может и не произойти. Считаю нецелесообразным гарантированно терять время на постоянную возню с конфигами. Потом, мне ведь не только конфиги нужно восстановить, но и самодельные скрипты.

Так что простенький скриптец, который без раздумий копирует несколько указанных папок - это оптимальное решение для меня.

dsxl ()
Ответ на: комментарий от micronekodesu

Собственно, он был готов ещё до создания этого треда. Просто добавил строчку для /var

#!/bin/bash

RSYNC="rsync -a --delete-delay"
#RSYNC="rsync -anv --delete-delay" # dry-run
BACKUPS="/run/media/username/LABEL/Backups"

# create package list
pacman -Qqe > ~/data/pacman/installed-explicit.txt
pacman -Qq > ~/data/pacman/installed-with-deps.txt

if [ ! -d $BACKUPS ]; then
    echo "Backup dir doesn't exists: $BACKUPS"
    exit 1
fi

# backup
declare -A map=(
    ["/etc"]="$BACKUPS/etc"
    ["/var"]="$BACKUPS/var"
    ["${HOME}"]="$BACKUPS/home"
)
for key in "${!map[@]}"; do
    echo "Creating backup $key -> ${map[$key]}"
    mkdir -p ${map[$key]}
    $RSYNC $key/ ${map[$key]}/
done

dsxl ()
Ответ на: комментарий от micronekodesu

rsync уже делает какое-то подобие инкременталки, ну а проверять (кроме наличия собственного внешнего носителя) и нечего

dsxl ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.