小编Lee*_*ley的帖子

通过不同用户名的代理转发(Git 和部署)

此查询与 Git 没有直接关系,但由于 Git 支持的传输之一是 SSH,并且我正在尝试使用代理转发,我想我会要求澄清(手册页让我失望)

我正在尝试使用 Capistrano 自动化软件部署,我设法暂停了一些痛点(在部署之前预先播种已知主机等),但我遇到了以下情况。

我的团队以自己的身份登录服务器,个人用户帐户,每个人都在一个developers组中,并且umask002. 以上都不是真正相关的,只是说目的是确保我的团队始终可以像他们自己一样工作,而无需超级用户特权。

我们example.com使用以下方法连接到服务器~/.ssh/config

Host example.com
  User beaks
  ForwardAgent yes
  IdentityFile ~/.ssh/id_rsa_business
Run Code Online (Sandbox Code Playgroud)

初始登录工作正常,ssh example.com打开与我的用户帐户的连接,一切正常。

问题出现在下一步,

git ls-remote git@github.com:project/repository.git
Run Code Online (Sandbox Code Playgroud)

这是使用前面提到的 Git+SSH 传输层(见上面的链接) - 通常应该使用我的转发代理密钥(我已经用 验证过env | grep SSH_AUTH_SOCK

响应是一个简单的“身份验证失败(公钥)另一端意外挂断”,我怀疑是因为当我github.com作为他们的共享git用户接近时,我的用户的代理没有被使用。

我也不能排除EC2怪异(安全策略等) - 但在这种情况下,我会期望超时或连接失败。我非常有信心我正在击球github.com- 而且他们不让我进入,因为我的代理没有beaks为他们的git用户提供我的钥匙。

如果我错过了任何内容,很高兴添加任何其他信息。

ssh git github ssh-agent

8
推荐指数
1
解决办法
4527
查看次数

创建一个带有假“root”的压缩包

我正在 Makefile 中的一些东西看起来像这样:

压缩包:
        mkdir -p tmp/tarball/etc/service
        mkdir -p tmp/tarball/usr/local
        mkdir -p tmp/tarball/opt/myproject
        cd 传感器数据;制作
        cd 传感器隧道;制作设备名称
        cp -r sensorservices tmp/tarball/etc/service
        # 在这里制作一个 tarball,例如:
        # chroot tmp/tarball;tar -czvf myproject.tar.gz 。

这个想法是,我将能够进入该./tmp/tarball目录,并创建一个 tarball,当在系统上解压缩时,它会将自身解压缩到/etc/service,/usr/local/opt/myproject.

经典方法似乎是使用,tar -czvf -C tmp/tarball .但这会导致以 .tar 开头的条目的 tar 列表./

我的灵感来自 Go 语言的包,这表明它应该安装:

tar -C /usr/local -xzf go1.0.3.linux-amd64.tar.gz
Run Code Online (Sandbox Code Playgroud)

这对我的用例来说是理想的,我希望能够做到:

tar -C / -xzf myproject.tar.gx
Run Code Online (Sandbox Code Playgroud)

这反过来会将最初的文件提取~/some-working-directory/tmp/tarball/_____/_____,这意味着我可以简单地伪造安装结构。

当然,这可能会更好地通过类似fpm.

我偶然发现了fakechroot,这似乎很有希望,但并不令人惊讶,chroot 中不存在 tar,当我开始进入那个兔子洞时,我只是假设我做错了什么,应该寻求帮助。

tar chroot

5
推荐指数
1
解决办法
5730
查看次数

tmux 不寻常的“半边界”情况

我的 tmux 偶尔会进入一种奇怪的状态,其中一半边框(无论方向或(tmux)窗口焦点)是粗体、突出显示的?

请参阅下面的屏幕截图:

tmux 的屏幕截图,其中一半窗口边框以粗体显示

奇怪的是,即使完全杀死 tmux 之后我也可以从这种状态中恢复,但是一半边框是彩色的,请参见第二个屏幕截图:

tmux 的屏幕截图,其中一半边框突出显示

在第二个屏幕截图中,尽管边框的一半是白色的,但另一半是绿色的。

注意:橙色/绿色的差异在这里无关紧要,我尝试了“修复”奇怪的边框,迫使它们变成橙色,这影响了我制作的屏幕截图。

我不相信我有任何不寻常的配置:

new-session -n $HOST
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'nhdaly/tmux-scroll-copy-mode'
set -g @plugin 'tmux-plugins/tmux-yank'
set-window-option -g mode-keys vi
set-window-option -g allow-rename off
set-window-option -g automatic-rename off
set-option -g mouse on
set -g @shell_mode 'vi'
set -g @yank_selection 'clipboard'
set -g @yank_selection_mouse 'clipboard'
set -g default-terminal "screen-256color"
Run Code Online (Sandbox Code Playgroud)

这是一个错误功能吗?为什么只有一半颜色/粗体,为什么粗体只有时发生,为什么它不受缩放或鼠标在窗口内或窗口周围单击的影响?

事实上,我无法可靠地重现,也无法在发生这种情况时忽略它,这让我认为这是一个错误,但我只是不确定。

tmux 版本是 2.9x,终端是 alacritty 0.4.0,操作系统是 Feroda,我的$TERM变量似乎是screen

terminal colors border tmux

3
推荐指数
1
解决办法
1856
查看次数

标签 统计

border ×1

chroot ×1

colors ×1

git ×1

github ×1

ssh ×1

ssh-agent ×1

tar ×1

terminal ×1

tmux ×1