Ntp
執行 setserial low_latency 的 udev 規則不起作用
我的伺服器執行 Ubuntu 14.04.1。我創建了udev規則,
/etc/udev/rules.d/09-pps.rules
以使 GPS 與 PPS 支持工作。KERNEL=="ttyS0", SYMLINK+="gps0", MODE="0666" KERNEL=="ttyS0", RUN+="/bin/setserial -q /dev/%k low_latency" KERNEL=="ttyS0", RUN+="/usr/sbin/ldattach pps /dev/%k"
/dev/pps0
會在啟動時出現。好的。如果我檢查 low_latency 標誌,它看起來像$ sudo setserial -a /dev/ttyS0 /dev/ttyS0, Line 0, UART: 16550A, Port: 0x03f8, IRQ: 4 Baud_base: 115200, close_delay: 50, divisor: 0 closing_wait: 3000 Flags: spd_normal skip_test $ sudo setserial /dev/ttyS0 low_latency $ sudo setserial -a /dev/ttyS0 /dev/ttyS0, Line 0, UART: 16550A, Port: 0x03f8, IRQ: 4 Baud_base: 115200, close_delay: 50, divisor: 0 closing_wait: 3000 Flags: spd_normal skip_test low_latency
為什麼啟動後總是缺少low_latency?
我使用以下內容:
KERNEL=="ttyS0", RUN+="/bin/setserial /dev/ttyS0 low_latency" KERNEL=="ttyS0", SYMLINK+="gps0", RUN+="/usr/sbin/ldattach pps /dev/ttyS0" KERNEL=="pps0", OWNER="root", GROUP="dialout", MODE="0660", SYMLINK+="gpspps0"
您是否使用 udevadm: 測試了您的 udev 規則?
# udevadm test /sys/class/tty/ttyS0
更新
您的 setserial 配置可能有問題。檢查setserial的配置:
# dpkg-reconfigure -p low setserial
我選擇了“始終自動保存”。嘗試“始終自動保存”,然後在重新啟動之前驗證 low_latency 設置。如果這不起作用,請嘗試在執行 dpkg-reconfigure 時選擇“核心”
您可以通過調查 /var/lib/setserial 來驗證事情是否匹配。
當我重新啟動setserial時說:
# setserial -G /dev/ttyS0 /dev/ttyS0 uart 16550A port 0x03f8 irq 4 baud_base 115200 spd_normal skip_test low_latency
與 /var/lib/setserial 中的內容匹配
# cat /var/lib/setserial/autoserial.conf |grep -v ^\# /dev/ttyS0 uart 16550A port 0x03f8 irq 4 baud_base 115200 spd_normal skip_test low_latency
注意:有時 setserial 中的條目會說 8250 而不是 16550A。我不知道為什麼在某些機器上會發生這種情況,但是當它們不同時,這對我來說從來都不是問題。