解决SSH、SCP服务器用户名 带空格无法传输文件的问题
提示:解决SSH、SCP服务器用户名 带空格无法传输文件的问题
解决方法:
cd $HOME
ls -la 发现.ssh 隐藏目录
cd 进入.ssh 文件夹下
若没有config 文件, 则touch 一个 config文件
vim config 使用vim打开config文件 并进行编辑
如下:root@ubuntu:~$ cd .ssh
root@ubuntu:~$ ls
id_rsa id_rsa.pub known_hosts
root@ubuntu:~/.ssh$ touch config
root@ubuntu:~$ ls
id_rsa id_rsa.pub known_hosts config
————————————————
config文件中加入以下内容:
Host 别名
HostName 远程服务器ip
User 远程服务器用户名
Port 22
eg:
Host ligen
HostName 192.168.217.1
User "cap reg" #必须双引号""否则报错garbage
Port 22
如此,就完成了换名的主要工作
ligen 可以 代替 “cap reg”@192.168.217.1
自此用 scp (-r)进行传输任务时就可以输入密码传输了
如下:
之前 :
scp vm.sh “cap reg”@192.168.217.1:D:\tempdirectory
cap reg: invalid user name
现在:
scp vm.sh ligen:D:\tempdirectory
cap reg@192.168.217.1’s password:
vm.sh
100% 43 103.5KB/s 00:00
传输完成!
对了,每一次修改netplan、ssh相关文档,包括这个config最好都要重启一下
重启network服务
[root@frankie .ssh]# service networking restart
2024-3-22 如上,必须解决这个问题,搜索无果,便东拼西凑,乃完成,遂记录一二,以便世人。
[感谢这篇log的指导](https://blog.csdn.net/qq_42517220/article/details/87955942)