"ssh-keygen -R hostname" errors out with non-existent known_hosts

Thorsten Glaser t.glaser at tarent.de
Wed Mar 24 12:20:19 AEDT 2021


On Wed, 24 Mar 2021, Damien Miller wrote:

> > Exit 0, please. An absent known_hosts file doesn't contain the entry
> > the "ssh-keygen -R hostname" entry is expected to remove, and the
> > result should be considered a success for the command.

Agreed.

> "grep foo /nonexistent" or "sed -i s/foo/bar /nonexistent" don't return
> status 0 either for exactly the same reason.

This is more of a ,g/entry/d than a /entry/d in ed(1) parlance.

It’s a convenience command to remove an entry from the list of
known hosts, whether it exists or not or the file doesn’t even
exist; it should only fail when the job can’t be done (e.g. the
file is write-protected).

Think of it as 'rm -f known_hosts/entry' which won’t fail if
known_hosts/ doesn’t exist.

bye,
//mirabilos
-- 
«MyISAM tables -will- get corrupted eventually. This is a fact of life. »
“mysql is about as much database as ms access” – “MSSQL at least descends
from a database” “it's a rebranded SyBase” “MySQL however was born from a
flatfile and went downhill from there” – “at least jetDB doesn’t claim to
be a database”	(#nosec)    ‣‣‣ Please let MySQL and MariaDB finally die!


More information about the openssh-unix-dev mailing list