Dosya sistemini geçmeden bir dosyanın tüm sabit bağlantılarını bulma


9

Bu sayfada , kaç tane (read: "dizin girişi") bu inode işaret ettiğini bilmek için inode bir bağlantı sayacı olduğunu gördüm . Tüm dosya sistemini çaprazlamadan hangi dizinlerin bu tür girişleri içerdiğini bilmenin bir yolu var mı? Bu bilgi bir yerde saklanıyor mu?

struct inode {
    kdev_t                       i_dev;
    unsigned long                i_ino;
    umode_t                      i_mode;
    nlink_t                      i_nlink;
    uid_t                        i_uid;
    gid_t                        i_gid;
    …
};

En hızlı yöntem - yalnızca çapraz geçişle - olabilir find -inum <n> -samefile path.
ott--

2
@ ott-- ikisiyle findbirlikte kullanılır ya -inum da -samefile her ikisi ile birlikte kullanılmaz .
Hauke ​​Laging

Haklısın, sadece bir tanesi.
ott--

Yanıtlar:


10

Hayır. Düğümlere işaret eden dizin girişleri tek yönlü bağlantılardır. Düğümler dizin girişlerini göstermez.

Bir inode işaret eden dizin girişlerinin tam bir listesini bulmak için, inode bağlantı sayısını hesaba katacak yeterli dizin girişleri bulana kadar dosya sisteminde geçiş yapmanız gerekir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.