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: Sådan udfører du en Linux-VMware-gendannelse på filniveau uden brug af en rodbruger ved hjælp af 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



Oplysninger om Avamar FLR:
Avamars gendannelse på filniveau er en agentfri gendannelsesløsning, som kan bruges til at gendanne en eller flere gæstefiler fra en virtuel maskines (VM) afbildningssikkerhedskopi. Den mekanisme, der bruges til at udføre gendannelsen på filniveau, er VMware-værktøjer og vSphere API-gæstehandlingsfunktioner. Afbildningssikkerhedskopien på den virtuelle maskine opretter forbindelse til den virtuelle disk (.vmdk) på Avamar-proxyen under gennemsynet. Når filerne er valgt til gendannelse, bliver de kopieret til filoverførselsfilen fra proxyen til destinations-VM'en.

Obligatoriske krav for FLR:
  1. Den virtuelle destinationsmaskine skal være tændt.
  2. Den virtuelle destinationsmaskine skal have VMware-værktøjer installeret, og tjenesten skal køre under gendannelseshandlinger. 
  3. Avamar-administratoren eller Avamar-sikkerhedskopien/-gendannelseshandlingen/-brugeren skal have gyldige legitimationsoplysninger på destinationsgæsten (kræves af VMware-gæstehandlings-SDK), og disse legitimationsoplysninger skal indtastes i starten af handlingerne for gendannelse på filniveau.
  4. Destinationsgæstebrugeren skal have rettigheder til at skrive placering, ellers vil handlingen mislykkes. For den virtuelle Windows-maskine skal gendannelses-VM-brugeren også have rettigheder til at skrive uden UAC-elevation, og for virtuelle Linux-maskiner skal gendannelses-VM'en være i stand til at skrive uden sudo. 
Valgfrie krav for FLR: Påkrævet for hurtigere HTTPS-overførselsmetode. 
  1. Virtuelle destinationsmaskiner skal have TCP 443-adgang til proxyens virtuelle maskiner.
  2. På virtuelle Linux-maskiner skal der installeres et moderne wget-program internt i den virtuelle maskine inden gendannelseshandlingen.  
Hvis driftskravene ikke er opfyldt, vises følgende advarsler, inden du indsender jobbet:

Hvis destinations-VM'en ikke kan oprette en HTTPS-forbindelse til proxyen:

kA23a000000GIVvCAO_3_0

Inde i proxyen: /usr/local/avamarclient/bin/logs/VSphereWebService.log, see 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 uden wget:

kA23a000000GIVvCAO_3_1

Inde 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-funktion: Restore Access Control List ( ACL) 

Denne funktion er som standard ikke aktiveret.
Resultat:
Uden ACL-funktion (standard):

Alle gendannede filer fra funktionen til gendannelse på filniveau vil blive ejet af de VM-gæstelegitimationsoplysninger, brugeren angav under FLR-handlinger, og tidligere filtilladelser angives ikke.

Med ACL-funktion aktiveret:
Hvis brugeren ønsker, at de gendannede filer skal have den oprindelige oprettelses filejerskab og -tilladelser, skal denne valgfri funktion aktiveres.

kA23a000000GIVvCAO_3_2

Resultat:
Under gendannelseshandlinger vil der blive oprettet nye filer som FLR-VM-brugerne, men ved afslutningen af en gendannelse vil ACL-arbejdsprocessen køre og tilbageføre ejerskabet og filtilladelserne til den oprindelige tilstand. 


Inde 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 nogle Linux-distributioner som f.eks. Ubuntu eller Photon OS er OS-rodbrugere som standard ikke angivet eller konfigureret. I stedet bruger Linux-administratorer sudo-kommandoen til at køre elevationshandlinger.  

Men på grund af VMware-værktøjer og VMware SDK er det ved de fleste handlinger (VM_LoginInGuest, CopyFileFromHostToGuest og ListFilesInGuest) ikke muligt for VMware-værktøjerne at udføre sudo-kommandoen. 

Når gendannelseshandlingerne udføres med en normal bruger, kan handlingen mislykkes på grund af utilstrækkelige destinationsgæsteprivilegier.

Résolution

I miljøer, hvor Linux-rodbrugeren er deaktiveret, ikke er konfigureret eller ikke kan deles på grund af sikkerhedshensyn, bør du overveje følgende løsningstrin:

Valgmulighed 1. Gendan til alternativ placering som ikke-rodbruger. 
Eksempel:
Kildefil:  /root/test  (begrænset mappe/fil)
Destinationsfil:  /home/flruser/ (placering uden begrænsninger) 
VM-gæsteoprettelser:  "flruser"  

Resultat:
Under FLR-gennemsyn oprettes forbindelse fra de virtuelle diske til Avamar-proxyen, og de vises i brugergrænsefladen. Dette omfatter alle mapper og filer. Gennemse mappen /root, vælg file1.txt, og vælg derefter "restore everything to a different location" og naviger til eller indtast /home/flruser/ som Absolution Destination.

kA23a000000GIVvCAO_2_0

Resultat:
Filen root/test vil blive gendannet til /home/flruser/test 
Bemærk, at filen vil have FLR-gæstebrugertilladelse. 

Valgmulighed 2. Gendan til alternativ placering med indstillingen Restore ACL ved hjælp af sudo-funktionen. 
I Avamar 18.2 skal du installere proxy-hotfix 318791 (eller nyere)
I Avamar 19.2 skal du installere proxy-hotfix 318791 (eller nyere)


Disse hotfixes tilføjer en ny "enablesudouserrestore"-funktion, der som standard er deaktiveret.

Instruktion til aktivering af sudo-funktion:
På en Avamar-proxy:
  1. Installer ovenstående hotfix på proxyen
  2. Rediger /usr/local/avamarclient/bin/config.xml, tilføj/rediger linjen (<enablesudouserrestore>1</enablesudouserrestore) i filen
  3. Genstart FLR med kommandoen: service vmwareflr restart
På alle virtuelle Linux-maskiner, hvor FLR-funktionen vil være aktiveret:
  1. Opret dedikeret FLR-bruger:  example flruser.  For ekstra sikkerhed kan shell deaktiveres for denne konto
  2. Kopiér den binære fil /usr/local/avamarclient/bin/RestoreAcl fra Avamar-proxyen til destinations-VM vha. den faste placering /usr/bin/RestoreACL, og angiv tilladelsen til 755 ved hjælp af chmod
eksempel:
linux-da91:~ # ls -l /usr/bin/RestoreAcl
-rwxr-xr-x 1 root root 148016 Feb 13 17:48 /usr/bin/RestoreAcl
  1. Rediger /etc/sudoers for at give FLR-brugeren fra trin 1 tilladelse til at udføre den binære fil RestoreACL uden adgangskode. 
eksempel
flruser ALL=(ALL) NOPASSWD: /usr/bin/RestoreAcl

Bemærk: Hvis indstillingen sudoers requiretty er aktiveret (linjen "Defaults requiretty" findes i filen), skal vi også bruge denne linje.  
Defaults!/usr/bin/RestoreAcl !requiretty


Valgmulighed 3: Gendan til oprindelig placering ved hjælp af sudo wget-metoden med ACL. 

Bemærk: 

  • Denne indstilling er kun tilgængelig, når det valgfrie netværks-HTTPS er tilgængeligt, og når gendannelsen har >5 MB eller 10 filer valgt.
  • Brug af Avamar GUI til at gennemse live-destinationsplaceringer for VM med begrænset mappeplacering kan mislykkes, men direkte indtastning af "Absolution Destination" vil stadig fungere. 
  1. Udfør trinnene i valgmulighed 2 på proxyen for at aktivere ACL Restore.
  2. På Avamar-proxyen skal du redigere /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

Efter:
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. Genstart FLR med kommandoen: service vmwareflr restart
  2. På alle virtuelle Linux-maskiner, hvor FLR-gendannelse til den oprindelige placering vil blive brugt, skal du redigere /etc/sudoers for at give FLR-brugeren fra trin 1 tilladelse til at udføre den binære fil wget uden adgangskode. 
Eksempel:
flruser ALL=(ALL) NOPASSWD: /usr/bin/RestoreAcl
flruser ALL=(ALL) NOPASSWD: /usr/bin/wget
 
Bemærk: Hvis indstillingen sudoers requiretty er aktiveret (linjen "Defaults requiretty" findes i filen), skal vi også bruge disse linjer:
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.