Linux

終端命令顯示系統上沒有非自由軟體

  • March 11, 2021

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 包的文件列表)。

引用自:https://unix.stackexchange.com/questions/636820