- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我喜欢在连接 eth0 时打开绿色 LED(通过 GPIO 连接)。断开连接时,我喜欢打开绿色 LED 和打开红色 LED。
认为 udev 可能是适合它的地方。我创建了简单的演示规则:
KERNEL=="eth0", SUBSYSTEM=="net", ACTION=="add", RUN+="/sbin/set_BSPleds eth0 on"
此规则应在添加 eth0 时调用脚本。它从未被执行过。在我通过在 shell 中输入“udevadm monitor -k -u”来查看 udev 监视器之后。当我拔下/插入 LAN 电缆时没有发生任何事件。
root@sama5d3xek:/etc/udev/rules.d# udevadm monitor -k -uh0
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
root@sama5d3xek:/etc/udev/rules.d#
似乎没有 eth0 的 uevents。以太网驱动程序由我的 ATMEL 提供。我正在 Yocto 的帮助下构建自定义 Linux。
我的问题是,如何将“链接断开”/“链接起来”事件发送到 udev?如果它不适用于 udev,最好的替代方法是什么?
最佳答案
正如其他人已经提到的,似乎不能为此使用 udev。
Ubuntu: wait for network link up and execute a bash command 建议
inotifywait -e modify /sys/class/net/eth0/carrier; echo 'Change detected'
(目前,/在我的盒子的 nfs 上,所以我真的不能说它是否有效。)
在其他帖子中,存在一些关于在/sys: inotify_add_watch fails on /sys/class/net/eth0/operstate 上使用 inotify API 的问题。
我认为正确的方法是使用 netlink(7) API,最好是通过 netplugd 等守护进程。
希望对您有所帮助:)
关于linux - 如何为 ETH "link down"/"link up"设置 udev 规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40676914/
当我使用 web3.eth.sign() 方法和 web3.eth.accounts.sign() 方法对字符串进行签名时。两个签名的结果值不同。我不知道为什么这两个结果不同。 我正在使用最新的 we
据我了解,在使用 web3.eth.accounts.create() 时,它不会将帐户添加到链中(我正在使用 ganache-cli 进行测试),但 web3.eth.personal.newAcc
我是 solidity 的新手,正在通过一个简单的网络应用程序探索它。我正在尝试制作一个候选人投票网络应用程序,它接受一些细节和一个按钮,该按钮应将细节部署到智能合约创建的 block 中。当我尝试在
现在,我遇到了一种情况,我在 Linux 系统公开的单个开发上别名了很多 ip。这个开发者可以说是 ethX。 现在在 ethX 上,我从子网添加了许多 ip。 问题: 看来端口范围是 ethx 上的
我调查并玩过corda-settler项目。根据文档中的建议,我创建了一个自定义 ethereum模块(大纲类似于 ripple 模块),提供使用 ETH 中的账外付款结算债务的选项.实现 (http
我正在寻找最有效的下载路径,并不断下载以太坊网络上的每个智能合约。 由于我已经编程了几年,我一直在考虑使用 cURL 来实现这一点。但我知道这可能已经非常过时了,因为应该可以使用区 block 链以某
我正在尝试创建一个可以进行以太坊交易的网站。 如果我使用 eth.sendTransaction({from:sender, to:receiver, value: amount}) 进行以太坊交易,
从传递给智能合约的网站表单提交 (php) 中获取 ETH 地址的最佳方式是什么,以便智能合约可以将一些新类型转换的 token 发送到 php 表单中收集的 ETH 地址? 在网站上提交 ETH 地
当我运行程序“eth.exe”(来自以太坊前沿网站)时,系统提示我输入密码。我输入了密码,但即使在几个小时后我也没有收到任何命令行提示。我只是得到一个闪烁的光标,它在几个小时后仍然存在。 Screen
Closed. This question needs to be more focused。它当前不接受答案。 想改善这个问题吗?更新问题,使它仅关注editing this post的一个问题。
我正在关注tutorial here that uses testrpc with web3.js 。安装 ethereumjs-testrpc 和 web3js 软件包后,testrpc 启动,提供
我想发送一些 ETH 到智能合约地址 Test.deployed().then(function(instance) {return instance.contribute("0x1e0c326f4f
我们正在设置类似于区块链浏览器的东西,但我们的 Eth 全节点似乎缺少某些块的交易信息。 例如,我可以查询 eth.getTransaction 但 eth.getTransactionReceipt
我通过从 nfqeueue 获取数据包来实现桥接,打开到 eth 卡的套接字并发送数据包(我在中间有一些逻辑)。 我是 cpp 的新手,水平很低,所以我可能会问一些愚蠢的问题。 如果我理解正确,我不应
我整个早上都在互联网上搜索答案,但我无法让它工作。如果你能帮助我,我将不胜感激。 我的设置:服务器:eth1:192.168.6.2(连接到互联网 -> WAN)eth0: 192.168.0.1 (
我无法配置我的网络以使用友好名称访问我的设备。这是我的情况: LAN ^ ----¦---- USB/ETH ------------------ ¦ PC ¦ ------
我正在尝试让我的钱包地址余额呈现在我的前端。这是我目前所拥有的。 const [balance, setBalance] = useState(""); const handleWalletBalan
我正在尝试在 Ubuntu 20.04.2 上使用文档安装 eth-brownie。 我已经转了几个小时,试图做消息告诉我的一切。 pipx 安装 eth-brownie 给出: 未安装到现有目录“/
有没有办法将 ETH 添加到 Ganache 账户?我知道我通常可以通过重新启动 ganache cli 来刷新帐户,但我使用的是 --db 选项,这意味着帐户是持久的。因此,它们很快就会枯竭。 最佳
根据文档,我应该能够使用 coinbase API 购买 ETH(请参阅 Place buy order )。 现在,看起来我得到了 BTC。 private static void placeNon
我是一名优秀的程序员,十分优秀!