Czy istnieje sposób na znalezienie lokalizacji katalogu / dysku, od którego uruchomiono proces? Zdaję sobie sprawę z zamontowania / proc, ale tak naprawdę nie wiem, gdzie w nim zajrzeć.
Możesz robić fajne rzeczy /proc/$pid/exe, jeśli plik binarny zostanie przypadkowo usunięty, możesz go przywrócić za pomocą:dd if=/proc/$pid/exe of=restored-binary
Lekensteyn
1
Naciśnij Ctrl+ Alt+, Taby przejść do terminala i wpisz:
ls -al /proc/{pid}/fd
a następnie sprawdź dane wyjściowe
Spowoduje to wyświetlenie wszystkich plików, z którymi proces jest powiązany ...
Czy mógłbyś przejrzeć moje zmiany, a także przejrzeć pomoc w edytowaniu, aby poprawić czytelność twoich odpowiedzi w przyszłości ... ;-)
Fabby
0
Wszystkie polecenia w pozostałych odpowiedziach są dobre, ale możesz zrobić jeszcze więcej - sprawdzając, jak pewien proces został faktycznie uruchomiony, zanim trafił na listę procesów.
Uruchom w terminalu:
top
Kiedy jest uruchomiony, naciśnij klawiaturę, Ca otrzymasz polecenie uruchomionych procesów.
Odpowiedzi:
/proc
Sposobem byłoby skontrolowaćexe
linku w katalogu odpowiadającym PID.Weźmy przykład z
update-notifier
:Znajdź pid, który w tym przykładzie wynosi 15421 :
Wyszukaj symboliczny link:
źródło
Może
which
jest to, czego szukasz. Na przykład w moim systemiezwraca
Zobacz także Znajdź ścieżkę aplikacji działającej w systemie Solaris, Ubuntu, Suse lub Redhat Linux .
źródło
which
jest fajny, ale zwraca tylko programy z twojej $ PATH. Jeśli uruchomięRandomProgramIDownloadedToErisKnowsWhere.bin
, nie przyda się to zbytnio.Pod warunkiem, że masz dostępny identyfikator procesu, możesz użyć:
(zastąp
$pid
identyfikatorem procesu)Jeśli proces nie jest twoją własnością, musisz go postawić
sudo
przed nim.Przykład określania położenia polecenia
firefox
:Wyjście
ps ax -o pid,cmd | grep firefox
:28179
jest identyfikatorem procesu, więc musisz uruchomić:które wyjścia:
źródło
/proc/$pid/exe
, jeśli plik binarny zostanie przypadkowo usunięty, możesz go przywrócić za pomocą:dd if=/proc/$pid/exe of=restored-binary
Naciśnij Ctrl+ Alt+, Taby przejść do terminala i wpisz:
a następnie sprawdź dane wyjściowe
Spowoduje to wyświetlenie wszystkich plików, z którymi proces jest powiązany ...
źródło
Wszystkie polecenia w pozostałych odpowiedziach są dobre, ale możesz zrobić jeszcze więcej - sprawdzając, jak pewien proces został faktycznie uruchomiony, zanim trafił na listę procesów.
Uruchom w terminalu:
Kiedy jest uruchomiony, naciśnij klawiaturę,
C
a otrzymasz polecenie uruchomionych procesów.źródło