GNU Coreutils 9.1 Released

GNU Coreutils 9.1 Released

Hello reader! Welcome, let's start-

This is the interesting component ever!!

Version 9.1 of the GNU coreutils package has been released with lots of
small tweaks and improvements. “ls no longer colors files with
capabilities by default, as file-based capabilities are very rarely used,
and lookup increases processing per file by about 30%. It’s best to use
getcap [-r] to identify files with capabilities.

From:   Pádraig Brady
Subject:   coreutils-9.1 released [stable]
Date:   Fri, 15 Apr 2022 23: 38: 58 +0100
This is to announce coreutils-9.1, a stable release.
See the NEWS below for details.

Thanks to everyone who has contributed!
There have been 210 commits by 10 people in the 29 weeks since 9.0

   Bernhard Voelker (3)            Max Filippov (1)
   Bruno Haible (1)                Paul Eggert (136)
   Christian Hesse (1)             Pádraig Brady (64)
   Daniel Knittl-Frank (1)         Rohan Sable (1)
   Jim Meyering (4)                Ville Skyttä (1)

Pádraig [on behalf of the coreutils maintainers]


Here is the GNU coreutils home page:

For a summary of changes and contributors, see:;a=shortlog;...
or run this command from a git-cloned coreutils directory:
     git shortlog v9.0..v9.1

To summarize the 259 gnulib-related changes, run these commands
from a git-cloned coreutils directory:
     git checkout v9.1
     git submodule summary v9.0


Here are the compressed sources:   (14MB)   (5.5MB)

Here are the GPG detached signatures[*]:

Use a mirror for higher download bandwidth:

Here are the SHA1 and SHA256 checksums:

cab498ddc655fd3c7da553d80436d28bc9b17283  coreutils-9.1.tar.gz
YFXfkmhgPoI5pcnB1kyyW5qZJTDfZuM7jXimYO2zezU  coreutils-9.1.tar.gz
aa7bf0be95eef29d98eb5c76d4455698b3b705b3  coreutils-9.1.tar.xz
YaH0ENeLp+fzelpPUObRMgrKMzdUhKMlXt3xejhYBCM  coreutils-9.1.tar.xz

The SHA256 checksum is base64 encoded, instead of the
hexadecimal encoding that most checksum tools default to.

[*] Use a .sig file to verify that the corresponding file (without the
.sig suffix) is intact.  First, be sure to download both the .sig file
and the corresponding tarball.  Then, run a command like this:

   gpg --verify coreutils-9.1.tar.gz.sig

If that command fails because you don't have the required public key,
or that public key has expired, try the following commands to update
or refresh it, and then rerun the 'gpg --verify' command.

   gpg --locate-external-key

   gpg --recv-keys DF6FD971306037D9

   wget -q -O- '' |
gpg --import -

This release was bootstrapped with the following tools:
   Autoconf 2.71
   Automake 1.16.4
   Gnulib v0.1-5194-g58c597d13
   Bison 3.7.4


Noteworthy changes in release 9.1 (2022-04-15) [stable]

Bug fixes

   chmod -R no longer exits with error status when encountering symlinks.
   All files would be processed correctly, but the exit status was incorrect.
   [bug introduced in coreutils-9.0]

   If 'cp -Z A B' checks B's status and some other process then removes B,
   cp no longer creates B with a too-generous SELinux security context
   before adjusting it to the correct value.
   [bug introduced in coreutils-8.17]

   'cp --preserve=ownership A B' no longer ignores the umask when creating B.
   Also, 'cp --preserve-xattr A B' is less likely to temporarily chmod u+w B.
   [bug introduced in coreutils-6.7]

   On macOS, 'cp A B' no longer miscopies when A is in an APFS file system
   and B is in some other file system.
   [bug introduced in coreutils-9.0]

   On macOS, fmt no longer corrupts multi-byte characters
   by misdetecting their component bytes as spaces.
   [This bug was present in "the beginning".]

   'id xyz' now uses the name 'xyz' to determine groups, instead of xyz's uid.
   [bug introduced in coreutils-8.22]

   'ls -v' and 'sort -V' no longer mishandle corner cases like "a..a" vs "a.+"
   or lines containing NULs.  Their behavior now matches the documentation
   for file names like ".m4" that consist entirely of an extension,
   and the documentation has been clarified for unusual cases.
   [bug introduced in coreutils-7.0]

   On macOS, 'mv A B' no longer fails with "Operation not supported"
   when A and B are in the same tmpfs file system.
   [bug introduced in coreutils-9.0]

   'mv -T --backup=numbered A B/' no longer miscalculates the backup number
   for B when A is a directory, possibly inflooping.
   [bug introduced in coreutils-6.3]

Changes in behavior

   cat now uses the copy_file_range syscall if available, when doing
   simple copies between regular files.  This may be more efficient, by avoiding
   user space copies, and possibly employing copy offloading or reflinking.

   chown and chroot now warn about usages like "chown root.root f",
   which have the nonstandard and long-obsolete "." separator that
   causes problems on platforms where user names contain ".".
   Applications should use ":" instead of ".".

   cksum no longer allows abbreviated algorithm names,
   so that forward compatibility and robustness is improved.

   date +'%-N' now suppresses excess trailing digits, instead of always
   padding them with zeros to 9 digits.  It uses clock_getres and
   clock_gettime to infer the clock resolution.

   dd conv=fsync now synchronizes output even after a write error,
   and similarly for dd conv=fdatasync.

   dd now counts bytes instead of blocks if a block count ends in "B".
   For example, 'dd count=100KiB' now copies 100 KiB of data, not
   102,400 blocks of data.  The flags count_bytes, skip_bytes and
   seek_bytes are therefore obsolescent and are no longer documented,
   though they still work.

   ls no longer colors files with capabilities by default, as file-based
   capabilties are very rarely used, and lookup increases processing per file by
   about 30%.  It's best to use getcap [-r] to identify files with capabilities.

   ls no longer tries to automount files, reverting to the behavior
   before the statx() call was introduced in coreutils-8.32.

   stat no longer tries to automount files by default, reverting to the
   behavior before the statx() call was introduced in coreutils-8.32.
   Only `stat --cached=never` will continue to automount files.

   timeout --foreground --kill-after=... will now exit with status 137
   if the kill signal was sent, which is consistent with the behavior
   when the --foreground option is not specified.  This allows users to
   distinguish if the command was more forcefully terminated.

New Features

   dd now supports the aliases iseek=N for skip=N, and oseek=N for seek=N,
   like FreeBSD and other operating systems.

   dircolors takes a new --print-ls-colors option to display LS_COLORS
   entries, on separate lines, colored according to the entry color code.

   dircolors will now also match COLORTERM in addition to TERM environment
   variables.  The default config will apply colors with any COLORTERM set.


   cp, mv, and install now use openat-like syscalls when copying to a directory.
   This avoids some race conditions and should be more efficient.

   On macOS, cp creates a copy-on-write clone if source and destination
   are regular files on the same APFS file system, the destination does
   not already exist, and cp is preserving mode and timestamps (e.g.,
   'cp -p', 'cp -a').

   The new 'date' option --resolution outputs the timestamp resolution.

   With conv=fdatasync or conv=fsync, dd status=progress now reports
   any extra final progress just before synchronizing output data,
   since synchronizing can take a long time.

   printf now supports printing the numeric value of multi-byte characters.

   sort --debug now diagnoses issues with --field-separator characters
   that conflict with characters possibly used in numbers.

   'tail -f file | filter' now exits on Solaris when filter exits.

   root invoked coreutils, that are built and run in single binary mode,
   now adjust /proc/$pid/cmdline to be more specific to the utility
   being run, rather than using the general "coreutils" binary name.


   AIX builds no longer fail because some library functions are not found.
   [bug introduced in coreutils-8.32]

Also posted at

(Log in to post comments)

Read More
Share this on to discuss with people on this topicSign Up on now if you’re not registered yet.

About the author: Ava
I'm a researcher at Utokyo 🙂 and a big fan of Ava Max

Get involved!

Get Connected!
One of the Biggest Social Platform for Entrepreneurs, College Students and all. Come and join our community. Expand your network and get to know new people!


No comments yet
Knowasiak We would like to show you notifications so you don't miss chats & status updates.
Allow Notifications