Pracuję trochę nad projektem Yocto, a wspólnym wyzwaniem jest ustalenie, dlaczego (lub z jakiego przepisu) plik został umieszczony na rootfach. Jest to coś, co można mieć nadzieję wyprowadzić ze środowiska systemu kompilacji, log & meta danych. Idealnie, zestaw poleceń pozwoliłby na powiązanie pliku z powrotem do źródła (np. Przepis).Jak znaleźć, która z receptur Yocto Project zapełnia konkretny plik w głównym systemie plików obrazu
Moja zwykła strategia polega na wyszukiwaniu danych meta (np. grep -R filename ../layers/*
) i wyszukiwaniu w internecie wspomnianych nazw plików, aby znaleźć wskazówki dotyczące możliwych odpowiedzialnych przepisów. Jednak nie zawsze jest to bardzo skuteczne. W wielu przypadkach nazwy plików nie są wyraźnie określone w przepisie. Ponadto istnieje wiele przypadków, w których nazwa pliku jest podawana przez wiele receptur, co prowadzi do dodatkowej pracy w celu znalezienia, która receptura ostatecznie je dostarczyła. Istnieje oczywiście wiele innych wskazówek, aby znaleźć odpowiedź. Niezależnie od tego, to dochodzenie jest często dość pracochłonne, gdy wydaje się, że system kompilacji powinien mieć wystarczającą ilość informacji, aby rozwiązanie problemu było proste.