Nie widać postępu pliku z `tail -f`

11

To zaskakujące, dlaczego teraz tail -fnie działa, gdy było wcześniej.

Mam poniższe polecenie, aby uruchomić kopię zapasową.

ubuntu@ubuntu:~$ sudo tar -cvf /media/ubuntu/My*Linux/ub*data/zebra.tar /media/ubuntu/home > z1 2> z2 && echo "pass" || echo "fail"

Aby zobaczyć wynik i błąd, są te 2 pliki z1i z2.

Teraz chcę zobaczyć wynik polecenia na terminalu z pliku z1:

ubuntu@ubuntu:~$ tail -f z1

ale to polecenie nie pokazuje danych, które dołączają się z czasem.

Pracuję nad instalacją na żywo Ubuntu 14.04.1 za pomocą pendrivea. Czy to może być powód?

Ravi
źródło
1
Być może nie ma to związku z twoim problemem, ale mówisz 2 > z2. Myślę, że stderrskładnia przekierowania w 2>rzeczywistości nie pozwala na spację między 2i >.
Ulrich Schwarz,
@UlrichSchwarz przepraszam, to mój błąd. Poprawiłem
Ravi
1
Ponieważ dałeś tarowi f outputfilenameopcję, z1 będzie pustym plikiem.
Mark Plotnick
@MarkPlotnick no z1 ma wyjście odpowiadające opcji -v. Jeśli uruchomię „cat z1”, pokaże wszystkie kopie zapasowe plików. Problem polega na tym, że polecenie tail nie działa.
Ravi
@Ravi przepraszam, masz rację, GNU tar wypisze listę na standardowe wyjście, gdy v i f są używane razem. Jest to sprzeczne z pisemnym standardem dla tar. Spróbuje odtworzyć problem. W jakim katalogu znajdują się Z1 i Z2? Dysk RAM Live CD czy dysk USB? Jeśli USB, jaki jest typ systemu plików (ext3, vfat)?
Mark Plotnick

Odpowiedzi:

10

Mogę to odtworzyć. To błąd.

Na Live CD Ubuntu systemem plików, który zawiera domyślny katalog domowy użytkownika jest typ overlayfs , który twierdzi, że obsługuje inotify, ale go nie obsługuje.

Tak więc tail -fplik na overlayfs próbuje użyć, inotifya następnie nie otrzymuje żadnych powiadomień o zmianie pliku.

Raport o błędzie Ubuntu dla tego błędu to Bug # 882147: overlayfs nie implementuje poprawnie interfejsów inotify . Można skorzystać z obejścia cytowanego w tym raporcie o błędach, od Jima Meyeringa przez Andreę Ranieri

tail -f ---disable-inotify file

(Naprawdę są tam trzy łączniki).

Mark Plotnick
źródło