LINUX.ORG.RU

Как лучше именовать файлы и папки для бэкапов?

 


1

1

Допустим, есть папку folder1, которую мне надо бэкапить. Или файл file1. Как вы обычно их именуете, когда делаете бэкапы, например, раз в неделю:

1. просто folder1 и file1? 2. folder1_03_12_2015 и file1_03_12_2015?

В 1ом случае даты можно будет посмотреть в аттрибутах файла и поэтому не нужно заморачиваться с именованием того, что бэкапишь. Хотя, эти даты могут затереться, например, при синхронизации. Во 2ом случае все понятнее, но надо делать небольшую лишнюю работу по переименованию папки и файла.

Лучше даты указывать в виде «ГОД_МЕСЯЦ_ДЕНЬ», тогда список будет сразу сортированным.

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

YYYY - год, 4 цифры. MM - месяц, 2 цифры. DD - день, 2 цифры

XShell
()

Для себя решил, что «_YYYY_» слишком много. Первые две цифры изменятся очень не скоро, а «_», если их много, набирать не удобно да и имя файла выглядит слишком длинным. Поэтому «file_yymmdd», если есть риск совпадения имён файлов то «file_yymmdd_HHMMSS».

redo
()

Допустим, есть папку folder1

Лучше вместо папка употреблять более подходящий термин - каталог или директория

lukman
()
Ответ на: faceplam от anonymous

1. Snapshot - Android Apps on Google Play 2. VCSSYSTEMS

Bjor
()

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

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

Это если надо просто хранить файлы как есть.

$ tree arh
arh
├── proj_xxx_2016-05-12-08-02-17
│   └── proj_xxx
│       ├── xxx.c
│       └── xxx.h
├── proj_xxx_2016-11-06-16-02-17
│   └── proj_xxx
│       ├── xxx.c
│       └── xxx.h
└── proj_xxx_2016-12-05-01-02-17
    └── proj_xxx
        ├── xxx.c
        └── xxx.h
Плюсы очевидны:

  1. Каталог «arh» — там только архивы и ничего кроме архивов.
  2. Подкаталог «имя проекта»_«дата»_«время» — и не надо как слепой котенок судорожно тыкать по рандомным файлам пытаясь угадать, что же это было и когда было сохранено.
  3. Подкаталог с оригинальным названием — если нужно, то взял весь каталог «proj_xxx», перенёс в «src_tmp», скомпилировал, посмотрел.
  4. Сами файлы в неизменном виде — хоть диффом их проверяй, хоть глазами смотри, хоть в систему контроля версий помести.

Минус — объем хранимого.

Если содержимое хорошо сжимается, то делаю так:

$ tree arh 
arh
├── proj_xxx_2016-05-12-08-02-17.tar.xz
├── proj_xxx_2016-11-06-16-02-17.tar.xz
└── proj_xxx_2016-12-05-01-02-17.tar.xz

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

При старте бекапа создаешь директорию backup-YYYY-MM-DD и создаешь на нее софт-линк current -> backup-YYYY-MM-DD. В эту директорию копируешь всё, что нужно забекапить, в конце удаляешь линк current и перенаправляешь на нее симлинк latest. latest всегда показывает на последний успешный бекап, наличие current сигнализирует о бегущем или упавшем бекапе, все файлы внутри backup-YYYY-MM-DD имеют оригинальные названия, так что их можно оттуда копировать сразу пачками или целыми директориями без переименования каждого отдельного файла. Если файлов много и они раскиданы по всей системе, то желательно сохранять полную структуру каталогов, т.е. /home/user/dir1/dir2/file.txt копировать в backup-YYYY-MM-DD/home/user/dir1/dir2/file.txt, тогда будет удобнее искать файлы внутри бекапов.

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

Если бекапы ежедневные и большие, то дешевле и удобнее не жать каждый бекап в отдельный архив, а создавать хардлинки на последнюю копию неизмененных файлов. rsync это умеет.

ddos3
()
yy_mm_dd/hostname/path__to__dir__filename.xz
thesis ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.