Provided by: psmisc_23.7-2_amd64 

BEZEICHNUNG
fuser - Prozesse anhand von Dateien oder Sockets identifizieren
ÜBERSICHT
fuser [-fuv] [-a|-s] [-4|-6] [-c|-m|-n Namensraum] [ -k [-i] [-M] [-w] [-SIGNAL] ] Name …
fuser -l
fuser -V
BESCHREIBUNG
fuser zeigt anhand der angegebenen Dateien oder Dateisysteme die Kennungen (PIDs) eines Prozesses an. Im
Standard-Anzeigemodus folgt jedem Dateinamen ein Buchstabe, der den Zugriffstyp angibt:
c bezeichnet das aktuelle Verzeichnis.
e bezeichnet das laufende ausführbare Programm.
f bezeichnet die geöffnete Datei. f wird im Standard-Anzeigemodus weggelassen.
F bezeichnet die zum Schreiben geöffnete Datei. F wird im Standard-Anzeigemodus weggelassen.
r bezeichnet das Wurzelverzeichnis.
m zugewiesene Datei oder Laufzeitibliothek.
. ist ein Platzhalter, der im Standard-Anzeigemodus weggelassen wird.
fuser gibt einen von Null verschiedenen Wert zurück, wenn auf keine der angegebenen Dateien zugegriffen
wurde oder wenn ein schwerwiegender Fehler aufgetreten ist. Wenn mindestens ein Zugriff gefunden wurde,
gibt fuser Null zurück.
Um nach Prozessen anhand von TCP- und UDP-Sockets suchen zu können, muss der entsprechende Namensraum mit
der Option -n angegeben werden. Standardmäßig schaut fuser sowohl in IPv6- als auch IPv4-Sockets. Um das
Standardverhalten zu ändern, verwenden Sie die Optionen -4 und -6. Der oder die Socket(s) können anhand
des lokalen und fernen Ports und der fernen Adresse angegeben werden. Alle Felder sind optional, aber
Kommata vor den fehlenden Feldern müssen vorhanden sein:
[lcl_Port][,[ferner_Host][,[ferner_Port]]]
Für die IP-Adressen und Portnummern können entweder symbolische oder numerische Werte verwendet werden.
fuser schreibt nur die PIDs in die Standardausgabe, alles andere wird in die Standardfehlerausgabe
geschrieben.
OPTIONEN
-a, --all
zeigt alle in der Befehlszeile angegebenen Dateien an. Standardmäßig werden nur Dateien angezeigt,
auf die mindestens ein Prozess zugreift.
-c ist gleichbedeutend mit der Option -m (für POSIX-Kompatibilität).
-f wird stillschweigend ignoriert (für POSIX-Kompatibilität).
-k, --kill
tötet Prozesse, die auf die Datei zugreifen. Das Signal SIGKILL wird gesendet, es sei denn, Sie
ändern es mit -SIGNAL. Ein fuser-Prozess tötet sich niemals selbst, könnte aber von anderen
fuser-Prozessen getötet werden. Die effektive Benutzerkennung (UID) des Prozesses, der fuser
ausführt, wird auf dessen reale Benutzerkennung gesetzt, bevor die Tötung versucht wird.
-i, --interactive
bittet den Benutzer um Bestätigung, bevor ein Prozess getötet wird. Diese Option wird
stillschweigend ignoriert, wenn nicht auch die Option -k angegeben ist.
-I, --inode
bewirkt, dass für den Namensraum file alle Vergleiche auf den oder die Inode(s) der angegebenen
Datei oder Dateien und nicht auf die Dateinamen bezogen werden, selbst wenn sich diese auf
netzwerkbasierten Dateisystemen befinden.
-l, --list-signals
listet alle bekannten Signalnamen auf.
-m NAME, --mount NAME
bezeichnet eine Datei auf einem eingehängten Dateisystem oder einem blockorientierten Gerät, das
eingehängt ist. Alle Prozesse, die auf Dateien auf diesem Dateisystem zugreifen, werden
aufgelistet. Falls ein Verzeichnis angegeben ist, wird es automatisch in NAME/ geändert, um jedes
Dateisystem zu verwenden, das in diesem Verzeichnis eingehängt sein könnte.
-M, --ismountpoint
erfüllt die Anforderung nur dann, wenn der NAME einen Einhängepunkt bezeichnet. Dies ist ein sehr
wertvoller Sicherheitsmechanismus, der Sie daran hindert, den gesamten Rechner zu töten, falls der
NAME kein Dateisystem bezeichnen sollte.
-w tötet nur Prozesse, die Schreibzugriff haben. Diese Option wird stillschweigend ignoriert, wenn
nicht auch die Option -k angegeben ist.
-n NAMENSRAUM, --namespace NAMENSRAUM
wählt einen anderen Namensraum. Die Namensräume file (Dateinamen, die Voreinstellung), udp (lokale
UDP-Ports) und tcp (lokale TCP-Ports) werden unterstützt. Für Ports kann entweder die Portnummer
oder der symbolische Name angegeben werden. Auch die Kurznotation Name/Namensraum (zum Beispiel
80/tcp) kann verwendet werden, falls dadurch keine Mehrdeutigkeiten entstehen.
-s, --silent
aktiviert den stillen Modus. Die Optionen -u und -v werden in diesem Modus ignoriert. Die Option
-a darf nicht zusammen mit -s verwendet werden.
-SIGNAL
verwendet beim Töten von Prozessen das angegebene Signal anstelle von SIGKILL. Signale können
entweder als Name (zum Beispiel -HUP) oder als Nummer (zum Beispiel -1) angegeben werden. Diese
Option wird stillschweigend ignoriert, wenn die Option -k nicht angegeben ist.
-u, --user
hängt den Benutzernamen des Eigentümers jedes Prozesses an jede PID an.
-v, --verbose
aktiviert den ausführlichen Modus. Prozesse werden ähnlich wie in ps angezeigt. Die Felder PID,
BEN. und BEFEHL sind ähnlich zu ps. ZUGR. zeigt, wie der Prozess auf die Datei zugreift. Im
ausführlichen Modus wird auch angezeigt, wann auf eine bestimmte Datei als Einhängepunkt,
Knfs-Export oder Auslagerungsdatei zugegriffen wird. In diesem Fall wird kernel anstelle der PID
angezeigt.
-V, --version
zeigt Versionsinformationen an.
-4, --ipv4
sucht nur nach IPv4-Sockets. Diese Option darf nicht zusammen mit der Option -6 verwendet werden
und ist nur mit den TCP- und UDP-Namensräumen wirksam.
-6, --ipv6
sucht nur nach IPv6-Sockets. Diese Option darf nicht zusammen mit der Option -4 verwendet werden
und ist nur mit den TCP- und UDP-Namensräumen wirksam.
DATEIEN
/proc Ort des /proc-Dateisystems
BEISPIELE
fuser -km /home
tötet alle Prozesse, die auf das Dateisystem /home in irgendeiner Weise zugreifen.
if fuser -s /dev/ttyS1; then :; else Befehl; fi
ruft den angegebenen Befehl auf, falls kein anderer Prozess /dev/ttyS1 nutzt.
fuser telnet/tcp
zeigt alle Prozesse am (lokalen) TELNET-Port.
EINSCHRÄNKUNGEN
Prozesse, die auf die gleiche Datei oder das gleiche Dateisystem mehrmals auf die gleiche Weise
zugreifen, werden nur einmal angezeigt.
Falls das gleiche Objekt in der Befehlszeile mehrmals angegeben ist, können einige von dessen Einträgen
ignoriert werden.
fuser könnte lediglich in der Lage sein, Teilinformationen zu ermitteln, es sei denn, es wird mit höheren
Privilegien ausgeführt. Als Konsequenz könnten Dateien, die durch Prozesse anderer Benutzer geöffnet
wurden nicht aufgelistet und ausführbare Programme nicht als zugewiesen klassifiziert werden.
fuser kann nicht auf Prozessen agieren, für die es keine Zugriffsrechte auf die Dateideskriptortabelle
hat. Am häufigsten tritt dieses Problem beim Suchen nach TCP- oder UDP-Sockets auf, wenn fuser nicht mit
Root-Rechten ausgeführt wird. In diesem Fall meldet fuser keinen Zugriff.
Die Installation von fuser SUID root wird Probleme vermeiden, die auf unvollständige Informationen
zurückzuführen sind, aber könnte aus Sicherheitsgründen und zum Schutz der Privatsphäre unerwünscht sein.
udp- und tcp-Namensräume sowie UNIX-Domain-Sockets können mit einem Kernel älter als Version 1.3.78 nicht
durchsucht werden.
Zugriffe durch den Kernel werden nur mit der Option -v angezeigt.
Die Option -k agiert nur auf Prozessen. Falls der Benutzer der Kernel ist, gibt fuser einen Hinweis aus,
führt darüber hinaus aber keine Aktion aus.
fuser wird keine blockorientierten Geräte sehen können, die von Prozessen in einem anderen
Einhängenamensraum eingehängt wurden. Das kommt daher, weil die in der Dateideskriptortabelle sichtbare
Gerätekennung aus dem Prozessnamensraum stammt, nicht aus dem von fuser.
FEHLER
Der Befehl fuser -m /dev/sgX zeigt alle Prozesse an (oder tötet diese, wenn die Option -k angegeben ist),
selbst dann, wenn Sie das Gerät nicht eingerichtet haben. Es könnte weitere Geräte geben, bei denen dies
getan wird.
Die Option -m von mount erkennt jede Datei innerhalb eines Geräts als die von Ihnen angegebene Datei;
verwenden Sie zusätzlich die Option -M, um zu verdeutlichen, dass Sie nur den Einhängepunkt angeben.
fuser wird zugewiesene Dateien nicht als Übereinstimmung sehen, beispielsweise die gemeinsam genutzten
Bibliotheken eines Prozesses, wenn diese sich auf einem btrfs(5)-Dateisystem befinden, da die
Gerätekennungen für stat(2) und /proc/<PID>/maps unterschiedlich sind.
SIEHE AUCH
kill(1), killall(1), stat(2), btrfs(5), lsof(8), mount_namespaces(7), pkill(1), ps(1), kill(2).
psmisc 2. November 2022 FUSER(1)