Widziałem na tej stronie, że i-węzły mają licznik linków, aby wiedzieć, ile plików (czytaj: „pozycja katalogu”) wskazuje na ten i-węzeł. Czy istnieje sposób, aby dowiedzieć się, które katalogi zawierają takie wpisy bez przechodzenia przez cały system plików? Czy gdzieś te informacje są przechowywane?
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;
…
};
linux
filesystems
hard-link
inode
qdii
źródło
źródło
find -inum <n> -samefile path
.find
jest używany albo-inum
albo-samefile
, ale nie z obu.Odpowiedzi:
Nie. Wpisy katalogu wskazujące na i-węzły są łączami jednokierunkowymi. I-węzły nie wskazują na pozycje katalogu.
Aby znaleźć pełną listę pozycji katalogu wskazujących na i-węzeł, musisz przechodzić przez system plików, aż znajdziesz wystarczającą liczbę pozycji katalogu, aby uwzględnić liczbę odsyłaczy i-węzła.
źródło