我手上有一台用来搭梯子的Azure服务器,IP经常被墙,有时候又没办法找个电脑登录portal重启机器,所以就想直接用Azure-cli完成。
安装Azure-CLI
先参照这个教程安装好Azure-cli:如何安装 Azure CLI
我是装在另一台Debian的服务器上了,所以直接看的这个:在 Ubuntu/Debian 上使用 apt 进行安装
安装结束后,在命令行输入az
,有输出的话就说明安装成功了。
Yaodo·2023-04-01·144 次阅读
我手上有一台用来搭梯子的Azure服务器,IP经常被墙,有时候又没办法找个电脑登录portal重启机器,所以就想直接用Azure-cli完成。
先参照这个教程安装好Azure-cli:如何安装 Azure CLI
我是装在另一台Debian的服务器上了,所以直接看的这个:在 Ubuntu/Debian 上使用 apt 进行安装
安装结束后,在命令行输入az
,有输出的话就说明安装成功了。
在命令行输入az login
会有类似的输出:
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code FG9R9VQU2 to authenticate.
就按照提示所说的,把这个链接(https://microsoft.com/devicelogin)复制到随便哪一台电脑的浏览器打开,再输入验证码(FG9R9VQU2)就可以登录了。
登录portal:https://portal.azure.com
点进你的虚拟机资源,然后点击CLI/PS
这里会有常用的语法,以及写好的命令,直接拷贝下来就可以执行了
我想要重新给机器分配ip的话,只需要依次在命令行执行:
即可。
你也可以写一个稍微复杂点的判断程序,在ip不通的时候直接自动获取新ip,类似这样:
from os import system def ip_blocked(): if *** : return 1 else: return 0 def reallocate(): deallocate = 'az vm deallocate --resource-group ***** --name ***** --subscription *****' start = 'az vm start --resource-group ***** --name ***** --subscription *****' show_ip = 'az vm list-ip-addresses --resource-group ***** --name ***** --subscription *****' system(deallocate) system(start) system(show_ip) if __name__ == '__main__': if ip_blocked() == 1: reallocate()
再写个什么定时任务过几个小时执行一下就行了。
不过我倒是每次发现被墙才手动执行一下的。
python reallocate.py
Comments | NOTHING