昨晚我的流浪汉工作得非常好.我刚打开电脑,点击vagrant up
,这就是我得到的:
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: hostonly
==> default: Forwarding ports...
default: 22 => 2222 (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Error: Connection timeout. Retrying...
default: Error: Connection timeout. Retrying...
default: …
Run Code Online (Sandbox Code Playgroud) 我有一个运行的EC2实例(FreeBSD 9 AMI ami-8cce3fe5),我可以使用我的亚马逊创建的密钥文件ssh到它,没有密码提示,没问题.
但是,当我想使用scp将文件复制到实例时,我被要求输入密码:
scp somefile.txt -i mykey.pem root@my.ec2.id.amazonaws.com:/
Password:
Run Code Online (Sandbox Code Playgroud)
任何想法为什么会发生这种情况/如何预防?
如何在AWS管理控制台中更改ec2实例的密钥对?我可以停止实例,我可以创建新的密钥对,但是我没有看到任何修改实例密钥对的链接.
当我进入运行Hardy 8.04的ubuntu-box时,我的.bashrc中的环境变量没有设置.
如果我做一个源.bashrc,变量是正确设置的,一切都很好.
为什么.bashrc不会在登录时运行?
我想使用我的Amazon ec2实例,但遇到以下错误:
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)
我创建了密钥对并下载了.pem文件.
鉴于:
chmod 600 pem file.
Run Code Online (Sandbox Code Playgroud)
然后,这个命令
ssh -i /home/kashif/serverkey.pem ubuntu@ec2-54-227-242-179.compute-1.amazonaws.com
Run Code Online (Sandbox Code Playgroud)
但有这个错误:
Permission denied (publickey)
Run Code Online (Sandbox Code Playgroud)
另外,如何连接filezilla上传/下载文件?
我一直在尝试以下命令:
rsync -rvz --progress --remove-sent-files ./dir user@host:2222/path
Run Code Online (Sandbox Code Playgroud)
SSH在端口2222上运行,但是rsync仍然尝试使用端口22然后抱怨没有找到路径,因为它当然不存在.
我想知道是否可以rsync到非标准ssh端口上的远程主机.
我创建了一个新的本地Git存储库:
~$ mkdir projectname
~$ cd projectname
~$ git init
~$ touch file1
~$ git add file1
~$ git commit -m 'first commit'
Run Code Online (Sandbox Code Playgroud)
是否有任何git命令来创建一个新的远程仓库并从此处将我的提交推送到GitHub?我知道启动浏览器并转向创建新存储库没什么大不了的,但如果有办法从CLI实现这一点,我会很高兴.
我阅读了大量的文章,但我没有提到如何使用git命令从CLI创建远程仓库.Tim Lucas的好文章设置一个新的远程git存储库是我找到的最接近的,但GitHub不提供shell访问.
我已经设置了ssh代理,我可以在Bash脚本中运行外部服务器上的命令,例如:
ssh blah_server "ls; pwd;"
Run Code Online (Sandbox Code Playgroud)
现在,我真正想做的是在外部服务器上运行很多长命令.将所有这些包含在引号之间会非常难看,而且我宁愿多次避免ssh'ing以避免这种情况.
那么,有没有一种方法可以用括号括起来的一个方法做到这一点?我正在寻找以下内容:
ssh blah_server (
ls some_folder;
./someaction.sh;
pwd;
)
Run Code Online (Sandbox Code Playgroud)
基本上,只要它干净,我会对任何解决方案感到满意.
为了澄清,我在谈论这是一个更大的bash脚本的一部分.其他人可能需要处理脚本,所以我想保持清洁.我不希望有一个bash脚本,其中一行看起来像:
ssh blah_server "ls some_folder; ./someaction.sh 'some params'; pwd; ./some_other_action 'other params';"
Run Code Online (Sandbox Code Playgroud)
因为它非常丑陋且难以阅读.
我有以下用例:我希望能够推送git@git.company.com:gitolite-admin
使用用户的私钥gitolite-admin
,而我想推送git@git.company.com:some_repo
使用"我自己的"私钥.AFAIK,我无法解决这个问题~/.ssh/config
,因为在这两种情况下用户名和服务器名都是相同的.由于我主要使用自己的私钥,因此我已将其定义~/.ssh/config
为git@git.company.com
.有没有人知道一种方法来覆盖用于单个git
调用的密钥?
(旁白:gitolite基于密钥来区分谁在进行推送,因此在访问,所有权和审计方面,用户@服务器字符串对于不同的用户来说是相同的.)
在Git中,当主机使用不同的SSH端口时,如何添加远程源服务器?
git remote add origin ssh://user@host/srv/git/example
Run Code Online (Sandbox Code Playgroud)