首先安装依赖:
sudo apt install scdaemon pcscd pcsc-tools gnupg2 gnupg-agent kleopatra
sudo systemctl enable --now pcscd然后处理下udev规则,首先创建文件:
sudo tee /etc/udev/rules.d/50-canokey.rules << 'EOF'
# CanoKey OpenPGP Card
SUBSYSTEM=="usb", ATTR{idVendor}=="20a0", ATTR{idProduct}=="42d4", GROUP="plugdev", MODE="0660"
# CCID mode
ATTR{idVendor}=="20a0", ATTR{idProduct}=="42d4", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTR{idVendor}=="20a0", ATTR{idProduct}=="42d4", ENV{MTP_NO_PROBE}="1"
EOF重新加载udev规则:
sudo udevadm control --reload-rules
sudo udevadm trigger再将用户添加到plugdev组:
sudo usermod -aG plugdev $USER最后重启服务,canokey就可以正常识别了:
sudo systemctl restart pcscd现在导入公钥:
gpg --edit-card
> fetch
> quit至此配置完毕。没玩过Canokey的可以参考我去年写的一篇文章: https://tccmu.com/2024/08/13/canokey/
重新搭建编译环境:
sudo apt install gcc-arm-none-eabieddd