LINUX.ORG.RU

GNU Coreutils 8.18

 ,


0

1

Джим Мейеринг (Jim Meyering) сообщает, что за 13 недель разработки был подготовлен новый стабильный релиз GNU Coreutils 8.18.

Исправленные ошибки

  • cksum теперь печатает контрольную сумму атомарно, так что вывод параллельных процессов не перемешивается (ошибка присутствовала изначально);
  • date -d «$(printf '\xb0')» теперь сообщает об ошибке: date: invalid date '\260', а не выводит сегодняшние 00:00:00, как в прошлых версиях (ошибка присутствовала изначально);
  • df теперь заменяет управляющие символы в точках монтирования на ?. Это может быть удобным для использования в скриптах, рассчитывающих на определенный порядок переноса строк в выводе df (ошибка присутствовала изначально);
  • df --total выходит с адекватным сообщением об ошибке, если указанный тип файловой системы (опция --type) не соответствует обрабатываемой файловой системе. Предыдущая версия df работала без сообщения об ошибке:
    $ touch /tmp/tes
    $ df --type=ext2 /tmp/test
    df: не обработано ни одной файловой системы
    $ echo $?
    1
    $ df --total --type=ext2 /tmp/test
    Файловая система 1K-блоков Использовано Доступно Использовано% Cмонтировано в
    total                    0            0        0             -
    $ echo $?
    0
    
    Эта ошибка была «добавлена» в coreutils-7.0;
  • head --lines=-N (-n-N) теперь сбрасывает указатель чтения для файлов с произвольным доступом. Это означает, что head -n-3 больше не поглощает весь входной поток, и строки, не выведенные head, могут быть обработаны другой программой. Например, теперь эта команда печатает 2, а раньше не напечатала бы ничего:
    seq 2 > k; (head -n-1 > /dev/null; cat) < k
    
    Ошибка присутствовала в head изначально;
  • ls --color would mis-color relative-named symlinks in / [bug introduced in coreutils-8.17
  • split теперь проверяет, что выходной файл не затирает входной (ошибка присутствовала изначально);
  • stat и df теперь правильно отражают использование файловых систем в GNU/Linux, безошибочно определяя размер блока (в df ошибка появилась в coreutils-5.0.91; в stat же присутствовала изначально);
  • tail -f больше не пытается использовать inotify при работе с файловыми системами AUFS и PanFS.

Новые особенности

  • stat -f теперь распознаёт файловые системы aufs и panfs.

Изменения в поведении

  • Удалена программа su. Программа уже давно не устанавливается по умолчанию. Пакет util-linux объединил в себе патчи Fedora и Suse и отлично собирается в Hurd. Так что больше нет причин включать su.

Улучшения

  • sort теперь избегает избыточной работы при недоступном входе или выходе. sort проверяет эти ошибочные ситуации при запуске, а не после продолжительной работы;
  • sort теперь использует по умолчанию не более 75% физической памяти, это позволяет более рационально использовать системные ресурсы (это значение изменилось с 50% до 100% в версии coreutils 8-16).

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

★★★★★

Проверено: JB ()
Последнее исправление: Silent (всего исправлений: 3)
Ответ на: комментарий от lucentcode

Сюда:

$ equery b su
* Searching for su ...
sys-apps/shadow-4.1.5.1 (/bin/su)

tides
()
Ответ на: комментарий от lazyklimm

Уже знаю про sudo -i. У меня моя машинка, да пара виртуалок в роли web-серверов для разработки и отладки сайтов на LAMP. Естественно, всем хозяйством управляю только я один. Поэтому мне проще получать рута, чем вводить каждую команду с sudo.

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

Поэтому мне проще получать рута, чем вводить каждую команду с sudo.

Уже знаю про sudo -i.

и?

Тем более, какой профит на свой машинке помнить два пароля вместо одного? И вообще, на более-менее безопасные действия можно поставить NOPASSWD, прописать готовые алиасы с sudo и горя не знать

lazyklimm ★★★★★
()

Раз тут все про sudo говорят, то есть вопрос:

Можно ли юзать sudo в скриптах вместо su? Ну, типа того:

su -c "/usr/local/bin/service" user
Только, чтоб вместо su был sudo

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

Ага, а в арче вообще sudo нужно ставить самому отдельным пакетом. Потому что оно там никому не было нужно отродясь. Всё-таки арчеводы не убунтоиды, не удаляют с рекурсией все файлы с корневого раздела.

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

NOPASSWD и алиасы - это хорошо. Дале лучше чем su. Вот только в арчике у меня sudo не было, прийдётся самому ставить и настраивать.

lucentcode ★★★★★
()

надеюсь Джим бесплатно работает

иначе, зачем бы он сообщал

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

только одного меня удивляет степень упоротости постингов на рашнфедоре (если чо я не про саму идею, а про изложение)? а оно ведь когда-то чуть ли не официальным отделом синешапки задумывалось (мопед не мой, тут где-то говорили). потом видимо безнадёга поглотила.

anonymous
()

sort теперь использует по умолчанию не более 75% физической памяти,

ну наконец-то. Замучался уже ему планки докупать...

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

Интересно будет посмотреть на ЭТО в 18-ой федорке, т.к. после чистой установке федорки единственный способ получить рут(кроме как войти под рутом), это su(sudo не настроен).

3 в параметры ядра.

PS

я в курсе, что su там как обычно, будет из другого пакета, но иногда su может быть затерто.

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

Насколько я понимаю, для su нужно вводить пароль рута, а он у многих людей даже не выставлен. А sudo su работает с пользовательским паролем. Или я что-то путаю? Лорчане, просветите.

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

Б-г мой! Ну, назначаю я alias sapt=sudo aptitude - все равно ведь пароль вводить надо. Ну и в чем прелесть? «su» перед длительной администраторской возней ввел - и хватит.

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

все равно ведь пароль вводить надо

Семён Семёныч!

username  ALL=(root)NOPASSWD : /usr/bin/aptitude

«su» перед длительной администраторской возней ввел - и хватит.

sudo -i

sudo -i

sudo -i

sudo -i

сколько вам раз это повторить нужно, чтобы поняли?

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

sudo -i

sudo -i

sudo -i

sudo -i

сколько вам раз это повторить нужно, чтобы поняли?

это надо дописать в 1 пост статьи.

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

> Насколько я понимаю, для su нужно вводить пароль рута, а он у многих людей даже не выставлен

0_0 зачем ставить руту пустой пароль?!

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

>>>> Ну если у тебя не стоит sudo изначально, как ты им воспользуешься чтобы его поставить?

>>> залогиниться в консольке под рутом))))

>> По Ctrl-Alt-F1, либо перезагрузившись в режим «init 3»? Ну так некрасиво - хочется из эмулятора терминала.

> Пользователи убунты в недоумении.

Не знаю как там - у меня Linux.

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

Всё ОК. Пароль не выставлен, потому что вход рутом на Debian/Ubuntu отключен. Вот и приходится юзерам извращаться, sudo su городить, если sudo -i не знают. Например, я до этого треда не знал.

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

Мсье не знает про "!" в поле хеша?

anonymous
()

Удалена программа su. Программа уже давно не устанавливается по умолчанию. Пакет util-linux объединил в себе патчи Fedora и Suse и отлично собирается в Hurd. Так что больше нет причин включать su.

Печально. Я ею пользовался. Раз в сотню лет, но всее-таки. И что значит «не устанавливается по умолчанию»? У меня в дебиане может sudo не установиться, если пароль руту задать, а su всегда есть.

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

Использовал. Всё работало как часы. Разве бэкап нельзя из-под рута делать?

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

Команда «su - » работает отлично без sudo. Или вы разрешили своему пользователю в конфиге sudo выполянть эту команду без запроса пароля? Я делал нечто подобное на арчике, чтобы делать su из скриптов на баше.

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

Так sudo -i и sudo -s - это абсолютно одно и то же. В чём разница? Добрые люди немного выше уже рассказали мне про sudo -i. Так что всё в порядке, кэп. Я уже активно изучаю выхлоп sudo --help и содержимое man sudo. Всё-таки с Linux знаком не один год, в 2004 первый свой дистр установил. Так что осилю и sudo как-нибудь.

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

Не выставлен он на ubuntu(это нормальное для ubuntu поведение), и в Debian если вы не зададите пароль при установке. Arch Linux и другие дистры обычно создают нормального рута. Fedora к примеру позволяет задать пароль руту, и использовать его как душе угодно. Arch вообще ставится только с аккаунтом рута, и затем вы вручную должны создать других пользователей. su при незаданном пароле рута в нормальных linux-дистрах сразу даёт рута. Всем аккаунтам из групы wheel.

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

а оно ведь когда-то чуть ли не официальным отделом синешапки задумывалось

никогда оно таким не задумывалось.
ну разве что они сами такое придумали

xtraeft ★★☆☆
()
Последнее исправление: xtraeft (всего исправлений: 1)
Ответ на: комментарий от lucentcode

Так sudo -i и sudo -s - это абсолютно одно и то же. В чём разница?

 -i [command]
                   The -i (simulate initial login) option runs the shell specified in the passwd(5) entry of the target user as a login shell.  This
                   means that login-specific resource files such as .profile or .login will be read by the shell.  If a command is specified, it is
                   passed to the shell for execution.  Otherwise, an interactive shell is executed.  sudo attempts to change to that user's home
                   directory before running the shell.  It also initializes the environment, leaving DISPLAY and TERM unchanged, setting HOME, MAIL,
                   SHELL, USER, LOGNAME, and PATH, as well as the contents of /etc/environment on Linux and AIX systems.  All other environment
                   variables are removed.
-s [command]
                   The -s (shell) option runs the shell specified by the SHELL environment variable if it is set or the shell as specified in
                   passwd(5).  If a command is specified, it is passed to the shell for execution.  Otherwise, an interactive shell is executed.
xtraeft ★★☆☆
()
Ответ на: комментарий от lucentcode

Так что осилю и sudo как-нибудь.

к своему стыду, я за десять лет так формат sudoers так и не осилил. Ну нет в нем никакого смысла и логики! Приходится копировать чужие строчки.

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

Так же, как профилактическая переустановка системы при любых неполадках среднестатистическим пользователем.

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

А хз) Я привык так. Похоже на солярный «pbrun su - username»

DELIRIUM ☆☆☆☆☆
()
Ответ на: комментарий от ZenitharChampion

> Всё ОК. Пароль не выставлен, потому что вход рутом на Debian/Ubuntu отключен.

Про Debian не знал.

Но следует уточнить, что отключент только в случае пустого пароля при установке. Если во время установки указать пароль, то вход будет, а sudo не установится. Также можно в уже готовой системе ввести sudo passwd root и рутом можно пользоваться.

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

Так же, как профилактическая переустановка системы при любых неполадках среднестатистическим пользователем.

мимо темы.

смысл юникса/линукса и вообще любой хорошей системы состоит в возможности комбинирования уже известных средств.

sudo делает одно, su делает другое, а вместе они делают третье. Да, есть особые ключи в sudo, которые упрощают эту конструкцию, но во первых их ведь могло и не быть, а во вторых, это особенности, которые редко используются и поэтому легко забываются.

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

sudo делает одно, su делает другое, а вместе они делают третье.

ты наверное вместо grep file делаешь cat file | grep?

а вместо more file - cat file | more ?:)

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

cat file | grep часто бывает очень удобно.

если, например, один и тот же файл я прогоняю через разные фильтры. мне проще редактировать конец строки, а не середину.

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

я именно о конструкции cat file |grep без добавлений

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

ты наверное вместо grep file делаешь cat file | grep?

Бывает и такое. например, cat file, ой много повылазило. cat file | grep нужное...

Это универсальный вариант естественным образом отражающий ход мыслей.

К тому же системы бывают разные и хитрые ключики могут в них отсутствовать. Например, в андройде или макос.

Другими словами, все зависит от контекста, но в целом эти варианты равнозначны по степени разумности.

а вместо more file - cat file | more ?:)

опс, тут поймал. Ни разу даже в голову не приходило использовать more не как фильтр...

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