%general-entities; ]> coreutils &coreutils-version;
&coreutils-url;
Coreutils-&coreutils-version; Coreutils <para>Пакет Coreutils содержит основные утилиты, необходимые каждой операционной системе.</para> <segmentedlist> <segtitle>&buildtime;</segtitle> <segtitle>&diskspace;</segtitle> <seglistitem> <seg>&coreutils-fin-sbu;</seg> <seg>&coreutils-fin-du;</seg> </seglistitem> </segmentedlist> </sect2> <sect2 role="installation"> <title>Установка пакета Coreutils Стандарт POSIX требует, чтобы программы пакета Coreutils правильно распознавали символы даже в случае, если используются многобайтовые локали. Следующий патч исправляет несоответствие этому требованию, а также другие ошибки, касающиеся интернационализации: patch -Np1 -i ../&coreutils-i18n-patch; В этом патче было обнаружено много ошибок. Сообщая о новых ошибках разработчикам Coreutils, сначала проверьте, воспроизводятся ли эти ошибки без этого исправления. Исправьте уязвимость в утилите split: sed -e '/n_out += n_hold/,+4 s|.*bufsize.*|//&|' \ -i src/split.c Теперь подготовьте Coreutils к компиляции: autoreconf -fiv FORCE_UNSAFE_CONFIGURE=1 ./configure \ --prefix=/usr \ --enable-no-install-program=kill,uptime Значение параметров настройки: autoreconf Патч для интернационализации изменил систему сборки пакета, поэтому файлы конфигурации необходимо сгенерировать заново. FORCE_UNSAFE_CONFIGURE=1 Эта переменная среды позволяет собрать пакет от имени пользователя root. --enable-no-install-program=kill,uptime Назначение этого параметра — запретить Coreutils устанавливать программы, которые будут установлены другими пакетами. Скомпилируйте пакет: make Если вы не планируете запускать набор тестов, перейдите к разделу Установка пакета. Теперь набор тестов готов к запуску. Сначала запустите тесты, предназначенные для запуска от имени пользователя root: make NON_ROOT_USERNAME=tester check-root Мы собираемся выполнить остальные тесты от имени пользователя tester. Некоторые тесты требуют, чтобы пользователь был членом более чем одной группы. Чтобы эти тесты не были пропущены, добавьте временную группу и включите в неё пользователя tester: groupadd -g 102 dummy -U tester Исправьте некоторые разрешения, чтобы пользователь без полномочий &root; мог компилировать и запускать тесты: chown -R tester . Теперь запустите тесты (используя /dev/null для стандартного ввода, иначе два теста могут быть не пройдены при сборке LFS в графическом терминале, или сеансе SSH, или GNU Screen и прочее, поскольку стандартный ввод подключен к PTY из хост-дистрибутива, и узел устройства для такого PTY недоступен из среды chroot LFS): su tester -c "PATH=$PATH make RUN_EXPENSIVE_TESTS=yes check" < /dev/null Удалить временную группу: groupdel dummy Установите пакет: make install Переместите программы туда, где они должны быть в соответствие со спецификациями FHS: mv -v /usr/bin/chroot /usr/sbin mv -v /usr/share/man/man1/chroot.1 /usr/share/man/man8/chroot.8 sed -i 's/"1"/"8"/' /usr/share/man/man8/chroot.8 Содержимое пакета Coreutils Установленные программы Установленные библиотеки Созданные каталоги [, b2sum, base32, base64, basename, basenc, cat, chcon, chgrp, chmod, chown, chroot, cksum, comm, cp, csplit, cut, date, dd, df, dir, dircolors, dirname, du, echo, env, expand, expr, factor, false, fmt, fold, groups, head, hostid, id, install, join, link, ln, logname, ls, md5sum, mkdir, mkfifo, mknod, mktemp, mv, nice, nl, nohup, nproc, numfmt, od, paste, pathchk, pinky, pr, printenv, printf, ptx, pwd, readlink, realpath, rm, rmdir, runcon, seq, sha1sum, sha224sum, sha256sum, sha384sum, sha512sum, shred, shuf, sleep, sort, split, stat, stdbuf, stty, sum, sync, tac, tail, tee, test, timeout, touch, tr, true, truncate, tsort, tty, uname, unexpand, uniq, unlink, users, vdir, wc, who, whoami и yes libstdbuf.so (in /usr/libexec/coreutils) /usr/libexec/coreutils Краткое описание [ Это команда /usr/bin/[, которая является синонимом команды test [ base32 Кодирует и декодирует данные в соответствии со спецификацией base32 (RFC 4648) base64 base64 Кодирует и декодирует данные в соответствии со спецификацией base64 (RFC 4648) base64 b2sum Выводит или проверяет контрольные суммы BLAKE2 (512-битные) b2sum basename Удаляет любой путь и заданный суффикс из имени файла basename basenc Кодирует или декодирует данные с использованием различных алгоритмов basenc cat Присоединяет файлы к стандартному выходному потоку cat chcon Изменяет контекст безопасности для файлов и каталогов chcon chgrp Изменяет владельцев группы для файлов и директорий chgrp chmod Изменяет разрешения каждого файла на заданный режим; режим может быть либо символьным представлением вносимых изменений, либо восьмеричным числом, представляющим новые разрешения. chmod chown Изменяет принадлежность файлов и директорий пользователю и/или группе chown chroot Запускает команду с указанным каталогом в качестве корневого каталога / chroot cksum Выводит контрольную сумму Cyclic Redundancy Check (CRC) и количество байтов для каждого указанного файла. cksum comm Сравнивает два отсортированных файла, выводя в три столбца уникальные и общие строки. comm cp Копирует файлы cp csplit Разбивает заданный файл на несколько новых файлов, разделяя их в соответствии с заданными шаблонами или номерами строк и выводя количество байтов для каждого нового файла. csplit cut Выдает участки строк, выбирая части в соответствии с заданными полями или позициями cut date Отображает текущее дату и время в заданном формате или устанавливает системные дату и время date dd Копирует файл, используя заданный размер блока и количество, при необходимости выполняя преобразования на нем. dd df Сообщает объем доступного (и используемого) дискового пространства во всех смонтированных файловых системах или только в файловых системах, содержащих выбранные файлы. df dir Выводит содержимое заданного каталога (так же, как команда ls) dir dircolors Выводит команды для установки переменной среды LS_COLOR для изменения цветовой схемы, используемой ls. dircolors dirname Извлекает часть(части) каталога из заданного(заданных) имени(имён) dirname du Сообщает объем дискового пространства, используемого текущим каталогом, каждым из заданных каталогов (включая все подкаталоги) или каждым из заданных файлов. du echo Отображает указанные строки echo env Запускает команду в модифицированной среде окружения env expand Конвертирует символы табуляции в пробелы expand expr Вычисляет выражения expr factor Выводит простые множители указанных целых чисел factor false Ничего не делает, указывает на неудачу; всегда завершается с кодом состояния, указывающим на сбой false fmt Форматирует абзацы в указанных файлах fmt fold Выполняет перенос строк в указанных файлах fold groups Сообщает о принадлежности пользователя к группам groups head Выводит первые десять строк (или заданное количество строк) каждого заданного файла. head hostid Выводит числовой идентификатор хоста (в шестнадцатеричном формате) hostid id Выводит действующий идентификатор пользователя, идентификатор группы и принадлежность к группам для текущего или для указанного пользователя id install Копирует файлы, одновременно устанавливая для них права доступа, и, если возможно, устанавливая для них владельца и группу install join Объединяет строки, которые имеют идентичные объединяемые поля в двух различных файлах join link Создает жесткую ссылку (с указанным именем) на файл link ln Создает жесткие или мягкие (символические) ссылки между файлами ln logname Сообщает имя входа текущего пользователя logname ls Выводит список содержимого для каждого заданного каталога ls md5sum Выводит или проверяет контрольные суммы Message Digest 5 (MD5) md5sum mkdir Создает директории с указанными именами mkdir mkfifo Создает "именованный канал" "первым пришел — первым ушел" (FIFO), в нотации UNIX с заданными именами mkfifo mknod Создает узлы устройств с заданными именами; узел устройства представляет собой специальный символьный файл, специальный файл блока или FIFO. mknod mktemp Создает временные файлы безопасным способом; используется в скриптах mktemp mv Перемещает или переименовывает файлы или каталоги mv nice Запускает программу с измененным приоритетом исполнения nice nl Нумерует строки в указанных файлах nl nohup Запускает команду, невосприимчивую к зависаниям, а ее вывод перенаправляется в файл журнала nohup nproc Выводит количество дочерних процессов, доступных для процесса. nproc numfmt Преобразует числа в или из удобочитаемых строк numfmt od Вывод дампа файла в восьмеричном и других форматах od paste Объединяет указанные файлы, последовательно соединяя соответствующие строки рядом друг с другом, разделенные символами табуляции. paste pathchk Проверяет, являются ли имена файлов допустимыми или переносимыми pathchk pinky Легковесный клиент типа finger; выдает некоторую информацию о заданных пользователях pinky pr Разбивает файлы для печати на страницы и столбцы pr printenv Выдает значения переменных окружения printenv printf Выводит аргументы в соответствии с заданным форматом, подобно функции C printf. printf ptx Создает перестановочный индекс по содержимому указанных файлов с каждым ключевым словом в своем контексте ptx pwd Сообщает имя текущего рабочего каталога pwd readlink Выдает значение указанной символической ссылки readlink realpath Возвращает приведенное к обычному виду полное имя файла realpath rm Удаляет файлы или каталоги rm rmdir Удаляет каталоги, если они пусты rmdir runcon Запускает команду с указанным контекстом безопасности runcon seq Выдает последовательность чисел из указанного диапазона с указанным значением приращения seq sha1sum Выводит или проверяет контрольные суммы 160-битного алгоритма безопасного хеширования 1 (SHA1) sha1sum sha224sum Выводит или проверяет контрольные суммы 224-битного алгоритма безопасного хеширования sha224sum sha256sum Выводит или проверяет контрольные суммы 256-битного алгоритма безопасного хеширования sha256sum sha384sum Выводит или проверяет контрольные суммы 384-битного алгоритма безопасного хеширования sha384sum sha512sum Выводит или проверяет контрольные суммы 512-битного алгоритма безопасного хеширования sha512sum shred Многократно перезаписывает заданные файлы сложными шаблонами, что затрудняет восстановление данных. shred shuf Перемешивает строки текста shuf sleep Делает паузу на заданный промежуток времени sleep sort Сортирует строки в указанных файлах sort split Разбивает заданный файл на несколько частей в соответствии с указанным размером или количеством строк split stat Отображает статус файла или файловой системы stat stdbuf Запускает команды с измененными операциями буферизации для своих стандартных потоков. stdbuf stty Устанавливает или сообщает настройки терминала stty sum Выводит контрольную сумму и количество блоков для каждого заданного файла sum sync Сбрасывает буферы файловой системы; он принудительно записывает измененные блоки на диск и обновляет суперблок sync tac Конкатенация содержимого указанных файлов в обратном порядке tac tail Выводит последние десять строк (или заданное количество строк) каждого указанного файла tail tee Считывает данные со стандартного потока ввода, записывает как в стандартный вывод, так и в указанные файлы tee test Сравнивает значения и проверяет типы файловs test timeout Запускает команду с ограничением по времени timeout touch Изменяет временные метки файлов, устанавливая время доступа и модификации данных файлов на текущее время; несуществующие файлы создаются с нулевой длиной touch tr Переводит, сжимает и удаляет заданные символы из стандартного потока tr true Ничего не делает, указывает на успешное выполнение операции; он всегда завершается с кодом состояния, указывающим на успех true truncate Сжимает или расширяет файл до указанного размера truncate tsort Выполняет топологическую сортировку; записывает полностью упорядоченный список в соответствии с частичным упорядочением в данном файле tsort tty Сообщает имя файла терминала, подключенного к стандартному вводу. tty uname Сообщает системную информацию uname unexpand Преобразует пробелы в табуляции unexpand uniq Удаляет все повторяющиеся копии уже имеющихся строк, кроме одной uniq unlink Удаляет указанный файл unlink users Сообщает имена пользователей, вошедших в систему в данный момент users vdir То же, что ls -l vdir wc Сообщает количество строк, слов и байт для каждого заданного файла, а также общее количество строк, если указано более одного файла wc who Сообщает, кто вошел в систему who whoami Сообщает имя пользователя, соответствующее идентификатору текущего пользователя whoami yes Повторно выводит y или указанную строку, до тех пор, пока команда не будет завершена с помощью kill yes libstdbuf Библиотека, используемая командой stdbuf libstdbuf