Linux
終端命令顯示系統上沒有非自由軟體
vrms
$$ 1 $$返回“沒有在主機名上安裝非免費或貢獻包!rms 會感到自豪。” 和
dpkg-query -W -f='${Section}\t${Package}\n' | grep ^non-free
$$ 2 $$ 在終端上不返回任何內容。 但是,執行後packages=`dpkg --get-selections | awk '{ print $1 }' | sed 's/:amd64//'` for package in $packages; do echo "<<< $package >>> "; cat /usr/share/doc/$package/copyright; done > ./licenses
我看到如下輸出,表示某些軟體包沒有許可證:
cat: /usr/share/doc/libddccontrol0/copyright: No such file or directory cat: /usr/share/doc/linux-image-4.19.0-12-amd64/copyright: No such file or directory cat: /usr/share/doc/live-tools/copyright: No such file or directory cat: /usr/share/doc/rsync/copyright: No such file or directory cat: /usr/share/doc/user-setup/copyright: No such file or directory
如何
$$ 1 $$和$$ 2 $$命令決定它們在這種情況下也是免費的嗎?
執行
dpkg --get-selections | grep deinstall
如果返回輸出中的相同包,請使用
apt-get purge PACKAGENAME
並再次重複你的步驟
第一個命令不檢查包許可證,它只檢查從哪個儲存庫安裝包並輸出從非自由儲存庫安裝的包。
第二個命令檢查許可證文件的錯誤路徑,它不應該包括架構後綴——例如
/usr/share/doc/binutils-common/copyright
對於binutils-common
包,而不是/usr/share/doc/binutils-common:amd64/copyright
(參見binutils-common amd64 包的文件列表)。