線上書籍

Home

自建 samba + ZFS (snhpshot快照/任意還原點)檔案伺服器

  1. 先查詢目前已建立的 snapshot
    1. root@debian8:~# zfs list -t snapshot
      NAME                                   USED  AVAIL  REFER  MOUNTPOINT
      backup/samba@GMT-2017.07.04-13.45.57    80K      -   152K  -
      zfs/samba@GMT-2017.07.04-13.45.57       80K      -   152K  -
       
    2. 將 zfs/samba 及 backup/samba 所有的快照刪除
      root@debian8:~# zfs destroy backup/samba@GMT-2017.07.04-13.45.57
      root@debian8:~# zfs destroy zfs/samba@GMT-2017.07.04-13.45.57
       
  2. 製作快照:將要傳送的資料池(dataset, 相當於分割區的概念)製作快照
    1. root@debian8:~# zfs snapshot -r zfs/samba@GMT-`date -u +%Y.%m.%d-%H.%M.%S`
      root@debian8:~# zfs list -t snapshot
      NAME                                USED  AVAIL  REFER  MOUNTPOINT
      zfs/samba@GMT-2017.07.04-14.25.00      0      -   152K  -
       
    2. 查看目前 /zfs/samba 底下的目錄及檔案

      root@debian8:~# tree /zfs/samba/
      /zfs/samba/
      └── 01-教導處
          ├── 01-教務主任
          ├── 02-教務組長
          ├── 03-設備組長
          └── 04-訓導組長

      5 directories, 0 files

  3. 將 /backup/samba 目錄底下清空
    root@debian8:~# rm /backup/samba/* -rf
    root@debian8:~# ls -alF /backup/samba/
    總計 17
    drwxr-xr-x 2 root root 2  7月  4 22:29 ./
    drwxr-xr-x 4 root root 5  7月  4 21:55 ../
     

  4. 將 dataset zfs/samba 建立的快照 zfs/samba@GMT-2017.07.04-14.25.00
    透過網路 以zfs 複製/備份 到
    另一台主機 "(現在以本機 localhost 來模擬操作) 的 backup/samba dataset

    root@debian8:~# zfs send zfs/samba@GMT-2017.07.04-14.25.00 | ssh localhost zfs receive backup/samba
    The authenticity of host 'localhost (::1)' can't be established.
    ECDSA key fingerprint is 68:82:38:50:e1:f7:44:67:2c:8a:48:bf:b5:c5:ba:c5.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.
    root@localhost's password:
    cannot receive new filesystem stream: destination 'backup/samba' exists
    must specify -F to overwrite it
    root@debian8:~# zfs send zfs/samba@GMT-2017.07.04-14.25.00 | ssh localhost zfs receive backup/samba -F
    root@localhost's password:
    cannot receive new filesystem stream: I/O error
     

  5.  

    查看目前 /backup/samba 底下的目錄及檔案

    /backup/samba/
    └── 01-教導處
        ├── 01-教務主任
        ├── 02-教務組長
        ├── 03-設備組長
        └── 04-訓導組長

    5 directories, 0 files
     

  6. 查看目前的快照(快照也會同時複製到遠端)
    root@debian8:~# zfs list -t snapshot
    NAME                                   USED  AVAIL  REFER  MOUNTPOINT
    backup/samba@GMT-2017.07.04-14.25.00    80K      -   152K  -
    zfs/samba@GMT-2017.07.04-14.25.00       80K      -   152K  -