顯示具有 Backup備份與轉移 標籤的文章。 顯示所有文章
顯示具有 Backup備份與轉移 標籤的文章。 顯示所有文章

2025年6月29日 星期日

vSphere用VADP備份的快照衝突與CBT

VADP (vSphere Storage APIs - Data Protection,前身叫vStorage API for Data Protection)是VMware的一種備份機制,在2009年五月vSphere 4.0的時候引進VMware。備份機制為透過虛擬機(VM)的快照副本進行,只要第三方備份軟體支援VADP,就可透過VADP的API呼叫ESXi主機,為指定的虛擬機先做快照後備份。

VADP使用virtual disk API和vSphere API來創建與管理VM快照,支援完整與增量備份。同時執行多個第三方軟體如Synology和Veeam做VADP備份,可能會因快照衝突(snapshot conflict)、CBT問題導致備份失敗。故不建議用多套VADP備份軟體來做備份

2023年5月25日 星期四

將iPhone的備份移到外接硬碟

接上iPhone等跑iOS的蘋果產品後,Mac系統現在是用Finder在做備份。預設備份會放到特定的資料夾叫做 ~/Library/Application\ Support/MobileSync/。前面的小蛇~(英文叫做tilde)代表的是每個人的家目錄,資料夾裡面有個反斜線\(英文叫backslash)是因為Application Support中間有個空格。若沒有這個資料夾,則代表從來沒做過備份,請先用Finder做第一次的iPhone的備份

要把預設的備份放到外接硬碟,一定會需要用到終端機(Terminal),所以建議就直接開啟終端機做所有的操作。這邊假設外接的硬碟叫做AkitioD,接到電腦上會掛載到/Volumes/AkitioD/。完整的操作步驟如下:

  1. 開啟終端機,依序輸入下列指令:
    注意第4步驟可能會因為已經先前的備份很大,需要一些時間執行

2022年9月16日 星期五

用AOMEI將USB隨身碟做映像檔或對拷

搞不定安裝在樹梅派Raspberry Pi 3 上Ubuntu 20.04的藍牙鍵盤滑鼠,故重灌回原來樹梅派官網建議的作業系統Raspberry Pi OS (32-bit)。做這件事情之前要把原來SDHC卡上面的系統給備份出來。使用軟體AOMEI Backupper,有一個版本是freeware:

要收費的兩個版本如下,都是買斷價格也差不多都是$50左右:

  • AOMEI Backupper Professional:個人使用,功能較多
  • AOMEI Backupper Workstation:企業使用,完整功能

功能大致可以分成下面幾項:

2022年7月22日 星期五

Mac上rsync遇到檔名有空格的解決方法

用rsync備份很方便,之前寫過相關文章:


但rsync後面接的資料夾有空格的時候,指令會出問題。解決方法是用雙引號

LOCAL='/Volumes/Source'
REMOTE='/Volumes/Destination'
for FOLDER in 'folder with Space' 'folderWithoutSpace'
do
    echo "{FOLDER}
    /usr/bin/rsync -Cavubh --exclude='*~' --delete --delete-excluded "${LOCAL}/${FOLDER}" "${REMOTE}/"
done

2021年6月14日 星期一

用rsync, tar, cpio備份,比較時間戳記

比較幾種備份方式,在保存資料夾/檔案/連結的修改時間(timestamp)都沒有完美的方案。測試過程如下:先用下面的指令做出一個要被備份的資料夾

cd /tmp
mkdir src && sleep 1.5
touch src/f1 && sleep 1.5
mkdir src/d2 && sleep 1.5
touch src/d2/f2.1 && sleep 1.5
mkdir src/d2/d2.2 && sleep 1.5
touch src/d2/d2.2/f2.2.1 && sleep 1.5
mkdir src/d3 && sleep 1.5
mkdir src/d3/d3.2 && sleep 1.5
mkdir src/d3/d3.2/d3.2.1 && sleep 1.5
mkdir src/d3/d3.2/d3.2.2 && sleep 1.5
touch src/d3/d3.2/d3.2.2/f3.2.2.1 && sleep 1.5

cd src
ln -s d2/f2.1 s4
ln -s d3/d3.2 s5

cd .. && tree src 

資料夾會長成這樣

2020年10月22日 星期四

tar搭配ssh傳送檔案到指定資料夾

根據要傳送檔案的列表files.list,透過ssh加密送到遠端的資料 /remote/destination/folder/:

  • tar cvzf - -T files.list | ssh -C remoteUser@remoteIP "cd /remote/destination/folder/; tar xzf -"

這樣就可以將這些檔案壓成串流傳輸到遠端機器的指定資料夾中了,應該也可寫成:

2020年7月24日 星期五

在Windows內用rsync同步網芳資料到本機

在Windows裡面要備份網路芳鄰,可以使用附加在MobaXterm裡面的rsync指令:
  1. 開啟MobaXterm後,Start local terminal
  2. 輸入 rsync -Cavut --delete //192.168.55.66/songs /drives/y/backup/

這個指令就會將網芳192.168.55.66下面的songs這個資料夾,備份到Y:/硬碟機的backup資料夾下面,也就是會生成一個叫做Y:\backup\songs的資料夾。用上述的指令,下次只會針對有更新的檔案才會做備份。

2020年7月9日 星期四

Win10存放系統還原點不可以是B:

拿一個硬碟,想說既然要做備份(Backup)與還原點,就設定成為B: 並掛載,在選取硬碟的時候怎樣都找不到硬碟。重開機也沒辦法,而且還會導致開機變得非常的慢...。雖然
  • 知道A:和B:以前是拿來給軟碟機用的
  • 不管是Win7還是Win10,硬碟機就是可以掛成A:和B:
  • 沒有錯誤訊息根本就不知道發生什麼事情

經過一番努力(將掛載點從B:改成Z:)之後,按照下面的步驟順利建立還原點:

2020年3月4日 星期三

用rsync刪除很大的資料夾

欲刪除裡面有許多檔案的大資料夾(例如說包含了一百萬個檔案、總容量是10T)叫做BigFolder/,使用rm這個指令會等到天荒地老。但使用rsync可在六分鐘內全數刪除:
  1. mkdir blank
  2. rsync -a --delete blank/ BigFolder/
  3. rmdir blank

2020年1月22日 星期三

Windows用rsync做備份與同步

在Windows上,可以透過MobaXterm備份資料。例如說想要把系統上面的使用者資料都備份到外接硬碟(磁碟代號是G:),直接透過下面指令:
  • rsync -Cavubt /drives/c/Users /drives/g/
若是要透過網路芳鄰(Network Neighbor)把資料夾src備份到本機硬碟:
  • rsync -Cavubt //192.168.777.888/src /drives/g/

2018年10月5日 星期五

Windows 7做硬碟對拷要注意磁碟標籤

用Clonezilla將舊硬碟拷貝到新硬碟,會連同磁碟標籤(disk label,或稱數位簽章)也複製過去。若拷貝過去後拔除舊硬碟,那麼新硬碟是可以順利開機的;但若舊硬碟與新硬碟同時都在,那會出現兩個硬碟有一樣的磁碟標籤導致無法開機。

2018年10月4日 星期四

製作USB開機的Windows修復光碟

要將Windows修復光碟的ISO檔案做成USB隨身碟,可使用Windows USB/DVD Download Tool(WUDT)。Windows的官方下載點顯示如下(點圖可放大):
安裝到主機以後,依照下面步驟將ISO檔案安裝到USB隨身碟上:

2018年6月12日 星期二

用rsync同步本地與遠端的資料夾

要備份本機端資料夾到遠端機器,參考《用rsync過ssh tunnel來備份》。這件事情可以想像成把本機端的資料給推(push)到遠端的機器。

若要將本機端某資料夾與遠端機器的資料夾同步,那麼除了把本機的資料推(push)到遠端以外,還要將遠端的資料給拉(pull)回本機端,指令如下:
  1. LocalDir=/home/localUser/localDir/  注意最後面有斜線
  2. RemoteIP=遠端機器的IP位址
  3. RemoteUser=遠端機器的使用者名稱
  4. RemoteDir=/home/remoteUser/remoteDir/ 注意最後面有斜線
  5. rsync -Cavuhtz -e ssh ${LocalDir} ${RemoteUser}@${RemoteIP}:${RemoteDir}
  6. rsync -Cavuhtz -e ssh ${RemoteUser}@${RemoteIP}:${RemoteDir} ${LocalDir}

2018年6月4日 星期一

用rsync過ssh tunnel來備份

要遠端備份一個資料夾,且一段時間後只更新更動過的檔案,可以使用rsync並透過ssh讓資料傳輸個過程中被加密。假設備份是從本地端(local)到遠端(remote)指令如下:
  1. RemoteIP=遠端的IP位址
  2. RemoteUser=遠端的使用者名稱
  3. RemoteDir=/home/remoteUser/Remote/  (遠端放置備份的資料夾)
  4. LocalDir=/home/localUser/Local/ (本地端要備份的資料夾)
  5. rsync -Cavuhtz -e "ssh -p 8964" ${LocalDir} ${RemoteUser}@${RemoteIP}:${RemoteDir}
第五個指令意思是把本地端的資料夾${LocalDir},在遠端透過使用者${RemoteUser}經由IP位址${RemoteIP}登入後,放置到遠端的資料夾${RemoteDir}中。
簡單說就是把/home/localUser/Local備份到/home/remoteUser/Remote,上面第3和第4個指令在指定資料夾的時候,最後面會放入斜線

2018年4月10日 星期二

使用wget備份網頁或是FTP的目錄

要使用GNU wget備份某個網頁,指令如下:
  • wget -m -c -w 10 --random-wait -nH --cut-dirs=1 http://domainName/a/b/c/d/
上面每個參數的意思分別是:
  • -m:--mirror,將整個資料夾下面的東西遞迴地抓回來
  • -c:--continue,續傳,若之前有抓過的就不再抓
  • -w seconds:--wait=seconds,每要抓下一個等幾秒鐘
  • --random-wait:前面等待的秒數*0.5 - 1.5,不要那麼死板
  • -nH:--no-host-directories,,不要把路徑都寫下來
    • -nH --cut-dirs=1:上述的例子就是到d這個資料夾
    • -nH --cut-dirs=2:上述的例子就是到d下面的檔案而沒有d
_EOF_

2018年3月21日 星期三

Mac上備份USB隨身碟成映像檔

在Mac上要備份整支USB隨身碟,首先插入USB,用下面的指令看device name:
  • diskutil list
  • diskutil list disk8
  • sudo diskutil unmountDisk /dev/disk8
上面的指令確認這支USB隨身碟是/dev/disk8後,將USB給卸載。都準備好後,用dd這個指令將檔案備份成檔名為usb.dd的映像檔:
  • sudo dd if=/dev/disk8 of=usb.dd bs=4096
要將這個映像檔還原(restore)到另外一個USB隨身碟/dev/disk9,用下面的指令:
  • sudo dd if=usb.dd of=/dev/rdisk9 bs=4096
這邊要注意的是,這邊是/dev/rdisk9而不是/dev/disk9。
這個方法可備份的可開機的USB隨身碟。

2017年12月7日 星期四

Clonezilla做在GPT分割的硬碟上

現在的外接硬碟許多都已經超過3TB,若用《製作硬碟開機的Clonezilla Live》來製作硬碟開機的Clonezilla,在分割此外接硬碟時就需要用到GPT分割,要注意到幾件事情:
  1. 分割硬碟不能夠使用fdisk指令,要改用gdisk或是gparted等指令
  2. 由於用GPT分割,故使用BIOS開機的舊主機板(BIOS-based computer)將無法使用這樣做出來的Clonezilla
  3. GPT分割的第一個磁區,沒有Windows FAT32可以選,取代的則是要選EFI System Partition(gdisk的internal code會是0xef)。也就是說用gdisk分割後,把第一個磁區指定成EFI partition,跳出以後再用mkfs.vfat來將此分割區格式化成為FAT32格式
  4. 在用mkfs.vfat -F 32 /dev/sdc1 做格式化的時候,可能會出現錯誤訊息"WARNING: Not enough clusters for a 32 bit FAT"。解決方式可以測試下面兩個指令:
剩下的安裝Clonezilla部分就參考《製作硬碟開機的Clonezilla Live》。由於是GPT分割,且第一個磁區分割成EFI System Partition,所以上文裡面Step 3中使用makboo.sh那個script不需要執行,uEFI自然就會去讀取那個分割區來用Clonezilla開機了~

_EOF_

2017年11月25日 星期六

在Windows用7-Zip解壓縮

Linux預設就有tar這個壓縮與解壓縮的指令,但Windows沒有。這邊介紹7-Zip,是個開放原始碼的壓縮與解壓縮軟體,官方網站說明為:
  • 支援壓縮(packing)與解壓縮(unpacking)的格式:
    • 7z, XZ, BZIP2, GZIP, TAR, ZIP and WIM
  • 僅支援解壓縮的格式:
    • AR, ARJ, CAB, CHM, CPIO, CramFS, DMG, EXT, FAT, GPT, HFS, IHEX, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, QCOW2, RAR, RPM, SquashFS, UDF, UEFI, VDI, VHD, VMDK, WIM, XAR and Z
  • 支援87種語言
  • 在下面的作業系統都可以用
    • Win10, 8, 7, Vista, XP, 2012, 2008, 2003, 2000, NT
    • Linux/Unix
_EOF_

2017年8月24日 星期四

用Clonezilla做備份

要做系統備份,可以用再生龍Clonezilla。有兩種做法:
做成兩份是因為,amd64不一定可以支援所有的機器、所以才要做i386, i686-pae, i686這一類的。另外準備一個外接硬碟的,在用USB做備份的時候可以存到這個外接硬碟上面~

在選擇Clonzilla的時候還會有穩定版(stable, Debian-based)與替代版(alternative, Ubuntu-based)這兩種,與要備份的主機板開機方式有關:
  • 穩定版:用在BIOS開機的機器上
  • 替代版:用在uEFI開機的機器上

2017年6月16日 星期五

SSH對遠端下含有檔案重導向的指令

雖說ssh很方便可以直接對遠端的機器下指令,但如果指令command裡面含有檔案重導的符號,像是 >, <, | 等等符號,那這樣就無法用下面的方式下指令:
  • ssh remoteIP command
這種狀況的解法就是,用'(command)'將指令給括號起來 :
  • ssh remoteIP '(command)'