Dit is de opdracht virt-ls die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator
PROGRAMMA:
NAAM
virt-ls - Lijst met bestanden op een virtuele machine
KORTE INHOUD
virt-ls [--opties] -d domnaam map [map ...]
virt-ls [--opties] -a schijf.img [-een schijf.img ...] map [map ...]
Oude stijl:
virt-ls [--opties] domnaam directory
virt-ls [--opties] disk.img [schijf.img ...] map
PRODUCTBESCHRIJVING
"virt-ls" toont bestandsnamen, bestandsgroottes, checksums, uitgebreide attributen en meer van a
virtuele machine of schijfkopie.
Er kunnen meerdere mapnamen worden opgegeven, in welk geval de uitvoer van elke map wordt samengevoegd.
Om mappen van een libvirt-gast weer te geven, gebruikt u de -d optie om de naam van de
gast. Voor een schijfkopie gebruikt u de -a optie.
"virt-ls" kan veel eenvoudige bestandsoverzichten maken. Voor ingewikkelder gevallen kan dit nodig zijn
. gastvis(1), of schrijf een programma rechtstreeks naar het gastfs(3) API.
Voorbeelden
Krijg een lijst met alle bestanden en mappen op een virtuele machine:
virt-ls -R -d gast /
Maak een lijst van alle setuid- of setgid-programma's in een virtuele Linux-machine:
virt-ls -lR -d gast / | grep '^- [42]'
Maak een lijst van alle openbaar beschrijfbare mappen in een virtuele Linux-machine:
virt-ls -lR -d gast / | grep '^d...7'
Maak een lijst van alle Unix-domeinsockets in een virtuele Linux-machine:
virt-ls -lR -d gast / | grep '^s'
Maak een lijst van alle reguliere bestanden met bestandsnamen die eindigen op '.png':
virt-ls -lR -d gast / | grep -i '^-.*\.png$'
Bestanden groter dan 10 MB weergeven in thuismappen:
virt-ls -lR -d gast / Home | awk '$3 > 10*1024*1024'
Vind alles gewijzigd in de afgelopen 7 dagen:
virt-ls -lR -d guest --tijd-dagen / | raar '$6 <= 7'
Vind gewone bestanden die in de afgelopen 24 uur zijn gewijzigd:
virt-ls -lR -d guest --tijd-dagen / | grep '^-' | raar '$6 < 1'
VERSCHILLEN IN FOTO'S EN STEUN FILES
Hoewel het mogelijk is om virt-ls te gebruiken om naar verschillen te zoeken, aangezien libguestfs ≥ 1.26 a
Er is een nieuw hulpmiddel beschikbaar, genaamd virt-diff(1).
OUTPUT MODES
"virt-ls" heeft vier uitvoermodi, bestuurd door verschillende combinaties van de -l en -R
opties.
EENVOUDIG LIJST
Een eenvoudige vermelding is als een gewone vermelding ls(1) commando:
$ virt-ls -d gast /
bak
laarsje
[enz.]
LANG LIJST
Met de -l (--lang) optie, is de uitvoer vergelijkbaar met de opdracht "ls -l" (meer specifiek,
zoals de functie "guestfs_ll").
$ virt-ls -l -d gast /
Totaal 204
dr-xr-xr-x. 2 root root 4096 2009-08-25 19:06 bin
dr-xr-xr-x. 5 wortel wortel 3072 2009-08-25 19:06 opstarten
[enz.]
Merk op dat hoewel dit handig is voor het weergeven van een map, u deze uitvoer niet moet parseren
in een ander programma. Gebruik in plaats daarvan 'RECURSIEVE LONGLISTING'.
RECURSIEVE LIJST
Met de -R (--recursief) optie, geeft "virt-ls" de namen van bestanden en mappen weer
recursief:
$ virt-ls -R -d gast / tmp
foo
foe/bar
[enz.]
Om deze uitvoer te genereren, voert "virt-ls" de functie "guestfs_find0" uit en converteert "\0"
tekens naar "\n".
RECURSIEVE LANG LIJST
gebruik -lR opties veranderen samen de uitvoer om mappen recursief weer te geven, met
bestandsstatistieken en optioneel andere functies zoals controlesommen en uitgebreide attributen.
De meeste interessante functies van "virt-ls" zijn alleen beschikbaar bij gebruik -lR modus.
De velden zijn normaal gesproken door spaties gescheiden. Bestandsnamen zijn niet geciteerd, dus u kunt de
uitvoer in een ander programma (omdat bestandsnamen spaties en andere onveilige bestanden kunnen bevatten).
karakters). Als de gast niet vertrouwd werd en iemand wist dat je "virt-ls" gebruikte
Als u de gast analyseert, kunnen ze u voor de gek houden door bestandsnamen met ingesloten bestanden te maken
nieuweregeltekens. Naar veilig parseer de uitvoer in een ander programma, gebruik de --csv (Komma-
Gescheiden waarden) optie.
Merk op dat dit uitvoerformaat volledig niets te maken heeft met de opdracht "ls -lR".
$ virt-ls -lR -d gast / bin
d 0555 4096 / bin
- 0755 123 /bin/alsaunmute
- 0755 28328 /bin/arch
l 0777 4 /bin/awk -> gawk
- 0755 27216 /bin/basisnaam
- 6.396 inw. / bin / bash
[enz.]
Deze basisvelden worden altijd getoond:
type dan:
Het bestandstype, een van: "-" (normaal bestand), "d" (directory), "c" (karakterapparaat),
"b" (blokapparaat), "p" (named pipe), "l" (symbolische link), "s" (socket) of "u"
(onbekend).
permissies
De Unix-machtigingen, weergegeven als een octaal getal van 4 cijfers.
lengte van de duwkabel
De grootte van het bestand. Dit wordt weergegeven in bytes, tenzij -h or --leesbare Optie is
gegeven, in welk geval dit wordt weergegeven als een voor mensen leesbaar getal.
pad
Het volledige pad van het bestand of de map.
link
Alleen voor symbolische links: het linkdoel.
In -lR modus maken extra opdrachtregelopties de weergave van meer velden mogelijk.
Met de --uiden flag, worden deze extra velden vóór het pad weergegeven:
uid
gid De UID en GID van de eigenaar van het bestand (numeriek weergegeven). Noteer alleen deze
zinvol zijn in de context van een Unix-achtige gast.
Met de --keer flag, worden deze extra velden weergegeven:
een tijd
Het tijdstip van de laatste toegang.
mtime
Het tijdstip van de laatste wijziging.
ctime
Het tijdstip van de laatste statuswijziging.
De tijdvelden worden weergegeven als tekenreeksdatums en -tijden, tenzij een van de --tijd-t,
--tijd-relatief or --tijd-dagen vlaggen worden gegeven.
Met de --extra-statistieken flag, worden deze extra velden weergegeven:
apparaat
Het apparaat dat het bestand bevat (weergegeven als hoofd:klein). Dit komt mogelijk niet overeen met apparaten
zoals bekend bij de gast.
inode
Het inodenummer.
link
Het aantal harde links.
dev
Voor speciale blok- en char-bestanden: het apparaat (weergegeven als major:minor).
blokken
Het aantal blokken van 512 bytes dat aan het bestand is toegewezen.
Met de --controlesom flag, wordt de controlesom van de bestandsinhoud weergegeven (alleen voor regulier
bestanden). Het berekenen van de controlesommen van bestanden kan een aanzienlijke hoeveelheid tijd in beslag nemen.
OPTIES
--help
Korte hulp weergeven.
-a filet
--toevoegen filet
Toevoegen filet wat een schijfkopie van een virtuele machine zou moeten zijn. Als de virtuele machine
heeft meerdere blokapparaten, u moet ze allemaal voorzien van aparte -a opties.
Het formaat van de schijfkopie wordt automatisch gedetecteerd. Om dit op te heffen en a . te forceren
bepaald formaat gebruik de --formaat=.. optie.
-a URI
--toevoegen URI
Voeg een externe schijf toe. Zie "OPSLAG OP AFSTAND TOEVOEGEN" in gastvis(1).
--controlesom
--checksum=crc|md5|sha1|sha224|sha256|sha384|sha512
Geef de controlesom weer over de bestandsinhoud voor gewone bestanden. Zonder argument, dit
standaard gebruikt md5. Met behulp van een argument kunt u het te gebruiken controlesomtype selecteren.
Deze optie heeft alleen effect in -lR uitvoermodus. Zie "RECURSIEVE LONGLIJST" hierboven.
-c URI
--aansluiten URI
Als je libvirt gebruikt, maak dan verbinding met de gegeven URI. Indien weggelaten, maken we verbinding met de
standaard libvirt-hypervisor.
Als u apparaten voor gastblokkering rechtstreeks opgeeft (-a), dan wordt libvirt helemaal niet gebruikt.
--csv
Schrijf de resultaten op in CSV-formaat (door komma's gescheiden waarden). Dit formaat kan zijn:
gemakkelijk geïmporteerd in databases en spreadsheets, maar lees "OPMERKING OVER CSV-FORMAAT"
hieronder.
-d gast
--domein gast
Voeg alle schijven toe van de genoemde libvirt guest. Domein-UUID's kunnen worden gebruikt in plaats van:
namen.
--echo-toetsen
Wanneer u om sleutels en wachtwoordzinnen vraagt, schakelt virt-ls normaal gesproken de echo uit, zodat u
kan niet zien wat je typt. Als u zich geen zorgen maakt over Tempest-aanvallen en
er is niemand anders in de kamer, u kunt deze vlag specificeren om te zien wat u typt.
--extra-statistieken
Geef extra statistieken weer.
Deze optie heeft alleen effect in -lR uitvoermodus. Zie "RECURSIEVE LONGLIJST" hierboven.
--format=rauw|qcow2|..
--formaat
De standaard voor de -a optie is om het formaat van de schijfkopie automatisch te detecteren. Gebruik makend van
dit dwingt het schijfformaat voor -a opties die volgen op de opdrachtregel. Gebruik makend van
--formaat zonder argument schakelt terug naar automatische detectie voor volgende -a opties.
Bijvoorbeeld:
virt-ls --format=raw -a schijf.img /dir
dwingt onbewerkte indeling (geen automatische detectie) voor schijf.img.
virt-ls --format=raw -a schijf.img --format -a andere.img /dir
dwingt onbewerkte indeling (geen automatische detectie) voor schijf.img en keert terug naar automatische detectie voor
een andere.img.
Als u niet-vertrouwde gastschijfkopieën in onbewerkte indeling heeft, moet u deze optie gebruiken om:
specificeer het schijfformaat. Dit voorkomt een mogelijk beveiligingsprobleem met kwaadwillende
gasten (CVE-2010-3851).
-h
--leesbare
Geef bestandsgroottes weer in een voor mensen leesbaar formaat.
Deze optie heeft alleen effect in -lR uitvoermodus. Zie "RECURSIEVE LONGLIJST" hierboven.
--sleutels-van-stdin
Lees sleutel- of wachtwoordzinparameters van stdin. De standaard is om te proberen te lezen
wachtwoordzinnen van de gebruiker door te openen /dev/tty.
-m dev[:mountpoint[:opties[:fstype]]]
--monteer dev[:mountpoint[:opties[:fstype]]]
Monteer de genoemde partitie of het logische volume op het opgegeven koppelpunt.
Als het koppelpunt wordt weggelaten, is het standaard /.
Het specificeren van een mountpoint schakelt de inspectie van de guest en de mount ervan uit
root en al zijn koppelpunten, dus zorg ervoor dat u alle benodigde koppelpunten koppelt
werken met de bestandsnamen die als argumenten worden gegeven.
Als u niet weet welke bestandssystemen een schijfkopie bevat, kunt u guestfish uitvoeren
zonder deze optie, maak dan een lijst van de beschikbare partities, bestandssystemen en LV's (zie
"list-partitions", "list-filesystems" en "lvs" commando's), of u kunt de
virt-bestandssystemen(1) programma.
Het derde (en zelden gebruikte) deel van de mount-parameter is de lijst met mount-opties
gebruikt om het onderliggende bestandssysteem te mounten. Als dit niet wordt gegeven, dan zijn de mount-opties
zijn ofwel de lege string of "ro" (de laatste als de --ro vlag wordt gebruikt). Door
door de aankoppelopties op te geven, negeert u deze standaardkeuze. Waarschijnlijk de enige
keer dat u dit zou gebruiken, is om ACL's en/of uitgebreide attributen in te schakelen als het bestandssysteem
kan hen ondersteunen:
-m /dev/sda1://:acl,user_xattr
Het gebruik van deze vlag is gelijk aan het gebruik van de opdracht "mount-options".
Het vierde deel van de parameter is het te gebruiken stuurprogramma voor het bestandssysteem, zoals "ext3" of
"ntfs". Dit is zelden nodig, maar kan handig zijn als meerdere stuurprogramma's geldig zijn voor een
bestandssysteem (bijvoorbeeld: "ext2" en "ext3"), of als libguestfs een bestandssysteem verkeerd identificeert.
-l
--lang
-R
--recursief
Selecteer de modus. Met geen van deze opties produceert "virt-ls" een eenvoudig, plat
lijst met bestanden in de genoemde directory. Zie "EENVOUDIGE AANBIEDING".
"virt-ls -l" produceert een "lange lijst", die meer details toont. Zie "LANGE LIJST".
"virt-ls -R" produceert een recursieve lijst met bestanden, beginnend bij de genoemde map. Zien
"RECURSIEVE LIJST".
"virt-ls -lR" produceert een recursieve lange lijst die gemakkelijker kan worden geparseerd. Zien
"RECURSIEVE LANGE LIJST".
--keer
Geef tijdvelden weer.
Deze optie heeft alleen effect in -lR uitvoermodus. Zie "RECURSIEVE LONGLIJST" hierboven.
--tijd-dagen
Geef tijdvelden weer als dagen voor nu (negatief indien in de toekomst).
Merk op dat 0 in uitvoer betekent "tot 1 dag voor nu", of dat de leeftijd van het bestand is
tussen 0 en 86399 seconden.
Deze optie heeft alleen effect in -lR uitvoermodus. Zie "RECURSIEVE LONGLIJST" hierboven.
--tijd-relatief
Geef tijdvelden weer als seconden voor nu (negatief indien in de toekomst).
Deze optie heeft alleen effect in -lR uitvoermodus. Zie "RECURSIEVE LONGLIJST" hierboven.
--tijd-t
Geef tijdvelden weer als seconden sinds het Unix-tijdperk.
Deze optie heeft alleen effect in -lR uitvoermodus. Zie "RECURSIEVE LONGLIJST" hierboven.
--uiden
UID- en GID-velden weergeven.
Deze optie heeft alleen effect in -lR uitvoermodus. Zie "RECURSIEVE LONGLIJST" hierboven.
-v
--uitgebreid
Schakel uitgebreide berichten in voor foutopsporing.
-V
--versie
Versienummer weergeven en afsluiten.
-x Schakel tracering van libguestfs API-aanroepen in.
OUDE STIJL COMMAND LINE ARGUMENTEN
Eerdere versies van virt-ls lieten je het volgende schrijven:
virt-ls schijf.img [schijf.img ...] /dir
or
virt-ls gastnaam /dir
terwijl je in deze versie zou moeten gebruiken -a or -d respectievelijk om de verwarrende zaak te vermijden
waar een schijfkopie dezelfde naam kan hebben als een gast.
Voor compatibiliteit wordt de oude stijl nog steeds ondersteund.
NOTITIE OVER ONS CSV FORMAT
Door komma's gescheiden waarden (CSV) is een misleidende indeling. Het lijkt alsof het makkelijk moet zijn
ontleden, maar het is zeker niet gemakkelijk te ontleden.
Mythe: splits velden gewoon bij komma's. Realiteit: dit wel niet betrouwbaar werken. dit voorbeeld
heeft twee kolommen:
"foo,bar",baz
Mythe: lees het bestand regel voor regel. Realiteit: dit wel niet betrouwbaar werken. Dit
voorbeeld heeft één rij:
"foo"
bar",baz
Gebruik voor shellscripts "csvtool" (http://merjis.com/developers/csv ook verpakt in major
Linux-distributies).
Gebruik voor andere talen een CSV-verwerkingsbibliotheek (bijv. "Text::CSV" voor Perl of Python's
ingebouwde csv-bibliotheek).
De meeste spreadsheets en databases kunnen CSV rechtstreeks importeren.
EXIT STATUS
Dit programma retourneert 0 als het is gelukt, of niet-nul als er een fout is opgetreden.
Gebruik virt-ls online met behulp van onworks.net-services