To zaskakujące, dlaczego teraz tail -f
nie 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 z1
i 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?
2 > z2
. Myślę, żestderr
składnia przekierowania w2>
rzeczywistości nie pozwala na spację między2
i>
.f outputfilename
opcję, z1 będzie pustym plikiem.Odpowiedzi:
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 -f
plik na overlayfs próbuje użyć,inotify
a 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
(Naprawdę są tam trzy łączniki).
źródło