列出可用时区显示“UTC”
$ timedatectl list-timezones
UTC
Run Code Online (Sandbox Code Playgroud)
将其设置为 UTC 失败,声称 UTC 是“无效的”。
$ timedatectl set-timezone UTC
Failed to set time zone: Invalid time zone 'UTC'
Run Code Online (Sandbox Code Playgroud)
这是在 Ubuntu 19.10(谷歌云)上
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 19.10
Release: 19.10
Codename: eoan
Run Code Online (Sandbox Code Playgroud)
为什么这会失败?
该ss命令似乎区分*和0.0.0.0。0.0.0.0:22虽然 ssh和的列表[::]:22很清楚,*:7946但*:80并不那么清楚。
$ ss -ntl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 128 *:7946 *:*
LISTEN 0 128 *:80 *:*
LISTEN 0 128 [::]:22 [::]:*
Run Code Online (Sandbox Code Playgroud)
为什么不是0.0.0.0:7946和0.0.0.0:80?这里有什么区别?
我知道cloud-init允许将命令作为cloud-init yml的一部分运行
runcmd:
- [ pwd ]
Run Code Online (Sandbox Code Playgroud)
但我正在寻找一种执行完整 shell 脚本的方法。
有些人只是将 a 的输出通过管道传输curl到 shell 中 - 但这感觉像是一种非常不稳定的方法。也许脚本可以通过一些模板集成到 yml 中,但这听起来也不太好。
更好的方法是将脚本与 yml 一起发送给主机并引用它。但我还没有找到任何有关如何执行此操作的文档。
这可能吗?
我正在使用terraform来设置服务器,但我想知道这是否也可以使用纯cloud-init来完成。
cloud-init ×1
linux ×1
networking ×1
routing ×1
server-setup ×1
terraform ×1
timezone ×1
ubuntu ×1