Своими рассказами о том как я в очередной раз убил Линукс или похерил инфу самым неочевидным способом я, наверное, заработаю дурную славу на ЛОРе. Тем не менее, мое хождение по граблям, возможно, принесет пользу тем, кто на них еще не наступил, если я в очередной раз сотрясу воздух своими «почему?» и «за что?». С другой стороны глупо считать себя избранным - не я первый, не я и последний.
Нет, в этот раз я не убил Линукс. Точнее я почти его убил на прошлой неделе - во время большого обновления (включая ядро и загрузчик) системы. Когда aptitude скачал новые пакеты и начал установку - я в другом терминале с помощью MC копировал свежескачанное аниме на флешку, для просмотра на основном компьютере. Так как система ощутимо подтормаживала - я нечаянно лишний раз нажал на Enter. Впервые на моей памяти mplayer спокойно и без лишних настроек запустился в консоли и героически принялся проигрывать HD видео, но на ввод он не реагировал абсолютно. Через пару секунд все повисло и лечить данную ситуацию пришлось перезагрузкой с последующим разгребанием сломанных зависимостей и битых пакетов в aptitude.
А сегодня поутру я удачно сжал 8-ми гигабайтный образ диска до 10 кб tar-ом. tar весьма любопытная программка и засаду я почувствовал еще когда читал ман. Там честно было написано, что мануал на tar потерян в веках, а существующий был собран из комментариев к исходникам, так, что tar возможно может делать, «что-то еще». Заставить его сделать, «что-то еще» у меня получилось, попутав, входящий и выходящий файлы. Я привык, что вначале указывается входящий, а затем выходящий файл. Но в tar'е все делается совсем наоборот, что, в принципе, логично. Результат превзошел все мои ожидания, я опробовал данный способ и в Федоре, где и мануал на tar немного другой и SELinux по-умолчанию установлен и предположительно должен бы отслеживать подобную херню, но тем не менее...
tar честно намекает, что входящий и выходящий файлы как бы перепутаны местами:
[litd@main Downloads]$ tar -cf sheep.jpg sheep
tar: sheep: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors
Но перед этим он молча и безжалостно убивает, в данном случае sheep.jpg. Я думаю это неправильно, возможно это даже баг. И вообще это не Unix-way - tar это не mv и не rm и он не должен делать их работу. Ну, или он хотя бы должен иметь некий ключ-предохранитель типа параметра force дабы не позволять случайно делать подобную ерунду.
Спасибо за внимание ^__^