Sorunum şu ki
lsof -p pid
, işlem kimliği ödenen bir işlemin açılan dosyasının listesini bulabilirim. Ancak erişilen her bir dosyanın ofsetini bulmanın bir yolu var mı?
Bana tavsiyelerde bulun lütfen ?
Sorunum şu ki
lsof -p pid
, işlem kimliği ödenen bir işlemin açılan dosyasının listesini bulabilirim. Ancak erişilen her bir dosyanın ofsetini bulmanın bir yolu var mı?
Bana tavsiyelerde bulun lütfen ?
Yanıtlar:
Linux üzerinde, dosya tanıtıcı sayısının konumunu bulabilirsiniz N
sürecin PID
içinde /proc/$PID/fdinfo/$N
. Örnek:
$ cat /proc/687705/fdinfo/36
pos: 26088
flags: 0100001
Aynı dosya, birkaç dosya tanımlayıcısı kullanılarak farklı konumlarda birkaç kez açılabilir, bu nedenle birden fazla olması durumunda ilgili dosyayı seçmeniz gerekir. kullanın:
$ readlink /proc/$PID/fd/$N
Karşılık gelen dosya tanımlayıcısının eklendiği dosyanın ne olduğunu bilmek (bir dosya olmayabilir, bu durumda sembolik bağlantı sallanıyordur).
lsof
-o
seçeneği ile bunu yapabilirsiniz .
Linux altında bilgisini alır /proc
, böylece oradan da alabilirsiniz .