co to znaczy czerwona nazwa pliku pokazana na czarnym tle?

16

Mam problem z kompilacją i kiedy sprawdzam mój katalog lib /, otrzymuję dane wyjściowe z „ls”:

Wyjście ls

Co oznacza kombinacja czerwony / czarny?

Sprawdziłem w wynikach „dircolors -p”, jak sugerowano tutaj ( co to znaczy, że nazwa pliku ma być wyświetlana na czerwonym tle ), ale nie mogłem znaleźć odpowiedzi.

Ponadto, co oznaczają znaki zapytania w miejscu uprawnień / użytkownika / rozmiaru / znacznika czasu?

Dzięki za pomoc

rmbianchi
źródło

Odpowiedzi:

19

To, co tam masz, to wiszące dowiązanie symboliczne lub dowiązanie symboliczne wskazujące na plik lub katalog, który już nie istnieje.

Sam link symboliczny tak naprawdę nie ma rozmiaru pliku, ponieważ nie jest plikiem. Dowiązania symboliczne są przechowywane w samych i-węzłach , co oznacza, że ​​nie mają rzeczywistej zawartości ani rozmiaru, ale są wskaźnikami do innych plików na dysku.

Dane wyjściowe file libCLHEP-Exceptions-2.1.3.1.apowinny wskazywać, gdzie to wskazuje.

Xyon
źródło
1
ls -lpowinien również wydrukować cel dowiązania symbolicznego, czego nie wydaje się tutaj robić.
Stefan Seidel
1
To prawda w większości przypadków, ale widziałem, że nie udało się tego zrobić w kilku niejasnych okolicznościach. filejest zwykle znacznie lepszy w ustalaniu, co się dzieje z określonym plikiem.
Xyon
Wielkie dzięki Xyon, nie znałem filepolecenia: to jest naprawdę bardzo przydatne. +1!
rmbianchi
3

Na pierwszy rzut oka wygląda jak zepsuty link, ale ponieważ ma to być zwykły plik, może to być uszkodzenie systemu plików. Spróbuj zrobić fsckw systemie plików, a następnie spróbuj usunąć ten plik, jeśli nadal tam jest.

Stefan Seidel
źródło
1
Dziękuję za odpowiedź Stefan, +1. Właściwie próbowałem usunąć uszkodzony link, ale rmdałem błąd „nie ma takiego pliku lub katalogu”. było bardzo dziwne, ponieważ link został zerwany, pliku nie ma, a rmmimo to odmówiłem usunięcia linku ... W każdym razie usunąłem cały folder i to rozwiązało problem.
rmbianchi