Dies ist der Befehl virt-ls, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
virt-ls – Dateien in einer virtuellen Maschine auflisten
ZUSAMMENFASSUNG
virt-ls [--options] -d domname Verzeichnis [Verzeichnis ...]
virt-ls [--options] -a disk.img [-a disk.img ...] Verzeichnis [Verzeichnis ...]
Alter Stil:
virt-ls [--options] Domname-Verzeichnis
virt-ls [--options] disk.img [disk.img ...] Verzeichnis
BESCHREIBUNG
„virt-ls“ listet Dateinamen, Dateigrößen, Prüfsummen, erweiterte Attribute und mehr von a auf
virtuelle Maschine oder Festplatten-Image.
Es können mehrere Verzeichnisnamen angegeben werden. In diesem Fall wird die Ausgabe jedes Verzeichnisses verkettet.
Um Verzeichnisse von einem libvirt-Gast aufzulisten, verwenden Sie die -d Option zur Angabe des Namens des
Gast. Verwenden Sie für ein Disk-Image die -a .
„virt-ls“ kann viele einfache Dateilisten durchführen. Bei komplizierteren Fällen ist dies möglicherweise erforderlich
- Gastfisch(1) oder schreiben Sie ein Programm direkt in das Gastfs(3) API.
Beispiele:
Rufen Sie eine Liste aller Dateien und Verzeichnisse in einer virtuellen Maschine ab:
virt-ls -R -d Gast /
Listen Sie alle setuid- oder setgid-Programme in einer virtuellen Linux-Maschine auf:
virt-ls -lR -d Gast / | grep '^- [42]'
Listen Sie alle öffentlich beschreibbaren Verzeichnisse in einer virtuellen Linux-Maschine auf:
virt-ls -lR -d Gast / | grep '^d ...7'
Listen Sie alle Unix-Domänen-Sockets in einer virtuellen Linux-Maschine auf:
virt-ls -lR -d Gast / | grep '^s'
Listen Sie alle regulären Dateien auf, deren Dateinamen auf '.png' enden:
virt-ls -lR -d Gast / | grep -i '^-.*\.png$'
So zeigen Sie Dateien in Home-Verzeichnissen an, die größer als 10 MB sind:
virt-ls -lR -d Gast / Home | awk '$3 > 10*1024*1024'
Finden Sie alles, was in den letzten 7 Tagen geändert wurde:
virt-ls -lR -d Guest --time-days / | awk '$6 <= 7'
Suchen Sie nach regulären Dateien, die in den letzten 24 Stunden geändert wurden:
virt-ls -lR -d Guest --time-days / | grep '^-' | awk '$6 < 1'
UNTERSCHIEDE IN SCHNAPPSCHÜSSE UND ZURÜCK DATEIEN
Obwohl es möglich ist, virt-ls zu verwenden, um nach Unterschieden zu suchen, da libguestfs ≥ 1.26 a
Es ist ein neues Tool mit dem Namen verfügbar Virt-Diff(1).
AUSGABE MODI
„virt-ls“ verfügt über vier Ausgabemodi, die durch verschiedene Kombinationen der gesteuert werden -l und -R
nach.
Schlicht Listing
Eine einfache Auflistung ist wie das Gewöhnliche ls(1) Befehl:
$ virt-ls -d Gast /
Kasten
Stiefel
[usw.]
LANGE Listing
Mit der -l (--lang)-Option ist die Ausgabe wie beim Befehl „ls -l“ (genauer gesagt:
wie die Funktion „guestfs_ll“).
$ virt-ls -l -d Gast /
Insgesamt 204
dr-xr-xr-x. 2 root root 4096 2009 08:25 bin
dr-xr-xr-x. 5 Root Root 3072 2009 08:25 Booten
[usw.]
Beachten Sie, dass dies zwar für die Anzeige eines Verzeichnisses nützlich ist, Sie jedoch nicht versuchen sollten, diese Ausgabe zu analysieren
in einem anderen Programm. Verwenden Sie stattdessen „RECURSIVE LONG LISTING“.
REKURSIV Listing
Mit der -R (- rekursiv)-Option listet „virt-ls“ die Namen von Dateien und Verzeichnissen auf
rekursiv:
$ virt-ls -R -d Gast / Tmp
foo
foo/bar
[usw.]
Um diese Ausgabe zu generieren, führt „virt-ls“ die Funktion „guestfs_find0“ aus und konvertiert „\0“.
Zeichen zu „\n“.
REKURSIV LANGE Listing
Die richtigen -lR Optionen zusammen ändern die Ausgabe so, dass Verzeichnisse rekursiv angezeigt werden, mit
Dateistatistiken und optional weitere Funktionen wie Prüfsummen und erweiterte Attribute.
Die meisten interessanten Funktionen von „virt-ls“ stehen nur bei Verwendung zur Verfügung -lR Modus arbeiten können.
Die Felder sind normalerweise durch Leerzeichen getrennt. Dateinamen sind nicht zitiert, daher können Sie das nicht verwenden
Ausgabe in einem anderen Programm (da Dateinamen Leerzeichen und andere unsichere Elemente enthalten können).
Figuren). Wenn der Gast nicht vertrauenswürdig war und jemand wusste, dass Sie „virt-ls“ verwenden
Wenn Sie den Gast analysieren, könnten sie Ihnen einen Streich spielen, indem sie Dateinamen mit eingebetteten Dateien erstellen
Newline-Zeichen. Zu sicher Analysieren Sie die Ausgabe in einem anderen Programm, verwenden Sie die --csv (Komma-
Option „Getrennte Werte“).
Beachten Sie, dass dieses Ausgabeformat überhaupt nichts mit dem Befehl „ls -lR“ zu tun hat.
$ virt-ls -lR -d Gast /Behälter
d 0555 4096 /Behälter
- 0755 123 /bin/alsaunmute
- 0755 28328 /bin/arch
l 0777 4 /bin/awk -> gawk
- 0755 27216 /bin/basename
- 0755 943360 / bin / bash
[usw.]
Diese Grundfelder werden immer angezeigt:
tippe
Der Dateityp, einer von: „-“ (reguläre Datei), „d“ (Verzeichnis), „c“ (Zeichengerät),
„b“ (Blockgerät), „p“ (Named Pipe), „l“ (symbolischer Link), „s“ (Socket) oder „u“
(Unbekannt).
Berechtigungen
Die Unix-Berechtigungen, angezeigt als 4-stellige Oktalzahl.
Größe
Die Größe der Datei. Dies wird in Bytes angezeigt, sofern nicht -h or --für Menschen lesbar Option ist
angegeben, wobei diese als für Menschen lesbare Zahl angezeigt wird.
Weg
Der vollständige Pfad der Datei oder des Verzeichnisses.
Link
Nur für symbolische Links: das Linkziel.
In -lR Modus ermöglichen zusätzliche Befehlszeilenoptionen die Anzeige weiterer Felder.
Mit der --uids Flag werden diese zusätzlichen Felder vor dem Pfad angezeigt:
uid
gid Die UID und GID des Eigentümers der Datei (numerisch angezeigt). Beachten Sie nur diese
im Kontext eines Unix-ähnlichen Gastes sinnvoll sein.
Mit der --mal Flag werden diese zusätzlichen Felder angezeigt:
eine Zeit
Der Zeitpunkt des letzten Zugriffs.
mtime
Der Zeitpunkt der letzten Änderung.
ctime
Der Zeitpunkt der letzten Statusänderung.
Die Zeitfelder werden als String-Datums- und Uhrzeitangaben angezeigt, es sei denn, eines davon ist vorhanden --time-t,
--zeitrelativ or --time-days Flags ist gegeben.
Mit der --extra-stats Flag werden diese zusätzlichen Felder angezeigt:
Gerät
Das Gerät, das die Datei enthält (angezeigt als Major:Minor). Dies stimmt möglicherweise nicht mit den Geräten überein
wie dem Gast bekannt ist.
Inode
Die Inode-Nummer.
nlink
Die Anzahl der Hardlinks.
rdev
Für Block- und Char-Sonderdateien das Gerät (angezeigt als Major:Minor).
Blöcke
Die Anzahl der der Datei zugewiesenen 512-Byte-Blöcke.
Mit der --Prüfsumme Flag wird die Prüfsumme des Dateiinhalts angezeigt (nur für reguläre
Dateien). Das Berechnen von Dateiprüfsummen kann viel Zeit in Anspruch nehmen.
OPTIONAL
--help
Kurze Hilfe anzeigen.
-a Datei
--hinzufügen Datei
Speichern Datei Dies sollte ein Disk-Image von einer virtuellen Maschine sein. Wenn die virtuelle Maschine
mehrere Blockgeräte hat, müssen Sie alle mit separaten versorgen -a nach.
Das Format des Disk-Images wird automatisch erkannt. Um dies zu überschreiben und a . zu erzwingen
bestimmtes Format verwenden --format=.. .
-a URI
--hinzufügen URI
Fügen Sie eine Remote-Festplatte hinzu. Siehe "FERNSPEICHER HINZUFÜGEN" in Gastfisch(1).
--Prüfsumme
--checksum=crc|md5|sha1|sha224|sha256|sha384|sha512
Prüfsumme über Dateiinhalte für reguläre Dateien anzeigen. Ohne Argument, dies
Standardmäßig wird verwendet md5. Mithilfe eines Arguments können Sie den zu verwendenden Prüfsummentyp auswählen.
Diese Option hat nur Wirkung in -lR Ausgabemodus. Siehe „REKURSIVE LONG LISTING“ oben.
-c URI
--verbinden URI
Wenn Sie libvirt verwenden, verbinden Sie sich mit dem angegebenen URI. Wenn weggelassen, dann verbinden wir uns mit dem
Standard-Libvirt-Hypervisor.
Wenn Sie Gastblockgeräte direkt angeben (-a), dann wird libvirt überhaupt nicht verwendet.
--csv
Schreiben Sie die Ergebnisse im CSV-Format (durch Kommas getrennte Werte) aus. Dieses Format kann sein
lässt sich leicht in Datenbanken und Tabellenkalkulationen importieren, aber lesen Sie „HINWEIS ZUM CSV-FORMAT“.
unten mit.
-d Gast
--Domain Gast
Fügen Sie alle Festplatten des benannten libvirt-Gasts hinzu. Domänen-UUIDs können anstelle von verwendet werden
Namen.
--echo-Tasten
Bei der Aufforderung zur Eingabe von Schlüsseln und Passphrasen schaltet virt-ls normalerweise das Echo aus, damit Sie
kann nicht sehen, was Sie eingeben. Wenn Sie sich keine Sorgen über Sturmangriffe machen und
Wenn sich sonst niemand im Raum befindet, können Sie dieses Flag angeben, um zu sehen, was Sie eingeben.
--extra-stats
Zusätzliche Statistiken anzeigen.
Diese Option hat nur Wirkung in -lR Ausgabemodus. Siehe „REKURSIVE LONG LISTING“ oben.
--format=raw|qcow2|..
--Format
Die Standardeinstellung für die -a Option besteht darin, das Format des Disk-Images automatisch zu erkennen. Verwenden von
dies erzwingt das Festplattenformat für -a Optionen, die auf der Befehlszeile folgen. Verwenden von
--Format ohne Argument wechselt zurück zur automatischen Erkennung für nachfolgende -a nach.
Beispielsweise:
virt-ls --format=raw -a disk.img /dir
erzwingt das Rohformat (keine automatische Erkennung) für disk.img.
virt-ls --format=raw -a disk.img --format -a another.img /dir
erzwingt das Rohformat (keine automatische Erkennung) für disk.img und kehrt zur automatischen Erkennung zurück für
ein anderes.img.
Wenn Sie nicht vertrauenswürdige Gast-Disk-Images im Raw-Format haben, sollten Sie diese Option verwenden, um
Geben Sie das Festplattenformat an. Dies vermeidet ein mögliches Sicherheitsproblem mit bösartigen
Gäste (CVE-2010-3851).
-h
--für Menschen lesbar
Zeigen Sie Dateigrößen in einem für Menschen lesbaren Format an.
Diese Option hat nur Wirkung in -lR Ausgabemodus. Siehe „REKURSIVE LONG LISTING“ oben.
--keys-from-stdin
Schlüssel- oder Passphrasenparameter aus stdin lesen. Standardmäßig wird versucht zu lesen
Passphrasen vom Benutzer durch Öffnen /dev/tty.
-m dev[:mountpoint[:options[:fstype]]]
--montieren dev[:mountpoint[:options[:fstype]]]
Mounten Sie die benannte Partition oder das logische Volume am angegebenen Mountpunkt.
Wenn der Mountpoint weggelassen wird, wird standardmäßig /.
Die Angabe eines Mountpoints deaktiviert die Überprüfung des Gasts und das Mounten seiner
root und alle seine Mountpoints, also stellen Sie sicher, dass Sie alle Mountpoints mounten, die für
mit den als Argumenten angegebenen Dateinamen arbeiten.
Wenn Sie nicht wissen, welche Dateisysteme ein Disk-Image enthält, können Sie entweder guestfish
ohne diese Option, dann listen Sie die verfügbaren Partitionen, Dateisysteme und LVs auf (siehe
"list-partitions", "list-filesystems" und "lvs" Befehle), oder Sie können die
virt-Dateisysteme(1) Programm.
Der dritte (und selten verwendete) Teil des Mount-Parameters ist die Liste der Mount-Optionen
wird verwendet, um das zugrunde liegende Dateisystem zu mounten. Wenn dies nicht angegeben ist, dann die Mount-Optionen
sind entweder die leere Zeichenfolge oder "ro" (letzteres, wenn die --ro Flagge verwendet wird). Von
Wenn Sie die Mount-Optionen angeben, überschreiben Sie diese Standardauswahl. Wahrscheinlich der einzige
Sie würden dies verwenden, um ACLs und/oder erweiterte Attribute zu aktivieren, wenn das Dateisystem
kann sie unterstützen:
-m /dev/sda1:/:acl,user_xattr
Die Verwendung dieses Flags entspricht der Verwendung des Befehls "mount-options".
Der vierte Teil des Parameters ist der zu verwendende Dateisystemtreiber, z. B. "ext3" oder
"ntfs". Dies wird selten benötigt, kann aber nützlich sein, wenn mehrere Treiber für a . gültig sind
Dateisystem (zB: "ext2" und "ext3"), oder wenn libguestfs ein Dateisystem falsch identifiziert.
-l
--lang
-R
- rekursiv
Wählen Sie den Modus aus. Mit keiner dieser Optionen erzeugt „virt-ls“ ein einfaches, flaches
Liste der Dateien im genannten Verzeichnis. Siehe „EINFACHE AUFLISTUNG“.
„virt-ls -l“ erzeugt eine „lange Auflistung“, die mehr Details zeigt. Siehe „LANGE LISTE“.
„virt-ls -R“ erzeugt eine rekursive Liste von Dateien, beginnend im genannten Verzeichnis. Sehen
„REKURSIVE AUFLISTUNG“.
„virt-ls -lR“ erzeugt eine rekursive lange Liste, die einfacher analysiert werden kann. Sehen
„REKURSIVE LANGE AUFLISTUNG“.
--mal
Zeitfelder anzeigen.
Diese Option hat nur Wirkung in -lR Ausgabemodus. Siehe „REKURSIVE LONG LISTING“ oben.
--time-days
Zeitfelder als Tage vor dem jetzigen Zeitpunkt anzeigen (negativ, wenn in der Zukunft).
Beachten Sie, dass 0 in der Ausgabe „bis zu 1 Tag vor jetzt“ bedeutet oder dass das Alter der Datei angegeben ist
zwischen 0 und 86399 Sekunden.
Diese Option hat nur Wirkung in -lR Ausgabemodus. Siehe „REKURSIVE LONG LISTING“ oben.
--zeitrelativ
Zeitfelder als Sekunden vor dem jetzigen Zeitpunkt anzeigen (negativ, wenn in der Zukunft).
Diese Option hat nur Wirkung in -lR Ausgabemodus. Siehe „REKURSIVE LONG LISTING“ oben.
--time-t
Zeitfelder als Sekunden seit der Unix-Epoche anzeigen.
Diese Option hat nur Wirkung in -lR Ausgabemodus. Siehe „REKURSIVE LONG LISTING“ oben.
--uids
UID- und GID-Felder anzeigen.
Diese Option hat nur Wirkung in -lR Ausgabemodus. Siehe „REKURSIVE LONG LISTING“ oben.
-v
- ausführlich
Aktivieren Sie ausführliche Nachrichten zum Debuggen.
-V
--Version
Versionsnummer anzeigen und beenden.
-x Aktivieren Sie die Ablaufverfolgung von libguestfs-API-Aufrufen.
ALTER STIL COMMAND LINE ARGUMENTE
In früheren Versionen von virt-ls konnten Sie Folgendes schreiben:
virt-ls disk.img [disk.img ...] /dir
or
virt-ls Gastname /dir
während Sie in dieser Version verwenden sollten -a or -d bzw. um den verwirrenden Fall zu vermeiden
wobei ein Disk-Image den gleichen Namen wie ein Gast haben kann.
Aus Kompatibilitätsgründen wird der alte Stil weiterhin unterstützt.
HINWEIS ÜBER UNS CSV FORMAT
Durch Kommas getrennte Werte (CSV) sind ein irreführendes Format. Es scheint als ob es einfach sein sollte
zu analysieren, aber es ist definitiv nicht einfach zu analysieren.
Mythos: Felder einfach durch Kommas trennen. Realität: Das tut es nicht zuverlässig arbeiten. Dieses Beispiel
hat zwei Spalten:
„foo,bar“,baz
Mythos: Lesen Sie die Datei Zeile für Zeile. Realität: Das tut es nicht zuverlässig arbeiten. Das
Beispiel hat eine Zeile:
„foo
bar",baz
Verwenden Sie für Shell-Skripte „csvtool“ (http://merjis.com/developers/csv auch in Dur verpackt
Linux-Distributionen).
Verwenden Sie für andere Sprachen eine CSV-Verarbeitungsbibliothek (z. B. „Text::CSV“ für Perl oder Python).
integrierte CSV-Bibliothek).
Die meisten Tabellenkalkulationen und Datenbanken können CSV direkt importieren.
EXIT STATUS
Dieses Programm gibt 0 zurück, wenn es erfolgreich ist, oder ungleich Null, wenn ein Fehler aufgetreten ist.
Nutzen Sie virt-ls online über die Dienste von onworks.net