Passer au contenu principal
  • Passer des commandes rapidement et facilement
  • Afficher les commandes et suivre l’état de votre expédition
  • Profitez de récompenses et de remises réservées aux membres
  • Créez et accédez à une liste de vos produits

Avamar: Slik utfører du en Linux VMware-filgjenoppretting uten rotbruker ved hjelp av sudo

Résumé: Avamar FLR Sudo

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Symptômes



Bakgrunnsinformasjon om Avamar FLR:
Filgjenoppretting fra Avamar er en agentløs gjenopprettingsløsning som kan brukes til å gjenopprette én eller flere gjestefiler fra et sikkerhetskopi-image på en virtuell maskin. Mekanismen som brukes til å forenkle gjenoppretting på filnivå, er VMware-verktøy og vSphere API guest operation-funksjoner. Sikkerhetskopi-imaget på den virtuelle maskinen monterer den virtuelle disken (.vmdk) på Avamar-proxyen mens man blar. Etter at filene er valgt for gjenoppretting, vil de bli kopiert fra proxy til target VM.

Obligatoriske krav for FLR:
  1. Den virtuelle målmaskinen må være slått på.
  2. Den virtuelle målmaskinen må ha VMware-verktøy installert, og tjenesten må kjøre under gjenopprettingsoperasjoner. 
  3. Avamar-administratoren eller Avamar-sikkerhetskopiering / -gjenoppretting / -brukeren må ha gyldig legitimasjon på målgjesten (krav for VMware SDK-gjesteoperasjoner), og denne legitimasjonen må angis i begynnelsen av filgjenopprettingsoperasjonene.
  4. Gjestebrukeren må ha rettigheter til å skrive til plasseringen, ellers vil operasjonen mislykkes. For Windows Virtual Machine må VM-gjenopprettingsbrukeren også ha rettigheter til å skrive uten UAC-utvidelser. For virtuelle Linux-maskiner må restore VM være i stand til å skrive uten sudo. 
Valgfrie krav for FLR: Nødvendig for å få raskere HTTPS-overføringsmetode. 
  1. Virtuelle målmaskiner må ha TCP 443-tilgang til de virtuelle proxy-maskinene.
  2. Når det gjelder virtuelle Linux-maskiner må det være installert en moderne wget-applikasjon inne i den virtuelle maskinen før gjenopprettingsoperasjonen.  
Hvis driftskravene ikke er oppfylt, vil følgende advarsler bli vist før jobben sendes:

Hvis target VM ikke kan opprette en HTTPS-tilkobling til proxy:

kA23a000000GIVvCAO_3_0

Inne i proxyen: /usr/local/avamarclient/bin/logs/VSphereWebService.log, se wget non zero exit code

[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398040: sGuestExeFullFilename = /usr/bin/wget --no-check-certificate --spider -t 1 -T 10 https://182proxy.burlington.lab:443/test
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398041: sUnicodeExeDir = /usr/bin
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398042: sExeFullPath = /usr/bin/wget
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398043: sParameters = --no-check-certificate --spider -t 1 -T 10 https://182proxy.burlington.lab:443/test

[VWS - FUNC]  2020/02/24 15:56:2 TID=3662 MID=254389: VirtualMachineWs::CheckProcessStatus ENTER
[VWS - DEBUG] 2020/02/24 15:56:2 TID=3662 MID=254390: ullPid = 3053
[VWS - WARN]  2020/02/24 15:56:2 TID=140664473914958 MID=254428: CheckProcessStatus Succeeded
[VWS - DEBUG] 2020/02/24 15:56:2  TID=3662 MID=254441: StartProgramInGuest Succeeded. Ret: 4

Eller
  
Linux uten wget:

kA23a000000GIVvCAO_3_1

Inne i proxyen: /usr/local/avamarclient/bin/logs/VSphereWebService.log, see:

[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398040: sGuestExeFullFilename = /usr/bin/wget --no-check-certificate --spider -t 1 -T 10 https://182proxy.burlington.lab:443/test
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398041: sUnicodeExeDir = /usr/bin
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398042: sExeFullPath = /usr/bin/wget
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398043: sParameters = --no-check-certificate --spider -t 1 -T 10 https://182proxy.burlington.lab:443/test
[VWS - ERROR] 2020/02/24 15:56:20 TID=140363826202979 MID=398068: StartProgramInGuest Error: SOAP 1.1 fault: "":ServerFaultCode [no subcode]
"File /usr/bin/wget was not found"
Detail: <FileNotFoundFault xmlns="urn:vim25" xsi:type="FileNotFound"><file>/usr/bin/wget</file></FileNotFoundFault>

Eller

[VWS - DEBUG] 2020/02/24 15:34:22 TID=2397 MID=395783: StartProgramInGuest Succeeded. Ret: 1


Valgfri FLR-funksjon: Gjenopprett tilgangskontrolliste (ACL) 

Denne funksjonen er ikke aktivert som standard.
Resultat:
Uten ACL-funksjon (standard):

Alle gjenopprettede filer fra filgjenopprettingsfunksjonen eies av brukeren med VM-gjest-legitimasjon som ble angitt under FLR-operasjoner, og tidligere filtillatelser vil ikke bli angitt.

Med ACL-funksjonen aktivert:
Hvis brukeren vil at de gjenopprettede filene skal ha det opprinnelige fileierskapet med tilhørende tillatelser, må de aktivere denne valgfrie funksjonen.

kA23a000000GIVvCAO_3_2

Resultat:
Under gjenopprettingsoperasjonene vil nye filer bli opprettet som FLR VM-brukere, men på slutten av en gjenoppretting vil ACL-arbeidsflyten kjøre og sette eierskap og filtillatelser tilbake til opprinnelig status. 


Inne i proxyen: /usr/local/avamarclient/bin/logs/VSphereWebService.log, see:

[VWS - FUNC] 2020/03/03 03:42:29 TID=140664473914958 MID=254066: VirtualMachineWs::ExecuteRestoreAcl ENTER
[VWS - FUNC] 2020/03/03 03:42:29 TID=140664473914958 MID=254067: VirtualMachineWs::ExecuteRestoreAcl RestoreAcl Input file created
[VWS - FUNC] 2020/03/03 03:42:29 TID=140664473914958 MID=254068: VirtualMachineWs::ExecuteRestoreAcl Input File transfer /usr/local/avamarclient/bin/7fc01f28-c871-4835-948d-2d8a14bd1d8b.xml to /tmp/7fc01f28-c871-4835-948d-2d8a14bd1d8b.xml
[VWS - FUNC] 2020/03/03 03:42:32 TID=140664473914958 MID=254140: VirtualMachineWs::ExecuteRestoreAcl Exe File transfer /usr/local/avamarclient/bin/RestoreAcl to /tmp/7fc01f28-c871-4835-948d-2d8a14bd1d8b.exe
[VWS - DEBUG] 2020/03/03 03:42:40 TID=3662 MID=254349: sGuestExeFullFilename = /tmp/7fc01f28-c871-4835-948d-2d8a14bd1d8b.exe /tmp/7fc01f28-c871-4835-948d-2d8a14bd1d8b.xml 0001
[VWS - FUNC] 2020/03/03 03:42:42 TID=3662 MID=254389: VirtualMachineWs::CheckProcessStatus ENTER
[VWS - DEBUG] 2020/03/03 03:42:42 TID=3662 MID=254390: ullPid = 3053
[VWS - WARN] 2020/03/03 03:42:47 TID=140664473914958 MID=254428: CheckProcessStatus Succeeded
[VWS - DEBUG] 2020/03/03 03:42:47 TID=3662 MID=254441: StartProgramInGuest Succeeded. Ret: 0
[VWS - FUNC] 2020/03/03 03:42:47 TID=140664473914958 MID=254519: VirtualMachineWs::ExecuteRestoreAcl LEAVE

Cause

I enkelte Linux-distribusjoner, for eksempel Ubuntu eller Photon OS, er ikke operativsystemets rotbrukere satt opp eller konfigurert som standard. Linux-systemansvarlige er avhengige av sudo-kommandoen for å kjøre rettighetsutvidelser.  

Men på grunn av VMware-verktøy og VMware SDK er det for de fleste operasjoner (VM_LoginInGuest, CopyFileFromHostToGuest og ListFilesInGuest) ikke mulig å utføre en sudo-kommando i VMware-verktøy. 

Det kan være at en vanlig bruker ikke klarer å kjøre gjenopprettingsoperasjoner på grunn av utilstrekkelige målrettigheter for gjestekontoen.

Résolution

I miljøer der Linux-rotbrukeren er deaktivert, ikke konfigurert eller ikke kan deles på grunn av sikkerhetsproblemer, må du vurdere følgende løsning:

Alternativ 1. Gjenopprette til alternativ plassering som ikke-rotbruker. 
Eksempel:
Kildefil:  /root/test  (begrenset mappe/fil)
Målfil:  /home/flruser/(ikke begrenset plassering)
Oppretting av VM-gjest:  "flruser"  

Resultat:
Under FLR-funksjonen monteres de virtuelle diskene til Avamar-proxy og vises i brukergrensesnittet. Dette inkluderer alle mapper og filer. Bla gjennom /root-mappen og velg file1.txt. Deretter velger du restore everything to a different location og blar videre til eller skriver inn /home/flruser/ som Absolution Destination.

kA23a000000GIVvCAO_2_0

Resultat:
root/test-filen vil bli gjenopprettet til /home/flruser/test 
Merk at filen vil ha brukertillatelse for FLR-gjester. 

Alternativ 2. Gjenopprette til alternativ plassering med Restore ACL-alternativet ved hjelp av sudo-funksjonen. 
I Avamar 18.2 installerer du proxy hotfix 318791 (eller nyere)
I Avamar 19.2 installerer du proxy-hotfix 318791 (eller nyere)


Disse hotfixene legger til en ny «enablesudouserrestore»-funksjon som er deaktivert som standard.

Instruksjon for å aktivere sudo-funksjonen:
På en Avamar-proxy:
  1. Installer ovennevnte hotfix på proxyen
  2. Rediger /usr/local/avamarclient/bin/config.xml, legg til / rediger linjen (<enablesudouserrestore>1</enablesudouserrestore>) til filen
  3. Start FLR på nytt ved hjelp av denne kommandoen: service vmwareflr restart
På hver virtuelle Linux-maskin der FLR-funksjonen skal være på:
  1. Opprett dedikert FLR-bruker:  eksempel flruser.  For ekstra sikkerhet kan skall deaktiveres for denne kontoen
  2. Kopier binærfilen /usr/local/avamarclient/bin/RestoreAcl fra Avamar-proxy til target VM ved hjelp av den faste plasseringen /usr/bin/RestoreACL, og angi tillatelse til 755 ved hjelp av chmod
eksempel:
linux-da91:~ # ls -l /usr/bin/RestoreAcl
-rwxr-xr-x 1 root root 148016 Feb 13 17:48 /usr/bin/RestoreAcl
  1. Endre /etc/sudoers slik at FLR-brukeren fra trinn 1 kan kjøre binærfilen RestoreACL uten passord. 
eksempel
flruser ALL=(ALL) NOPASSWD: /usr/bin/RestoreAcl

Merk: Hvis sudoers requiretty-innstillingen er aktivert (linjen «Defaults requiretty» finnes i filen), trenger vi også denne linjen.  
Defaults!/usr/bin/RestoreAcl !requiretty


Alternativ 3: Gjenopprette den opprinnelige plasseringen ved hjelp av sudo wget-metoden med ACL. 

Merk: 

  • Dette alternativet er bare tilgjengelig når et valgfritt nettverks-HTTPS er tilgjengelig, og når > 5 MB eller 10 filer er valgt for gjenoppretting.
  • Bruk av Avamar-brukergrensesnitt til å bla gjennom live target VM-plasseringer med begrensede mapper kan mislykkes, men skriver du inn «Absolution Destination», kan det fortsatt fungere. 
  1. Utfør trinnene i alternativ 2 på proxy for å aktivere ACL-gjenoppretting.
  2. På Avamar-proxy redigerer du /usr/local/avamarclient/bin/wget_linux_script.template 
Før:
wget "$url/$filepath" -N  -nH -x -P "$dest" --no-check-certificate -S --restrict-file-names=nocontrol  --no-parent --tries 5 --header="Authorization:$token" --cut-dirs=2 --content-disposition 2>>    $logfile

Etter:
sudo wget "$url/$filepath" -N  -nH -x -P "$dest" --no-check-certificate -S --restrict-file-names=nocontrol  --no-parent --tries 5 --header="Authorization:$token" --cut-dirs=2 --content-disposition 2>>    $logfile
  1. Start FLR på nytt ved hjelp av denne kommandoen: service vmwareflr restart
  2. På hver virtuelle Linux-maskin hvor man skal bruke FLR-gjenoppretting til opprinnelig plassering, endrer du /etc/sudoers for at FLR-brukeren fra trinn 1 skal kunne kjøre wget-binærfilen uten passord. 
Eksempel:
flruser ALL=(ALL) NOPASSWD: /usr/bin/RestoreAcl
flruser ALL=(ALL) NOPASSWD: /usr/bin/wget
 
Merk: Hvis sudoers requiretty-innstillingen er aktivert (linjen «Defaults requiretty» finnes i filen), trenger vi også disse linjene:
Defaults!/usr/bin/RestoreAcl !requiretty
Defaults!/usr/bin/wget !requiretty

Produits concernés

Avamar

Produits

Avamar, Avamar Client for VMware
Propriétés de l’article
Numéro d’article: 000081871
Type d’article: Solution
Dernière modification: 20 nov. 2020
Version:  2
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.