LINUX.ORG.RU

GNU Core Utilities 8.15

 ,


0

1

12 человек за 12 недель добавили более 120 коммитов. Результатом стала вышедшая 6 января новая версия GNU Coreutils 8.15. Была добавлена новая программа, realpath, а также исправлено несколько ошибок. Хорошо, что эти ошибки, как это и происходит в последнее время, обнаруживаются лишь в «пыльных углах» кода, и лишь немногие из них воспроизводятся достаточно часто.

Существенные изменения

  • Новые программы
    • realpath выводит абсолютные имена файлов.
  • Исправленные ошибки
    • du -x более не подсчитывает корневые каталоги других файловых систем (ошибка появилась в coreutils-5.1.0);
    • команду ls --color <директория с большим количеством файлов> нельзя было прервать слишком долго (ошибка появилась в coreutils-5.2.1);
    • параметр -k команды ls больше не влияет на то, как ls -l отображает размеры файлов, влияет только на отображение общего числа блоков в директории и отображение размеров файлов при использовании параметра -s. Это сделано для совместимости с BSD и соответствия стандарту POSIX 2008. Поскольку опция -k теперь не эквивалентна --block-size\1KiB, добавлена новая опция — --kilobyte;
    • в ls -l понемногу утекала память для каждой непустой директории при использовании SELinux (возможно, ошибка появилась в coreutils-6.0, когда была добавлена поддержка SELinux);
    • rm -rf падала с ошибкой «Device or resource busy» в Cygwin на файловых системах NWFS и NcFsd. Это никак не затрагивает системы с ядрми Linux или Unix (ошибка появилась в coreutils-8.0, когда rm стала использовать fts);
    • split -n 1/2 FILE теперь не падает при обработке растущих файлов или (на некоторых системах) таких необычных файлов, как /dev/zero. Эта команда могла бы выдать: «/dev/zero: No such file or directory» даже если этот файл очевидно существует. То же и для -n l/2. Ошибка появилась в coreutils-8.8 вместе с этими дополнительными опциями;
    • stat -f теперь распознаёт файловые системы FhGFS и PipeFS;
    • tac более не падает при обработке двух и более входных файлов, для которых невозможно выполнить fseek (ошибка появилась в coreutils-5.3.0);
    • tail -f более не пытается использовать inotify в файловых системах GPFS или FhGFS.
  • Изменения в поведении
    • df отображает длинные названия файловых систем с UUID в списке по умолчанию. При использовании достаточно нового ядра и пользовательского окружения такие длинные названия могут использоваться, перенося часть колонок вправо. Если длинное имя указывает на символическую ссылку, а ФС не указаны, df выводит короткое название.
    • tail -f теперь использует polling (не inotify), если какой-то из файлов лежит на файловой системе неизвестного типа. Дополнительно, для каждого такого файла выводится предупреждение, magic number файловой системы и просьба отправить это число по адресу bug-coreutils@gnu.org.

>>> Подробности

в ls -l понемногу утекала память для каждой непустой директории при использовании SELinux (возможно, ошибка появилась в coreutils-6.0, когда была добавлена поддержка SELinux);

По мотивам этого объяснения можно целый фильм-детектив снять или игру сделать!

Прекрасное оформление новостей, уважаемый!

kid_lester ()

realpath выводит абсолютные имена файлов.

В Питоне сто лет как os.path.realpath(filename).

Vudod ★★★★★ ()

12 людей за 12 недель добавили более 120 коммитов.

megusta прям %)

tazhate ★★★★★ ()

параметр -k команды ls больше не влияет на то, как ls -l отображает размеры файлов, влияет только на отображение общего число блоков в директории и отображения размеров файлов при использовании параметра -s. Это сделано для совместимости с BSD и соответствия стандарту POSIX 2008. Поскольку опция -k теперь не эквивалентна --block-size\1KiB, добавлена новая опция --kilobyte;

нафига?

anonymous ()

О, realpath хорошо, пригодится в скриптах.

firestarter ★★★☆ ()

12 людей за 12 недель добавили более 120 коммитов.

... и зарелизили в 12 году. Почему не 12 декабря и не в 12:12:12?

franchukroman ★★☆ ()

Новые программы realpath выводит абсолютные имена файлов.

Нафига, если есть app-misc/realpath?

du -x более не подсчитывает корневые каталоги других файловых систем

Так это баг, оказывается! Очень неудобно было делать «cd /; du -shcx *».

gentoo_root ★★★★★ ()

12 людей за 12 недель

из 12-и колен израильских?

!7ит

anonymous ()
Ответ на: комментарий от gentoo_root

нафига?

для совместимости с BSD и соответствия стандарту POSIX 2008

dexpl ★★★★★ ()
Ответ на: комментарий от gentoo_root

Нафига, если есть app-misc/realpath?

Где?

└► yum -q search realpath
Внимание: совпадений для realpath не найдено

dexpl ★★★★★ ()

tail -f теперь использует polling (не inotify)

Как то странно выглядит, что polling лучше inotify.

Это наверное в случае когда в ядре нет inotify?

Или inotifyуже давно тормоза?

swwwfactory ★★ ()
Ответ на: комментарий от dexpl

Где?

В Генте есть, а вообще это Дебиановская команда (типа run-parts, installkernel и т.п.). Всегда пользовался, даже не подозревал, что в других дистрибутивах её может не быть.

gentoo_root ★★★★★ ()
Ответ на: комментарий от swwwfactory

swwwfactory

Как то странно выглядит, что polling лучше inotify.

Это наверное в случае когда в ядре нет inotify?

Или inotifyуже давно тормоза?

Читай дальше:

если какой-то из файлов лежит на файловой системе неизвестного типа

inotify может вообще не работать на левых неизвестных ФС, поэтому на этих ФС он не используется, но используется на известных.

gentoo_root ★★★★★ ()

rm -rf падала с ошибкой «Device or resource busy» в Cygwin на файловых системах NWFS и NcFsd. Это никак не затрагивает системы с ядрми Linux или Unix (ошибка появилась в coreutils-8.0, когда rm стала использовать fts);

ядрми

Fail.

joy4eg ★★★★ ()
Ответ на: комментарий от gentoo_root

Нафига, если есть app-misc/realpath?

Чтоб в апстриме была, ибо достаточно нужная/базовая. Хотя может,вы из тех кто mysql ставит (/usr/bin/replace), чтобы заменять строки без регэкспов. Еще вопросы?

anonymous ()
Ответ на: комментарий от joy4eg

split -n 1/2 FILE теперь на падает при обработки растущих файлов или (на некоторых системах) таких необычных файлов, как /dev/zero. Эта команда могла бы выдать: «/dev/zero: No such file or directory» даже если этот фпайл

фпайл

Туда же.

joy4eg ★★★★ ()
Ответ на: комментарий от gentoo_root

Читай дальше:

Сенкс, не приметил.

Ну в общем ясно, для устойчивости. А тож я забеспокоился, что от inotify начали отказываться...

swwwfactory ★★ ()

split -n 1/2 FILE теперь на падает при обработки растущих файлов или (на некоторых системах) таких необычных файлов, как /dev/zero. Эта команда могла бы выдать: «/dev/zero: No such file or directory» даже если этот фпайл

обработки
фпайл

правильно «обработке». Очень часто встречаю такие ошибки, это, видимо, в генах сидит.

uspen ★★★★★ ()

12 людей за 12 недель добавили более 120 коммитов. Результатом стала вышедшая 6 января новая версия GNU Coreutils

Столько чисел кратных шести. Без диавола тут явно не обошлось. Без святой воды не устанавливайте!

bbk123 ★★★★★ ()

realpath выводит абсолютные имена файлов.

Одного не пойму: почему её раньше не было? Дико не хватало.

Axon ★★★★★ ()

теперь на падает

Либо убрать пробел, либо «на» поменять на «не».

Mr_Alone ★★★★★ ()

ПФИМ

split -n 1/2 FILE теперь на падает при обработки растущих файлов или (на некоторых системах) таких необычных файлов, как /dev/zero. Эта команда могла бы выдать: «/dev/zero: No such file or directory» даже если этот фпайл очевидно существует. То же и для -n l/2. Ошибка появилась в coreutils-8.8 вместе с этими дополнительными опциями;

Падает на фпайл?

anonymous ()
Ответ на: комментарий от tazhate

12 людей за 12 недель добавили более 120 коммитов.

либо они 2 дня себе приписали для важности, либо в команде 2 бездельника

ckotinko ★★★ ()

где скриншоты?

anonymous ()

realpath выводит абсолютные имена файлов.

ИМХО, fullpath было бы понятнее. Но это ИМХО.

hobbit ★★★★★ ()
Ответ на: комментарий от hobbit

ИМХО, fullpath было бы понятнее.

Думаю, имеется в виду, что это будет именно реальный путь, то есть, не по симлинкам и т. д.

Axon ★★★★★ ()
Ответ на: комментарий от anonymous

спасибо, друг)

Всегда пожалуйста.)

Axon ★★★★★ ()

Круто. Только вот не понятно что split делает с /dev/zero ?

Тоесть я просто не понимаю что надо делать с такими файлами ну типа /dev/null и т.п. И ведь в код не зашить, могут ln сделать...

demmsnt ()
Ответ на: комментарий от Axon

А чем не устраивал существующий уже хз сколько readlink -f из тех же coreutils'ов?

YAR ★★★★★ ()

в ls -l понемногу утекала память rm -rf падала с ошибкой «Device or resource busy» split -n 1/2 FILE теперь на падает tac более не падает

С, уле...

anonymous ()

12 человек за 12 недель добавили более 120 коммитов.

за такое надо медали давать

mixail ()
Ответ на: комментарий от hobbit

ИМХО, fullpath было бы понятнее. Но это ИМХО.

respect старому фидошнику за imho.

hbars ★★★ ()
Ответ на: комментарий от Nilus

задрот мод ON

Те страны, кто отмечает католическое рождество - после нг (1 января) обычно работают, а в рождество на работают всего 1 день. Так что не вижу проблем ^_^ Работать, Работать и Работать..

Lwulf ()
Ответ на: комментарий от anonymous

Хотя может,вы из тех кто mysql ставит (/usr/bin/replace), чтобы заменять строки без регэкспов.

О, а я и не знал об этой команде. А другие подобные утилиты есть?

Xenius ★★★★★ ()

Ошибки в работе с utf пофиксили?

Igron ★★★★★ ()
Ответ на: комментарий от demmsnt

А что с ними надо делать? Ноли из /dev/zero будут читаться вечно, из /dev/null прочитаются 0 байт и EOF — всё ок.

anonymous ()
Ответ на: комментарий от hobbit

Нет, в таком вот юзкейсе fullpath не подходит:

`--> mkdir f1
`--> ln -s `pwd`/f1 f2
`--> touch f1/file
`--> realpath /home/user/tmp/f2/file
/home/user/tmp/f1/file
provaton ★★★★★ ()
Ответ на: комментарий от robert_foster

Я только за. Но в случае с GNU этого уже никогда не случится. Даже если какой-то бородатый дядя из GNU решит, что так дальше жить нельзя, всё равно будут жить, потому что никто не будет переформатировать тонны кода, менять документацию, науськивать адептов и т.д. только ради какого-то банального coding style. Пускай лучше остаётся какой есть, это лучше, чем хаос и неразбериха.

neuron ()
Ответ на: комментарий от robert_foster

Даешь KnR!

gnu is not unix, юношеский максимализм, чё

deis ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.