小编Ben*_*yan的帖子

如何设置 LXC 来宾,以便它获得 dhcp 地址,以便我可以在我的网络上访问它?

我使用以下方法设置 LXC:

lxc-create -t ubuntu -n lxcguest1
Run Code Online (Sandbox Code Playgroud)

但是我无法从我的 LAN 访问在它上面运行的任何服务,它似乎是 NATed。我如何设置它以便我可以访问它(它可能需要从我的 Linksys 路由器获取它的 dhcp 地址)?

谢谢。

networking lxc

15
推荐指数
2
解决办法
5万
查看次数

在 Ubuntu 16.04 上长时间运行 udev 脚本

在 Ubuntu 14.04 上,我有一个长时间运行的 bash 脚本,其中有一个简单的 udev 规则,它的工作原理如下:

ACTION=="change", SUBSYSTEM=="block", RUN+="/opt/script.sh"
Run Code Online (Sandbox Code Playgroud)

在 Ubuntu 16.04 上,事情进展得并不顺利。脚本开始运行,但在它完成之前就被杀死了。然后我尝试更改我的 udev 规则以调用一个可以分离脚本的 warapper 脚本。我试过:

ACTION=="change", SUBSYSTEM=="block", RUN+="/opt/script.sh"
Run Code Online (Sandbox Code Playgroud)

然后我尝试:

#!/bin/sh
nohup /opt/script.sh  &
Run Code Online (Sandbox Code Playgroud)

无济于事。

然后我尝试创建一个 systemd 服务...

ACTION=="change", SUBSYSTEM=="block", ENV{SYSTEMD_WANTS}=="justrunthescript.service"
Run Code Online (Sandbox Code Playgroud)

/etc/systemd/system/justrunthescript.service

[Unit]
Description=Just run the script

[Service]
ExecStart=/opt/script.sh
Run Code Online (Sandbox Code Playgroud)

我必须在某个时候运行脚本,但我的脚本依赖于 udev 参数,如 $ID_FS_TYPE 不会以这种方式传递。

我想我想要的很简单,只需插入一张光盘并从 udev 规则运行我的脚本,不要杀死脚本。解决这个问题的最佳方法是什么?

command-line scripts udev systemd 16.04

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

标签 统计

16.04 ×1

command-line ×1

lxc ×1

networking ×1

scripts ×1

systemd ×1

udev ×1