我有几台机器,我定期 ssh 进入,只是为了使用sudo su我的会话的其余部分作为某个特殊用途的用户登录。一般工作流程是:
mymachine:~ me$ ssh me@othermachine
othermachine:~ me$ sudo su - specialuser # note: no password needed
othermachine:~ specialuser$ # do stuff
Run Code Online (Sandbox Code Playgroud)
我想把它归结为一个可以别名的单行代码,这样我就可以为每台机器设置一个别名,然后在一个命令中到达我需要的地方,而无需键入sudo su - specialuser样板。我也许me@othermachine可以sudo su在登录时设置为,但我想保持操作的灵活性,就像me我需要的那样。
(注意:我无法控制othermachine或控制它的设置方式;这是我在受雇时采用的既定工作流程。)
我的第一个想法是
ssh me@othermachine "sudo su - specialuser"
Run Code Online (Sandbox Code Playgroud)
和这种工作,但它没有提示我,^C杀死它并将我注销,我认为其他各种事情也可能是错误的。
在阅读Run Remote ssh command with Full Login Shell 之后,我尝试了一些更奇特的东西,比如
ssh me@othermachine 'bash -l -c "sudo su - specialuser"'
Run Code Online (Sandbox Code Playgroud)
和
ssh me@othermachine 'bash -l -c …Run Code Online (Sandbox Code Playgroud) 我们有 Comcast 有线互联网,我们想通过有线连接连接两台设备:一台 WiFi 路由器和一台 PC。我们在同一个房间里设置了所有这些,它基本上可以工作:
wall --coax--> cable modem --cat5--> (WAN) wifi router (LAN) --cat5--> PC
Run Code Online (Sandbox Code Playgroud)
(调制解调器是Arris TM822G DOCSIS 3.0 型号,也提供电话服务)。
不幸的是,wifi 信号无法到达房子的后面。不过,我们在那端确实有另一个电缆出口,因此我们正在考虑使用 MoCA 在电缆设置上运行以太网。我们得到了一个Actiontec ECB2500CK01 双适配器 MoCA 套件,并按照说明和一些互联网论坛建议,将其设置如下:
wall #1 --coax--> splitter --coax--> cable modem <-------
^ |
| cat5
| |
---coax--- MoCA adaptor #1 <---
Run Code Online (Sandbox Code Playgroud)
(这对于只习惯使用双绞线的人来说已经很困惑了,因为到电缆调制解调器的 WAN 连接和来自 MoCA 适配器的 LAN 连接显然应该通过同一根同轴电缆传输,但我想这就是射频。)
理论上,在另一个房间里,我们会设置:
wall #2 --coax--> MoCA adaptor #2 --cat5--> wifi router
Run Code Online (Sandbox Code Playgroud)
然而,在深入了解之前,我们意识到存在一个问题:电缆调制解调器和 MoCA 适配器 #1 都没有空闲的以太网端口,因此没有地方可以插入有线 PC。
现在,房子的其他地方有第三个电缆插座,所以理论上我们可以获得第三个 MoCA 适配器并将它和电缆调制解调器插入该插座,同时使用 MoCA 适配器 …