ssh-copy-id fails by making assumptions about the default shell on the remote machine
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
fish (Ubuntu) |
Fix Released
|
Medium
|
Unassigned | ||
Xenial |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
ssh-copy-id 10.200.17.160
/usr/bin/
/usr/bin/
foo@10.200.17.160's password:
fish: Expected a command name, got token of type “Run job in background”. Did you mean “COMMAND; and COMMAND”? See the help section for the “and” builtin command by typing “help and”.
Standard input: mkdir -p .ssh && cat >> .ssh/authorized
I expected to be able to copy my key.
An approach I see is for ssh-copy-id to run bash -c ....
ProblemType: Bug
DistroRelease: Ubuntu 15.04
Package: openssh-client 1:6.7p1-5ubuntu1.3
ProcVersionSign
Uname: Linux 3.19.0-25-generic x86_64
ApportVersion: 2.17.2-0ubuntu1.3
Architecture: amd64
CurrentDesktop: GNOME
Date: Mon Sep 7 15:56:44 2015
RelatedPackageV
ssh-askpass N/A
libpam-ssh N/A
keychain N/A
ssh-askpass-gnome 1:6.7p1-5ubuntu1.3
SSHClientVersion: OpenSSH_6.7p1 Ubuntu-5ubuntu1.3, OpenSSL 1.0.1f 6 Jan 2014
SourcePackage: openssh
UpgradeStatus: No upgrade log present (probably fresh install)
Thank you for taking the time to report this bug and helping to make Ubuntu better.
This sounds reasonable. ssh-copy-id should not be making any assumptions about the user's default shell on the remote machine. It might be better for it to call sh explicitly, since sh (compatibility) is more universally availability.