time to genialne polecenie, jeśli chcesz dowiedzieć się, ile czasu zajmuje procesor. Szukam czegoś podobnego, który może wyświetlić listę plików, do których program i jego dzieci mają dostęp. Albo w czasie rzeczywistym, albo jako raport później. Obecnie używam: #!/bin/bash strace -ff -e trace=file "$@" 2>&1 | perl -ne 's/^[^"]+"(([^\\"]|\\[\\"nt])*)".*/$1/ && …
Obsługujemy port na localhost i chcemy sprawdzić w innym procesie, jeśli port jest dostępny. Z powodu błędu w naszym kodzie próbuje on połączyć się z adresem IP 0.0.0.0:<port>iz jakiegoś powodu udaje się - jak pokazuje strace: [...] connect(3, {sa_family=AF_INET, sin_port=htons(10002), sin_addr=inet_addr("0.0.0.0")}, 16) = 0 [...] Co to znaczy? Dlaczego to …
Próbuję uruchomić stracekoryto ccze, a rura nie działa zgodnie z oczekiwaniami. Wiersz poleceń, który uruchamiam do przetestowania sudo strace -p $(pgrep apache2) | grep open, i wszystkie wiersze są wypisywane, ignorując grep. Czy jest w tym coś wyjątkowego, co stracepowoduje takie zachowanie?
W stracewyjściach ścieżki do bibliotek wywoływanych przez pliki wykonywalne znajdują się w wywołaniach open(). Czy jest to wywołanie systemowe używane przez pliki wykonywalne, które są dynamicznie połączone? Co dlopen()? open()nie jest to połączenie, które, jak przypuszczam, odegra pewną rolę w wykonywaniu programów.
Znalazłem zaskakujące zachowanie na Ubuntu 14.04 podczas korzystania stracez pliku wykonywalnego, na którym nie mam uprawnień do odczytu. Zastanawiam się, czy to jest błąd, czy też jakiś standard nakazuje to niejasne zachowanie. Najpierw zobaczmy, co się stanie, gdy uruchomię zwykły plik wykonywalny w tle i dołączę do niego. Zgodnie z …
Chcę śledzić aktywność sieciową polecenia, próbowałem tcpdump i strace bez powodzenia. Na przykład: jeśli instaluję pakiet lub używam dowolnego polecenia, które próbuje dotrzeć do jakiejś witryny, chcę wyświetlić tę aktywność sieciową (witrynę, do której próbuje dotrzeć). Myślę, że możemy to zrobić za pomocą tcpdump. Próbowałem, ale śledzi całą aktywność sieciową …
Mam plik w $ HOME / bin (zanim zapytasz, tak, jest on na mojej ścieżce) o nazwie, testktórą potwierdziłem, można wykonać poprawnie, gdy uruchomię go z pełną ścieżką do pliku. Mam jednak naprawdę dziwny problem, gdy nie uruchamiam go w ten sposób. Gdy tylko uruchamiam testterminal, nic nie robi i …
Zainspirowany tym pytaniem, zatytułowanym: Kiedy wbudowane polecenia są ładowane do pamięci , próbując na nie odpowiedzieć, wypróbowałem następujące polecenie i byłem nieco zaskoczony, że nie mogłem go uruchomić: $ strace cd $HOME Czy istnieje metoda, za pomocą której mogę uruchomić strace dla wbudowanych poleceń Bash?
Patrzę na dane wyjściowe strace uruchomionego procesu bash podłączonego do terminala, do celów edukacyjnych. Mój proces bash ma PID 2883. Piszę [OP@localhost ~]$ strace -e trace=openat,read,write,fork,vfork,clone,execve -p 2883 2> bash.strace Do terminala. Następnie przechodzę do procesu bash i mam następującą interakcję: [OP@localhost ~]$ ls Widzę, patrząc na wynik strace: Process …
Potężny stracemnie zawiódł. Jak to jest możliwe? time foopokazuje, że foouruchomienie zajmuje kilka sekund („rzeczywisty”), ale zużywa nieznaczny czas procesora, zarówno w przestrzeni użytkownika („użytkownik”), jak i w jądrze („sys”). Dla ciekawskich foozdefiniowano poniżej. Dlatego spędza większość czasu czekając na coś innego, nie wykonując instrukcji procesora. Zwykle widzę, jak czeka …
Korzystając z polecenia stracez flagą -T, chciałbym wiedzieć, jaka jednostka czasu jest używana do wyświetlania czasu spędzonego na wywołaniach systemowych? Zakładam, że powinno to potrwać kilka sekund, ale nie jestem do końca pewien i wydaje się, że został pominięty w instrukcji.
Jak uruchomić strace na procesie użytkownika przez określony czas, powiedzmy 1 minutę, bez przerywania procesu użytkownika i bez użycia Ctrl + C? Chcę utworzyć skrypt automatyzujący wykonywanie strace dla procesu użytkownika.
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.