MC, 14:35 piątek, 26.10.2012 r.
Ilustracja do artykułu: Linux - Verifying archive integrity...tail: cannot open '+6' for reading: No such file or directory

Linux - Verifying archive integrity...tail: cannot open '+6' for reading: No such file or directory

W procesie instalacji starszych binarek na Linuksie może przeszkodzić błąd: "Verifying archive integrity...tail: cannot open `+6' for reading: No such file or directory". Na szczęście jego obejście jest dość proste, co postaram się pokazać w tym wpisie.

W czym problem?

Błąd o którym mowa wynika ze zmian jakie zaszły w programie tail od czasów, w których powstał plik, który chcemy zainstalować. Innymi słowy, mamy zbyt nową jego wersję, by binarka, czy skrypt potrafiły z niego korzystać. Jak już wspomniałem, można to w prosty sposób obejść eksportując odpowiednią zmienną środowiskową.

Jak wygląda rozwiązanie?

Musimy zapewnić kompatybilność binarki ze starszą wersją POSIX, a zrobimy to ustalając odpowiednią zmienną środowiskową:
export _POSIX2_VERSION=199209
Jest to typowe rozwiązanie dla problemów ze starszym podejściem do używania programów takich jak tail, head, czy sort. Jak widać ustalamy wersję POSIX na tę z września 1992 roku (1992-09), czyli de facto 1003.2-1992.
Po zakończeniu instalacji, należy usunąć tę zmienną:
unset _POSIX2_VERSION

Problem wciąż występuje?

Jeżeli podejście podobne do poniższego, nie przynosi zamierzonego efektu:
$ export _POSIX2_VERSION=199209
$ sudo ./instalator.bin
Verifying archive integrity...tail: cannot open `+6' for reading: No such file or directory
Error in check sums 111111111 2222222222
Spróbuj ustalić zmienną środowiskową i wywołać instalator w jednym poleceniu:
sudo env _POSIX2_VERSION=199209 ./instalator.bin

Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!

Imię:
Treść: