Руководство по системному администрированию: контейнеры в Solaris - управление ресурсами и зонами

Резервное копирование системы Solaris с установленными зонами

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

ProcedureРезервное копирование при помощи ufsdump

При помощи команды ufsdump можно выполнить полное или инкрементное резервное копирование. Эта процедура создает резервную копию зоны /export/my-zone в /backup/my-zone.ufsdump , где my-zone – имя зоны в системе. Для хранения резервных копий может потребоваться отдельная файловая система, например файловая система, смонтированная в /backup.

  1. Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).

    Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.

  2. (Дополнительно) Завершите работу зоны для ее перевода в состояние покоя и предотвращения создания резервных копий совместно используемых файловых систем.


    global# zlogin -S my-zone init 0
    
  3. Проверьте состояние зоны.


    global# zoneadm list -cv
    

    Появится экран, подобный следующему:


    ID  NAME     STATUS       PATH                           BRAND      IP
     0  global   running      /                              native     shared
     -  my-zone  installed    /export/home/my-zone           native     shared
  4. Выполните резервное копирование.


    global# ufsdump 0f /backup/my-zone.ufsdump /export/my-zone
    

    Появится экран, подобный следующему:


    DUMP: Date of this level 0 dump: Wed Aug 10 16:13:52 2005
    DUMP: Date of last level 0 dump: the epoch
    DUMP: Dumping /dev/rdsk/c0t0d0s0 (bird:/) to /backup/my-zone.ufsdump. 
    DUMP: Mapping (Pass I) [regular files]
    DUMP: Mapping (Pass II) [directories]
    DUMP: Writing 63 Kilobyte records
    DUMP: Estimated 363468 blocks (174.47MB).
    DUMP: Dumping (Pass III) [directories]
    DUMP: Dumping (Pass IV) [regular files]
    DUMP: 369934 blocks (180.63MB) on 1 volume at 432 KB/sec
    DUMP: DUMP IS DONE
  5. Выполните начальную загрузку зоны.


    global# zoneadm -z my-zone boot
    

ProcedureСоздание снимка UFS при помощи fssnap

В этой процедуре используется команда fssnap, которая создает временный образ файловой системы, для которой будут создаваться резервные копии.

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

В приведенной ниже процедуре обратите внимание на следующее:

Перед началом работы

Целевая резервная копия – /backup/my-zone.ufsdump. Следует создать каталог backup в /.

  1. Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).

    Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.

  2. Создайте снимок.


    global# fssnap -o bs=/export /export/home
    

    Появится экран, подобный следующему:


    dev/fssnap/0
  3. Смонтируйте снимок.


    global# mount -o ro /dev/fssnap/0 /mnt
    
  4. Выполните резервное копирование my-zone из снимка.


    global# ufsdump 0f /backup/my-zone.ufsdump /mnt/my-zone
    

    Появится экран, подобный следующему:


    DUMP: Date of this level 0 dump: Thu Oct 06 15:13:07 2005
       DUMP: Date of last level 0 dump: the epoch
       DUMP: Dumping /dev/rfssnap/0 (pc2:/mnt) to /backup/my-zone.ufsdump.
       DUMP: Mapping (Pass I) [regular files]
       DUMP: Mapping (Pass II) [directories]
       DUMP: Writing 32 Kilobyte records
       DUMP: Estimated 176028 blocks (85.95MB).
       DUMP: Dumping (Pass III) [directories]
       DUMP: Dumping (Pass IV) [regular files]
       DUMP: 175614 blocks (85.75MB) on 1 volume at 2731 KB/sec
       DUMP: DUMP IS DONE
  5. Демонтируйте снимок.


    global# umount /mnt
    
  6. Удалите снимок.


    global# fssnap -d /dev/fssnap/0
    

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

ProcedureРезервное копирование при помощи команд find и cpio

  1. Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).

    Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.

  2. Перейдите в корневой каталог.


    global# cd /
    
  3. Выполните резервное копирование файлов my-zone, которые не смонтированы в петлевом режиме, в /backup/my-zone.cpio.


    global# find export/my-zone -fstype lofs -prune -o -local
     | cpio -oc -O /backup/my-zone.cpio type as one line
    
  4. Проверьте результат.


    global# ls -l backup/my-zone.cpio
    

    Появится экран, подобный следующему:


    -rwxr-xr-x   1 root     root     99680256 Aug 10 16:13 backup/my-zone.cpio

ProcedureВывод копии конфигурации зоны

Необходимо создать резервные файлы конфигураций неглобальных зон. Эти резервные копии при необходимости можно будет использовать для воссоздания этих зон. Копии конфигурации зоны создаются после первой регистрации в зоне и ответа на запросы sysidtool. В этой процедуре используется зона my-zone и резервный файл my-zone.config.

  1. Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).

    Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.

  2. Выведите конфигурацию зоны my-zone в файл my-zone.config.


    global# zonecfg -z my-zone export > my-zone.config