壳循环
对我来说,我选择通过 ssh Ngrok chroot 进入 VM 并在后台运行命令 shell(循环)
while true;do sleep 300; done &
我正在使用&` for 在后台运行此命令
所以我可以退出 colab 的网站并让 VM 工作 12 小时
ssh Ngrok
在 colab 中使用 ssh 的最佳方式,您必须在 ngrok.com 中签名一次并获取您的 OAuth 密钥并将此单元格添加到您的 colab 笔记本中
#@title **SSH**
! pip install colab_ssh --upgrade &> /dev/null
Ngrok = True
try:
if username:
pass
elif password:
pass
except NameError:
!echo "root:root" | chpasswd
username='root'
password='root'
#@markdown [OAuth](https://dashboard.ngrok.com/auth)
ngrokToken = "" #@param {type:'string'}
def runNGROK():
from colab_ssh import launch_ssh
from IPython.display import clear_output
launch_ssh(ngrokToken, password)
clear_output()
print("ssh", username, end='@')
! curl -s http://localhost:4040/api/tunnels | python3 -c \
"import sys, json; print(json.load(sys.stdin)['tunnels'][0]['public_url'][6:].replace(':', ' -p '))"
if Ngrok:
if ngrokToken == "":
print("No ngrokToken Found, Please enter it")
else:
runNGROK()
现在在 colab 单元格中的 Edite 文本中通过您的 OAuth 密钥,在 3-9 秒后您会看到像这样的 ssh
ssh root@2.tcp.ngrok.io -p 13225
不要忘记修改root用户的密码(默认是root),为了更安全,你应该修改root用户的linux密码!echo "root:new password" | chpasswd 和python变量:password =password='new password',你必须匹配linux密码和var python密码,请看上面的这条线:
print("No user found using username and password as 'root'")
!echo "root:t" | chpasswd
username='root'
password='root'