Adatok átvitele AzCopy v7-zel Linuxon

Az AzCopy egy parancssori segédprogram, amely a Microsoft Azure Blob- és File Storage-fájlokba és -tárolókba másol adatokat az optimális teljesítmény érdekében tervezett egyszerű parancsokkal. Az adatokat egy fájlrendszer és egy tárfiók, illetve több tárfiók között is másolhatja.

Fontos

Ez a cikk az AzCopy egy régebbi verzióját ismerteti. Az AzCopy legújabb verziójának telepítéséhez tekintse meg az AzCopy 10-es verzióját.

Megjegyzés

Az AzCopy 7.2-es verziójától kezdve a .NET Core-függőségek az AzCopy-csomaggal vannak csomagolva. Ha a 7.2-es vagy újabb verziót használja, a továbbiakban nem szükséges előfeltételeként telepítenie a .NET Core-t.

Az AzCopy letöltése és telepítése

Telepítés Linux rendszeren

Megjegyzés

Előfordulhat, hogy telepítenie kell a .NET Core 2.1-függőségeket ebben a .NET Core előfeltétel-cikkben a disztribúciótól függően.

RHEL 7-disztribúciók esetén telepítse az intenzív osztályt és a libunwind-függőségeket: yum install -y libunwind icu

Az AzCopy linuxos (7.2-s vagy újabb) telepítése olyan egyszerű, mint egy tar-csomag kinyerése és a telepítési szkript futtatása.

RHEL 6-alapú disztribúciók: letöltési hivatkozás

wget -O azcopy.tar.gz https://aka.ms/downloadazcopylinuxrhel6
tar -xf azcopy.tar.gz
sudo ./install.sh

Minden más Linux-disztribúció: letöltési hivatkozás

wget -O azcopy.tar.gz https://aka.ms/downloadazcopylinux64
tar -xf azcopy.tar.gz
sudo ./install.sh

A kibontott fájlokat a Linuxon futó AzCopy telepítése után távolíthatja el. Ha nem rendelkezik superuser jogosultságokkal, akkor a rendszerhéj-szkripttel is futtathatja azcopy az azcopy parancsmagot a kibontott mappában.

Alternatív telepítés az Ubuntu-on

Ubuntu 14.04

Adja hozzá az apt-forrást a Microsoft Linux-termékadattárhoz, és telepítse az AzCopyt:

sudo echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-trusty-prod/ trusty main" > azure.list
sudo cp ./azure.list /etc/apt/sources.list.d/
sudo apt-key adv --keyserver packages.microsoft.com --recv-keys EB3E94ADBE1229CF
sudo apt-get update
sudo apt-get install azcopy

Ubuntu 16.04

Adja hozzá az apt-forrást a Microsoft Linux-termékadattárhoz, és telepítse az AzCopyt:

echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod/ xenial main" > azure.list
sudo cp ./azure.list /etc/apt/sources.list.d/
sudo apt-key adv --keyserver packages.microsoft.com --recv-keys EB3E94ADBE1229CF
sudo apt-get update
sudo apt-get install azcopy

Az első AzCopy-parancs írása

Az AzCopy-parancsok alapszintaxisa:

azcopy --source <source> --destination <destination> [Options]

Az alábbi példák különböző forgatókönyveket mutatnak be az adatok Microsoft Azure-blobokra és -fájlokra történő másolására. Az egyes mintákban használt paraméterek részletes ismertetését a azcopy --help menüben találja.

Blob: Letöltés

Egyetlen blob letöltése

azcopy \
    --source https://myaccount.blob.core.windows.net/mycontainer/abc.txt \
    --destination /mnt/myfiles/abc.txt \
    --source-key <key> 

Ha a mappa /mnt/myfiles nem létezik, az AzCopy létrehozza és letölti abc.txt az új mappába.

Önálló blob letöltése másodlagos régióból

azcopy \
    --source https://myaccount-secondary.blob.core.windows.net/mynewcontainer/abc.txt \
    --destination /mnt/myfiles/abc.txt \
    --source-key <key>

Vegye figyelembe, hogy engedélyezve kell lennie az írásvédett georedundáns tárolásnak.

Az összes blob letöltése

azcopy \
    --source https://myaccount.blob.core.windows.net/mycontainer \
    --destination /mnt/myfiles \
    --source-key <key> \
    --recursive

Tegyük fel, hogy a következő blobok a megadott tárolóban találhatók:

abc.txt
abc1.txt
abc2.txt
vd1/a.txt
vd1/abcd.txt

A letöltési művelet után a könyvtár /mnt/myfiles a következő fájlokat tartalmazza:

/mnt/myfiles/abc.txt
/mnt/myfiles/abc1.txt
/mnt/myfiles/abc2.txt
/mnt/myfiles/vd1/a.txt
/mnt/myfiles/vd1/abcd.txt

Ha nem adja meg a beállítást --recursive, a rendszer nem tölt le blobot.

Blobok letöltése megadott előtaggal

azcopy \
    --source https://myaccount.blob.core.windows.net/mycontainer \
    --destination /mnt/myfiles \
    --source-key <key> \
    --include "a" \
    --recursive

Tegyük fel, hogy a következő blobok a megadott tárolóban találhatók. Az előtaggal a kezdődő összes blob letöltődik.

abc.txt
abc1.txt
abc2.txt
xyz.txt
vd1\a.txt
vd1\abcd.txt

A letöltési művelet után a mappa /mnt/myfiles a következő fájlokat tartalmazza:

/mnt/myfiles/abc.txt
/mnt/myfiles/abc1.txt
/mnt/myfiles/abc2.txt

Az előtag a virtuális könyvtárra vonatkozik, amely a blobnév első részét képezi. A fenti példában a virtuális könyvtár nem egyezik a megadott előtaggal, ezért a rendszer nem tölt le blobot. Ha a beállítás --recursive nincs megadva, az AzCopy nem tölt le blobokat.

Az exportált fájlok utolsó módosítási idejének beállítása a forrásblobokkal megegyezőre

azcopy \
    --source https://myaccount.blob.core.windows.net/mycontainer \
    --destination "/mnt/myfiles" \
    --source-key <key> \
    --preserve-last-modified-time

A blobokat az utolsó módosítás időpontja alapján is kizárhatja a letöltési műveletből. Ha például ki szeretné zárni azokat a blobokat, amelyek utolsó módosítási ideje megegyezik vagy újabb a célfájlénál, adja hozzá a --exclude-newer következő lehetőséget:

azcopy \
    --source https://myaccount.blob.core.windows.net/mycontainer \
    --destination /mnt/myfiles \
    --source-key <key> \
    --preserve-last-modified-time \
    --exclude-newer

Vagy ha ki szeretné zárni azokat a blobokat, amelyek utolsó módosítási ideje megegyezik vagy régebbi a célfájlénál, adja hozzá a --exclude-older következő lehetőséget:

azcopy \
    --source https://myaccount.blob.core.windows.net/mycontainer \
    --destination /mnt/myfiles \
    --source-key <key> \
    --preserve-last-modified-time \
    --exclude-older

Blob: Feltöltés

Egyetlen fájl feltöltése

azcopy \
    --source /mnt/myfiles/abc.txt \
    --destination https://myaccount.blob.core.windows.net/mycontainer/abc.txt \
    --dest-key <key>

Ha a célként megadott tároló nem létezik, az AzCopy létrehozza, majd feltölti a fájlt a tárolóba.

Egyetlen fájl feltöltése virtuális könyvtárba

azcopy \
    --source /mnt/myfiles/abc.txt \
    --destination https://myaccount.blob.core.windows.net/mycontainer/vd/abc.txt \
    --dest-key <key>

Ha a megadott virtuális könyvtár nem létezik, az AzCopy feltölti a fájlt, hogy belefoglalja a virtuális könyvtárat a blobnévbe (példáulvd/abc.txt a fenti példában).

Átirányítás az stdinből

gzip myarchive.tar -c | azcopy \
    --destination https://myaccount.blob.core.windows.net/mycontainer/mydir/myarchive.tar.gz \
    --dest-key <key>

Az összes fájl feltöltése

azcopy \
    --source /mnt/myfiles \
    --destination https://myaccount.blob.core.windows.net/mycontainer \
    --dest-key <key> \
    --recursive

A beállítás --recursive megadása rekurzív módon tölti fel a megadott könyvtár tartalmát a Blob Storage-ba, ami azt jelenti, hogy az összes almappát és azok fájljait is feltölti a rendszer. Tegyük fel például, hogy a következő fájlok a mappában /mnt/myfilestalálhatók:

/mnt/myfiles/abc.txt
/mnt/myfiles/abc1.txt
/mnt/myfiles/abc2.txt
/mnt/myfiles/subfolder/a.txt
/mnt/myfiles/subfolder/abcd.txt

A feltöltési művelet után a tároló a következő fájlokat tartalmazza:

abc.txt
abc1.txt
abc2.txt
subfolder/a.txt
subfolder/abcd.txt

Ha a beállítás --recursive nincs megadva, a rendszer csak a következő három fájlt tölti fel:

abc.txt
abc1.txt
abc2.txt

A megadott mintának megfelelő fájlok feltöltése

azcopy \
    --source /mnt/myfiles \
    --destination https://myaccount.blob.core.windows.net/mycontainer \
    --dest-key <key> \
    --include "a*" \
    --recursive

Tegyük fel, hogy a következő fájlok a mappában /mnt/myfilestalálhatók:

/mnt/myfiles/abc.txt
/mnt/myfiles/abc1.txt
/mnt/myfiles/abc2.txt
/mnt/myfiles/xyz.txt
/mnt/myfiles/subfolder/a.txt
/mnt/myfiles/subfolder/abcd.txt

A feltöltési művelet után a tároló a következő fájlokat tartalmazza:

abc.txt
abc1.txt
abc2.txt
subfolder/a.txt
subfolder/abcd.txt

Ha a beállítás --recursive nincs megadva, az AzCopy kihagyja az alkönyvtárakban lévő fájlokat:

abc.txt
abc1.txt
abc2.txt

Célblob MIME-tartalomtípusának megadása

Alapértelmezés szerint az AzCopy a célblob tartalomtípusát a következőre application/octet-streamállítja be: . A tartalomtípust azonban explicit módon is megadhatja a beállítással --set-content-type [content-type]. Ez a szintaxis egy feltöltési művelet összes blobjának tartalomtípusát állítja be.

azcopy \
    --source /mnt/myfiles \
    --destination https://myaccount.blob.core.windows.net/myContainer/ \
    --dest-key <key> \
    --include "ab" \
    --set-content-type "video/mp4"

Ha a beállítás --set-content-type értéke nélkül van megadva, akkor az AzCopy az egyes blobok vagy fájlok tartalomtípusát a fájlkiterjesztésének megfelelően állítja be.

azcopy \
    --source /mnt/myfiles \
    --destination https://myaccount.blob.core.windows.net/myContainer/ \
    --dest-key <key> \
    --include "ab" \
    --set-content-type

A MIME-tartalomtípus-leképezés testreszabása

Az AzCopy egy konfigurációs fájlt használ, amely a fájlkiterjesztés tartalomtípusra való leképezését tartalmazza. Ezt a leképezést testre szabhatja, és szükség szerint új párokat vehet fel. A leképezés a következő helyen található: /usr/lib/azcopy/AzCopyConfig.json

Blob: Másolás

Egyetlen blob másolása a Storage-fiókon belül

azcopy \
    --source https://myaccount.blob.core.windows.net/mycontainer1/abc.txt \
    --destination https://myaccount.blob.core.windows.net/mycontainer2/abc.txt \
    --source-key <key> \
    --dest-key <key>

Ha a --sync-copy lehetőség nélkül másol egy blobot, a rendszer kiszolgálóoldali másolási műveletet hajt végre.

Egyetlen blob másolása tárfiókok között

azcopy \
    --source https://sourceaccount.blob.core.windows.net/mycontainer1/abc.txt \
    --destination https://destaccount.blob.core.windows.net/mycontainer2/abc.txt \
    --source-key <key1> \
    --dest-key <key2>

Ha a --sync-copy lehetőség nélkül másol egy blobot, a rendszer kiszolgálóoldali másolási műveletet hajt végre.

Egyetlen blob másolása másodlagos régióból elsődleges régióba

azcopy \
    --source https://myaccount1-secondary.blob.core.windows.net/mynewcontainer1/abc.txt \
    --destination https://myaccount2.blob.core.windows.net/mynewcontainer2/abc.txt \
    --source-key <key1> \
    --dest-key <key2>

Vegye figyelembe, hogy engedélyezve kell lennie az írásvédett georedundáns tárolásnak.

Egyetlen blob és pillanatképeinek másolása tárfiókok között

azcopy \
    --source https://sourceaccount.blob.core.windows.net/mycontainer1/ \
    --destination https://destaccount.blob.core.windows.net/mycontainer2/ \
    --source-key <key1> \
    --dest-key <key2> \
    --include "abc.txt" \
    --include-snapshot

A másolási művelet után a céltároló tartalmazza a blobot és annak pillanatképeit. A tároló a következő blobot és annak pillanatképeit tartalmazza:

abc.txt
abc (2013-02-25 080757).txt
abc (2014-02-21 150331).txt

Blobok szinkron másolása tárfiókok között

Az AzCopy alapértelmezés szerint két tárolási végpont között aszinkron módon másolja az adatokat. Ezért a másolási művelet a háttérben fut tartalék sávszélességű kapacitással, amely nem rendelkezik SLA-val a blobok másolásának gyorsasága szempontjából.

Ez a --sync-copy beállítás biztosítja, hogy a másolási művelet konzisztens sebességet kapjon. Az AzCopy úgy hajtja végre a szinkron másolatot, hogy letölti a blobokat a megadott forrásból a helyi memóriába másolandó blobok letöltésével, majd feltölti őket a Blob Storage célhelyére.

azcopy \
    --source https://myaccount1.blob.core.windows.net/myContainer/ \
    --destination https://myaccount2.blob.core.windows.net/myContainer/ \
    --source-key <key1> \
    --dest-key <key2> \
    --include "ab" \
    --sync-copy

--sync-copy A további kimenő forgalmat eredményezhet az aszinkron másolathoz képest. A kimenő forgalom költségeinek elkerülése érdekében ajánlott ezt a lehetőséget használni egy Azure-beli virtuális gépen, amely ugyanabban a régióban található, mint a forrás tárfiókja.

Fájl: Letöltés

Egyetlen fájl letöltése

azcopy \
    --source https://myaccount.file.core.windows.net/myfileshare/myfolder1/abc.txt \
    --destination /mnt/myfiles/abc.txt \
    --source-key <key>

Ha a megadott forrás egy Azure-fájlmegosztás, akkor meg kell adnia a pontos fájlnevet (példáulabc.txt) egyetlen fájl letöltéséhez, vagy meg kell adnia a megosztásban lévő összes fájl rekurzív letöltésének lehetőségét --recursive . A fájlminta és a beállítás --recursive együttes megadásának megkísérlése hibát eredményez.

Az összes fájl letöltése

azcopy \
    --source https://myaccount.file.core.windows.net/myfileshare/ \
    --destination /mnt/myfiles \
    --source-key <key> \
    --recursive

Vegye figyelembe, hogy az üres mappák nem töltődnek le.

Fájl: Feltöltés

Egyetlen fájl feltöltése

azcopy \
    --source /mnt/myfiles/abc.txt \
    --destination https://myaccount.file.core.windows.net/myfileshare/abc.txt \
    --dest-key <key>

Az összes fájl feltöltése

azcopy \
    --source /mnt/myfiles \
    --destination https://myaccount.file.core.windows.net/myfileshare/ \
    --dest-key <key> \
    --recursive

Vegye figyelembe, hogy az üres mappák nincsenek feltöltve.

A megadott mintának megfelelő fájlok feltöltése

azcopy \
    --source /mnt/myfiles \
    --destination https://myaccount.file.core.windows.net/myfileshare/ \
    --dest-key <key> \
    --include "ab*" \
    --recursive

Fájl: Másolás

Másolás fájlmegosztások között

azcopy \
    --source https://myaccount1.file.core.windows.net/myfileshare1/ \
    --destination https://myaccount2.file.core.windows.net/myfileshare2/ \
    --source-key <key1> \
    --dest-key <key2> \
    --recursive

Amikor fájlokat másol fájlmegosztások között, a rendszer kiszolgálóoldali másolási műveletet hajt végre.

Másolás fájlmegosztásból blobba

azcopy \ 
    --source https://myaccount1.file.core.windows.net/myfileshare/ \
    --destination https://myaccount2.blob.core.windows.net/mycontainer/ \
    --source-key <key1> \
    --dest-key <key2> \
    --recursive

Amikor fájlmegosztásból blobba másol egy fájlt, a rendszer kiszolgálóoldali másolási műveletet hajt végre.

Másolás blobból fájlmegosztásba

azcopy \
    --source https://myaccount1.blob.core.windows.net/mycontainer/ \
    --destination https://myaccount2.file.core.windows.net/myfileshare/ \
    --source-key <key1> \
    --dest-key <key2> \
    --recursive

Amikor fájlokat másol a blobból a fájlmegosztásba, a rendszer kiszolgálóoldali másolási műveletet hajt végre.

Fájlok szinkronizálása

Megadhatja, hogy a --sync-copy Fájltárolóból a File Storage-ba, a File Storage-ból a Blob Storage-ba, valamint a Blob Storage-ból a File Storage-ba szinkron módon másoljon adatokat. Az AzCopy úgy futtatja ezt a műveletet, hogy letölti a forrásadatokat a helyi memóriába, majd feltölti azokat a célhelyre. Ebben az esetben a normál kimenő forgalom költsége érvényes.

azcopy \
    --source https://myaccount1.file.core.windows.net/myfileshare1/ \
    --destination https://myaccount2.file.core.windows.net/myfileshare2/ \
    --source-key <key1> \
    --dest-key <key2> \
    --recursive \
    --sync-copy

A Fájltárolóból a Blob Storage-ba történő másoláskor az alapértelmezett blobtípus a blokkblob, a felhasználó megadhat egy lehetőséget --blob-type page a célblob típusának módosítására. Az elérhető típusok a következők page | block | append:

Vegye figyelembe, hogy az --sync-copy aszinkron másolathoz képest további kimenő költségek keletkezhetnek. A kimenő forgalom költségeinek elkerülése érdekében ajánlott ezt a lehetőséget használni egy Azure-beli virtuális gépen, amely ugyanabban a régióban található, mint a forrás tárfiókja.

Egyéb AzCopy-funkciók

Csak olyan adatok másolása, amelyek nem léteznek a célhelyen

A --exclude-older paraméterek és --exclude-newer a paraméterek lehetővé teszik a régebbi vagy újabb forráserőforrások másolásának kizárását. Ha csak olyan forráserőforrásokat szeretne másolni, amelyek nem léteznek a célhelyen, mindkét paramétert megadhatja az AzCopy parancsban:

--source http://myaccount.blob.core.windows.net/mycontainer --destination /mnt/myfiles --source-key <sourcekey> --recursive --exclude-older --exclude-newer

--source /mnt/myfiles --destination http://myaccount.file.core.windows.net/myfileshare --dest-key <destkey> --recursive --exclude-older --exclude-newer

--source http://myaccount.blob.core.windows.net/mycontainer --destination http://myaccount.blob.core.windows.net/mycontainer1 --source-key <sourcekey> --dest-key <destkey> --recursive --exclude-older --exclude-newer

Parancssori paraméterek megadása konfigurációs fájl használatával

azcopy --config-file "azcopy-config.ini"

A konfigurációs fájlban bármilyen AzCopy parancssori paraméter szerepelhet. Az AzCopy úgy dolgozza fel a fájl paramétereit, mintha a parancssorban lettek volna megadva, és közvetlen helyettesítést végez a fájl tartalmával.

Tegyük fel, hogy a konfigurációs fájl neve copyoperationa következő sorokat tartalmazza. Minden AzCopy-paraméter egy sorban adható meg.

--source http://myaccount.blob.core.windows.net/mycontainer --destination /mnt/myfiles --source-key <sourcekey> --recursive --quiet

vagy külön sorokban:

--source http://myaccount.blob.core.windows.net/mycontainer
--destination /mnt/myfiles
--source-key<sourcekey>
--recursive
--quiet

Az AzCopy meghiúsul, ha a paramétert két sorra osztja fel, ahogy az itt látható a --source-key paraméter esetében:

http://myaccount.blob.core.windows.net/mycontainer
/mnt/myfiles
--sourcekey
<sourcekey>
--recursive
--quiet

Közös hozzáférésű jogosultságkód (SAS) megadása

azcopy \
    --source https://myaccount.blob.core.windows.net/mycontainer1/abc.txt \
    --destination https://myaccount.blob.core.windows.net/mycontainer2/abc.txt \
    --source-sas <SAS1> \
    --dest-sas <SAS2>

SAS-t is megadhat a tároló URI-ján:

azcopy \
    --source https://myaccount.blob.core.windows.net/mycontainer1/?SourceSASToken \
    --destination /mnt/myfiles \
    --recursive

Naplófájl mappája

Minden alkalommal, amikor parancsot ad ki az AzCopynak, ellenőrzi, hogy létezik-e naplófájl az alapértelmezett mappában, vagy hogy létezik-e az ebben a beállításban megadott mappában. Ha a naplófájl egyik helyen sem létezik, az AzCopy újként kezeli a műveletet, és létrehoz egy új naplófájlt.

Ha a naplófájl létezik, az AzCopy ellenőrzi, hogy a bevitt parancssor megegyezik-e a naplófájl parancssorával. Ha a két parancssor egyezik, az AzCopy folytatja a hiányos műveletet. Ha nem egyeznek, az AzCopy felszólítja a felhasználót, hogy írja felül a naplófájlt egy új művelet elindításához, vagy szakítsa meg az aktuális műveletet.

Ha a naplófájl alapértelmezett helyét szeretné használni:

azcopy \
    --source /mnt/myfiles \
    --destination https://myaccount.blob.core.windows.net/mycontainer \
    --dest-key <key> \
    --resume

Ha kihagyja a beállítást --resume, vagy a mappa elérési útja nélkül adja meg a beállítást --resume , a fent látható módon az AzCopy létrehozza a naplófájlt az alapértelmezett helyen, azaz ~\Microsoft\Azure\AzCopy. Ha a naplófájl már létezik, az AzCopy a naplófájl alapján folytatja a műveletet.

Ha egyéni helyet szeretne megadni a naplófájlhoz:

azcopy \
    --source /mnt/myfiles \
    --destination https://myaccount.blob.core.windows.net/mycontainer \
    --dest-key key \
    --resume "/mnt/myjournal"

Ez a példa létrehozza a naplófájlt, ha még nem létezik. Ha létezik, akkor az AzCopy a naplófájl alapján folytatja a műveletet.

Ha folytatni szeretné az AzCopy-műveletet, ismételje meg ugyanezt a parancsot. A Linuxon futó AzCopy ekkor megerősítést kér:

Incomplete operation with same command line detected at the journal directory "/home/myaccount/Microsoft/Azure/AzCopy", do you want to resume the operation? Choose Yes to resume, choose No to overwrite the journal to start a new operation. (Yes/No)

Részletes kimeneti naplók

azcopy \
    --source /mnt/myfiles \
    --destination https://myaccount.blob.core.windows.net/mycontainer \
    --dest-key <key> \
    --verbose

Az egyidejű elindítandó műveletek számának megadása

A beállítás --parallel-level az egyidejű másolási műveletek számát adja meg. Alapértelmezés szerint az AzCopy bizonyos számú egyidejű műveletet indít el az adatátviteli sebesség növelése érdekében. Az egyidejű műveletek száma a processzorok számának nyolcszorosa. Ha az AzCopyt alacsony sávszélességű hálózaton futtatja, alacsonyabb számot adhat meg a --parallel-level értékhez, hogy elkerülje az erőforrás-verseny által okozott hibákat.

Tipp

Az AzCopy-paraméterek teljes listájának megtekintéséhez tekintse meg az "azcopy --help" menüt.

Az AzCopy 7.1 és korábbi verzióinak telepítési lépései

Az AzCopy Linux rendszeren (csak 7.1-s és korábbi verziók esetén) a .NET Core-keretrendszert igényli. A telepítési utasítások a .NET Core telepítési oldalán érhetők el.

Először például telepítse a .NET Core-t az Ubuntu 16.10-en. A legújabb telepítési útmutatóért látogasson el a .NET Core linuxos telepítési oldalára.

sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ yakkety main" > /etc/apt/sources.list.d/dotnetdev.list' 
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893
sudo apt-get update
sudo apt-get install dotnet-sdk-2.0.0

A .NET Core telepítése után töltse le és telepítse az AzCopyt.

wget -O azcopy.tar.gz https://aka.ms/downloadazcopyprlinux
tar -xf azcopy.tar.gz
sudo ./install.sh

A kibontott fájlokat a Linuxon futó AzCopy telepítése után távolíthatja el. Másik lehetőségként, ha nem rendelkezik superuser jogosultságokkal, futtathatja a rendszerhéj-szkript azcopy használatával is azcopy a kibontott mappában.

Ismert problémák és ajánlott eljárások

Hiba az AzCopy telepítésekor

Ha problémákba ütközik az AzCopy telepítésével kapcsolatban, megpróbálhatja futtatni az AzCopyt a kibontott azcopy mappában található Bash-szkript használatával.

cd azcopy
./azcopy

Egyidejű írások korlátozása adatok másolása közben

Amikor blobokat vagy fájlokat másol az AzCopyval, vegye figyelembe, hogy másolás közben egy másik alkalmazás is módosíthatja az adatokat. Ha lehetséges, győződjön meg arról, hogy a másolt adatok nem módosulnak a másolási művelet során. Ha például egy Azure-beli virtuális géphez társított VHD-t másol, győződjön meg arról, hogy más alkalmazások jelenleg nem írnak a VHD-be. Ennek jó módja, ha lízingeli a másolandó erőforrást. Másik lehetőségként létrehozhat egy pillanatképet a VHD-ről, majd átmásolhatja a pillanatképet.

Ha nem tudja megakadályozni, hogy más alkalmazások blobokhoz vagy fájlokhoz írjanak a másolásuk során, akkor ne feledje, hogy a feladat befejeződése után előfordulhat, hogy a másolt erőforrások már nem rendelkeznek teljes mértékben a forráserőforrásokkal.

Több AzCopy-folyamat futtatása

Több AzCopy-folyamatot is futtathat egyetlen ügyfélen, feltéve, hogy különböző naplómappát használ. Egyetlen naplómappa használata több AzCopy-folyamathoz nem támogatott.

1. folyamat:

azcopy \
    --source /mnt/myfiles1 \
    --destination https://myaccount.blob.core.windows.net/mycontainer/myfiles1 \
    --dest-key <key> \
    --resume "/mnt/myazcopyjournal1"

2. folyamat:

azcopy \
    --source /mnt/myfiles2 \
    --destination https://myaccount.blob.core.windows.net/mycontainer/myfiles2 \
    --dest-key <key> \
    --resume "/mnt/myazcopyjournal2"

Következő lépések

További, az Azure Storage szolgáltatással és az AzCopyval kapcsolatos adatokat a következő erőforrások nyújtanak:

Az Azure Storage dokumentációja:

Az Azure Storage blogbejegyzései: