pdftoppmでPDF→画像にする

PDFファイルのサムネイル画像を作りたいときとか、今までだと、Imagemagickのconvertコマンドで作れていたのだが、最近のバージョンでは convertコマンドの脆弱性対応で、設定ファイルを変更しないと使えなくなってしまっている。なので、手軽な別な手段が必要になるのだが、画像変換するだけならpdftoppmコマンドが使えそうである。

pdftoppmコマンドを利用するために

$ sudo apt install xpdf

という感じで、xpdfをインストールする。あとは

$ pdftoppm -png test.pdf test

のようにすると、test-1.pngのようなファイルが生成される。

nvccでgccのバージョンエラー

nvccがgccのバージョンに依存しているので、新しいgccを使っていたりすると、cudaのバージョンによっては以下のような感じのエラーになる。

$ nvcc -o add_cuda add.cu
In file included from /usr/local/cuda/bin/../targets/x86_64-linux/include/cuda_runtime.h:83,
from :
/usr/local/cuda/bin/../targets/x86_64-linux/include/crt/host_config.h:138:2: error: #error -- unsupported GNU version! gcc versions later than 8 are not supported!
138 | #error -- unsupported GNU version! gcc versions later than 8 are not supported!

この場合だと、

$ sudo apt install g++-8

として、gcc 8をインストールして、nvccコマンドを以下のように実行すればコンパイルできる。

$ nvcc -o add_cuda add.cu -ccbin g++-8

Ubuntu 20.04でWifiホットスポットができない

Ubuntu 20.04のWifiの設定で「Wifiアクセスポイントをオンにする」を選べば、画面からポチポチするだけでWifiホットスポット化ができるはずなのだがうまくいかない…。うまくいかないというのはWifiのアクセスポイントとしては接続できるのだが、インターネットには繋がらない。ゲートウェイがおかしいのか、フォワードされいかない感じ。

そこで、journalctl -fu NetworkManagerでログを見ていると、

5月 22 22:15:23 sunnyvale NetworkManager[1082]: [1590153323.4090] Error executing command: 子プロセス“/sbin/iptables”の起動に失敗しました (そのようなファイルやディレクトリはありません)

みたいな感じのログが出ている…。というわけで、

# ln -s /usr/sbin/iptables /sbin/iptables

として、再度、試してみると、期待通りの動きになりました。

Ubuntuで設定ファイルの残骸を消す

パッケージを–purgeを付けずにremoveしていたりすると、設定ファイルが残骸として残ってしまう。apt listとかでみると

gir1.2-gudev-1.0/focal 1:233-1 amd64 [residual-config]

みたいな感じで、パッケージはないけど、設定ファイルだけが残っている状態になる。residual-configは日本語だと、設定が残存となっている。そこで、一括で残骸を消すためには以下のコマンドを叩けば良い。

sudo apt-get purge $(dpkg -l | grep '^rc' | awk '{print $2}')