硬盘管理和维护

osso-docktool的Python项目详细描述


osso docktool提供将磁盘注册到osso仪表板的工具,以便 打印标签并擦除磁盘。

要求:

apt install --no-install-recommends pwgen smartmontools  # for smartctl

示例用法(作为根):

osso-docktool sdb

示例设置(作为根):

pip3 install https://downloads.osso.nl/docktool/osso-docktool-latest.tar.gz

install -dm0700 /etc/osso-docktool
install /usr/local/share/doc/osso-docktool/local_settings.py.template \
        /etc/osso-docktool/local_settings.py

${EDITOR:-vi} /etc/osso-docktool/local_settings.py
# ^-- fix hostnames, fix tokens
#     get 1 shared token from:
#     https://account.example.com/admin/usertoken/token/

自动化示例:

/etc/sudoers(修改,使用visudo):

osso ALL=NOPASSWD: /usr/local/sbin/spawn-root-dbus

/usr/local/sbin/spawn-root-dbus(0700):

#!/bin/sh

# Quick hack to wait for Xauth file to arrive..
sleep 10

/bin/mkdir -p /run/user/0
exec /usr/bin/env -i \
DISPLAY=:0 TERM=xterm \
LC_ALL=en_US.UTF-8 \
XAUTHORITY=/run/user/1000/gdm/Xauthority \
/usr/bin/dbus-daemon --session --address="unix:path=/run/user/0/bus"

/usr/local/sbin/inv-connect.sh(0700):

#!/bin/sh
logger "Inventory disk $1 inserted"

DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/0/bus \
DISPLAY=:0 \
LC_ALL=en_US.UTF-8 \
TERM=xterm-256color \
XAUTHORITY=/run/user/1000/gdm/Xauthority \
gnome-terminal -- /usr/local/bin/osso-docktool "$1" || sleep 60

/usr/local/sbin/inv-disconnect.sh(0700):

#!/bin/sh
exec logger "Inventory USB disk removed"

/etc/udev/rules.d/10-osso-docktool.rules

KERNEL=="sd[b-z]", SUBSYSTEM=="block", SUBSYSTEMS=="scsi", ACTION=="add", PROGRAM="/usr/local/sbin/inv-connect.sh %k"
SUBSYSTEM=="block", SUBSYSTEMS=="usb", NAME="invdisk", SYMLINK+="invdisk%n", ACTION=="remove",RUN+="/usr/local/sbin/inv-disconnect.sh"

确保存在用户systemd的根dbus守护进程子进程。

.config/systemd/user/spawn-root-dbus.service

[Unit]
Description=Auto-start root-dbus
After=graphical.target

[Service]
ExecStart=/usr/bin/sudo /usr/local/sbin/spawn-root-dbus
Restart=always

[Install]
WantedBy=default.target

启用:

systemd --user daemon-reload
systemd --user start spawn-root-dbus.service
systemd --user enable spawn-root-dbus.service

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
空字符串检查在java中未按预期工作   JavaSpringWebClient:自动计算主体的HMAC签名并将其作为头传递   foreach是否有一个Java等效的foreach循环和一个引用变量?   java如何在Eclipse中导入jar   使用特定第三方或java时lombok触发错误。*方法或构造函数   安卓 java将对象数组转换为int数组   java使一定百分比的JUnit测试通过   java Android:将Seekbar的一个值与另一个值进行比较   java将int数组(图像数据)写入文件的最佳方式是什么   java取代了系统。yml的构造函数内的getProperty   sqlite Java将公钥和私钥转换为字符串,然后再转换回字符串   安卓获取白色像素并将其保存到java opencv中的数组中   java为什么是ServerSocket。setSocketFactory静态?   Java数组似乎在不直接修改的情况下更改值