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.

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

ПОСАДИ КОМПЬЮТЕР НА ЦЕПЬ И ЗАСТАВЬ ЛАЯТЬ!

домашняя автоматизация: сделай сам; лучший подарок для техногика

http://www.unicontrollers.com/products/unc01x

[#]  
>>-----Цитата---->>

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

<<-----Цитата----<<

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

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

()
[#]  
>>-----Цитата---->>

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

<<-----Цитата----<<

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

*** ()
[#] Ответ на: комментарий от kid_lester 07.01.2012 12:11:07  

спасибо на добром слове. я стараюсь (:

*** ()
[#]  
tazhate
>>-----Цитата---->>

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

<<-----Цитата----<<

megusta прям %)

***** ()
[#]  
>>-----Цитата---->>

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

<<-----Цитата----<<

нафига?

anonymous ()
[#]  
firestarter

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

*** ()
[#]  
franchukroman

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

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

** ()
[#]  
>>-----Цитата---->>

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

<<-----Цитата----<<

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

>>-----Цитата---->>

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

<<-----Цитата----<<

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

** ()
[#]  
>>-----Цитата---->>

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

<<-----Цитата----<<

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

!7ит

anonymous ()
[#] Ответ на: комментарий от gentoo_root 07.01.2012 16:45:31  
>>-----Цитата---->>

нафига?

<<-----Цитата----<<

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

**** ()
[#] Ответ на: комментарий от gentoo_root 07.01.2012 16:45:31  
>>-----Цитата---->>

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

<<-----Цитата----<<

Где?

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

**** ()
[#]  
>>-----Цитата---->>

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

<<-----Цитата----<<

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

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

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

()
[#] Ответ на: комментарий от dexpl 07.01.2012 16:49:06  
>>-----Цитата---->>

Где?

<<-----Цитата----<<

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

** ()
[#] Ответ на: комментарий от swwwfactory 07.01.2012 16:51:49  
>>-----Цитата---->>

swwwfactory

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

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

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

<<-----Цитата----<<

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

>>-----Цитата---->>

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

<<-----Цитата----<<

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

** ()
[#]  
joy4eg
>>-----Цитата---->>
>>-----Цитата---->>

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

<<-----Цитата----<<

ядрми

<<-----Цитата----<<

Fail.

* ()
[#] Ответ на: комментарий от gentoo_root 07.01.2012 16:45:31  
>>-----Цитата---->>

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

<<-----Цитата----<<

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

anonymous ()
[#] Ответ на: комментарий от joy4eg 07.01.2012 16:58:09  
joy4eg
>>-----Цитата---->>
>>-----Цитата---->>

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

<<-----Цитата----<<

фпайл

<<-----Цитата----<<

Туда же.

* ()
[#] Ответ на: комментарий от gentoo_root 07.01.2012 16:54:33  
>>-----Цитата---->>

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

<<-----Цитата----<<

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

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

()
[#]  
uspen
>>-----Цитата---->>

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

<<-----Цитата----<<
>>-----Цитата---->>

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

<<-----Цитата----<<

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

** ()
[#] Ответ на: комментарий от anonymous 07.01.2012 16:38:57  

POSIX_ME_HARDER

anonymous ()
[#]  
>>-----Цитата---->>

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

<<-----Цитата----<<

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

**** ()
[#]  
Axon
>>-----Цитата---->>

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

<<-----Цитата----<<

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

*** ()
[#]  
>>-----Цитата---->>

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

<<-----Цитата----<<

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

*** ()
[#]  

ПФИМ

>>-----Цитата---->>

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

<<-----Цитата----<<

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

anonymous ()
[#] Ответ на: комментарий от tazhate 07.01.2012 16:37:57  
ckotinko
>>-----Цитата---->>

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

<<-----Цитата----<<

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

* ()
[#] Ответ на: комментарий от uspen 07.01.2012 17:14:25  
ckotinko

на автора в этот момент видимо нападал split -n 1/2

* ()
[#]  

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

anonymous ()
[#]  
hobbit
>>-----Цитата---->>

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

<<-----Цитата----<<

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

***** ()
[#] Ответ на: комментарий от Axon 07.01.2012 21:07:32  

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

anonymous ()
[#] Ответ на: комментарий от hobbit 07.01.2012 21:19:44  
Axon
>>-----Цитата---->>

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

<<-----Цитата----<<

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

*** ()
[#] Ответ на: комментарий от anonymous 07.01.2012 21:58:24  
Axon
>>-----Цитата---->>

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

<<-----Цитата----<<

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

*** ()
[#] Ответ на: комментарий от neuron 07.01.2012 22:18:05  
Axon
>>-----Цитата---->>
<<-----Цитата----<<

O_o Папа?

*** ()
[#]  
demmsnt

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

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

* ()
[#] Ответ на: комментарий от Axon 07.01.2012 17:54:09  
YAR

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

**** ()
[#]  
>>-----Цитата---->>

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

<<-----Цитата----<<

С, уле...

anonymous ()
[#]  
mixail
>>-----Цитата---->>

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

<<-----Цитата----<<

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

()
[#] Ответ на: комментарий от mixail 07.01.2012 23:50:18  
Nilus

да ребята видать новый год не отпраздновали...

()
[#] Ответ на: комментарий от hobbit 07.01.2012 21:19:44  
hbars
>>-----Цитата---->>

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

<<-----Цитата----<<

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

* ()
[#] Ответ на: комментарий от Nilus 08.01.2012 0:27:47  
Lwulf

задрот мод ON

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

()
[#] Ответ на: комментарий от anonymous 07.01.2012 17:00:16  
>>-----Цитата---->>

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

<<-----Цитата----<<

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

**** ()
[#]  
Igron

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

***** ()
[#] Ответ на: комментарий от demmsnt 07.01.2012 23:05:17  

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

anonymous ()
[#] Ответ на: комментарий от hobbit 07.01.2012 21:19:44  

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

`--> mkdir f1
`--> ln -s `pwd`/f1 f2
`--> touch f1/file
`--> realpath /home/user/tmp/f2/file
/home/user/tmp/f1/file
*** ()
[#] Ответ на: комментарий от robert_foster 08.01.2012 12:41:40  
neuron

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

()
[#] Ответ на: комментарий от robert_foster 08.01.2012 12:41:40  
deis
>>-----Цитата---->>

Даешь KnR!

<<-----Цитата----<<

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

* ()