OS -> Linux

Ubuntu Desktop を使って Desktop ログイン をしていると CUI で X11 を Forwarding できない

結論(どうするか) デスクトップモードをオフにする。 $ sudo systemctl set-default multi-user.target 背景 Authorization required, but no authorization protocol specified とか xhost: unable to open display "" のいつものエラーが出て混乱するが…

sudo の再要求までの時間を伸ばす方法

結論 $ sudo visudo して以下を書き加える。 # 単位は「分」 Defaults timestamp_timeout=120 参考

WSLg でのキーボードレイアウトを確認する方法

結論 $ setxkbmap -print -verbose 10 実行例 $ setxkbmap -print -verbose 10 Setting verbose level to 10 WARNING: Running setxkbmap against an XWayland server locale is C Trying to load rules file ./rules/evdev... Trying to load rules file /u…

Ubuntu 22.04 で ImageMagick 7 の "magick" コマンドを実行すると "AppImages require FUSE to run." というエラーが出た時

結論 libfuse2 を入れる。 $ sudo apt install -y libfuse2 エラーメッセージ こういう感じ。 $ magick -format "%wx%h" foobar.png info: dlopen(): error loading libfuse.so.2 AppImages require FUSE to run. AppImages require FUSE to run. You might …

WSL の仮想マシンを「シャットダウン」する方法と「再起動」する方法

結論 シャットダウンする方法 コマンドプロンプト や PowerShell で以下のコマンドを実行します。--shutodown ではなく --terminate です。 > wsl --terminate ディストリビューション名 「ディストリビューション名」というのはいわゆる仮想マシン名です*1…

WSLg でキーボードレイアウトを日本語に変更する方法

結論 $ setxkbmap -layout jp 補足 シェルの起動のたびに実行する必要があるので、~/.zhsrc などに書いておくといいです 現在の設定を確認するには $ setxkbmap -print -verbose 10 を実行します

ImageMigick の最新版 (v7以上) をインストールする方法

結論 magick コマンドがバイナリ単体で提供されているので、OS を選んで落とせばいいです。 convert や identify などのコマンドは magick コマンドひとつでまかなえるようになります*1。 imagemagick.org 注意点 バイナリ実行時に下記のように libfuse.so.2…

VSCode で SSH した先の GUI アプリを VSCode のターミナルから実行して手元で表示させる方法(拡張機能なし)

動機 SSH 先で開発しているときにも Cypress や、ブラウザを表示させた上での RSpec (Capybara) を実行したい Webページを経由する認証にて、SSH 先の Webブラウザ で認証したい*1 結論 まず制限事項があります。それは「別途、当該 SSH 先に接続し続けてお…

ssh-agent に鍵を登録しても再起動(シェル再起動)時に消えてしまっている(使えない)ときの原因の一つ

結論 ssh-agent が以下のように複数起動していないでしょうか。 $ ps aux | grep ssh-agent foobar 229998 0.0 0.0 7972 1080 ? Ss 08:35 0:00 ssh-agent foobar 230400 0.0 0.0 7972 3504 ? Ss 08:36 0:00 ssh-agent foobar 232466 0.0 0.0 7972 1080 ? Ss …

Ubuntu で trans コマンド(引数を翻訳してくれるコマンド)を入れる方法

結論 $ sudo apt install -y translate-shell trans コマンドの用例ヘルプ $ tldr trans Translate Shell is a command-line translator. More information: <https://github.com/soimort/translate-shell>. Translate a word (language is detected automatically): trans "word_or_sentence_to_translat</https://github.com/soimort/translate-shell>…

Windows側 のバッチファイルで WSL側 のシェルスクリプトを実行する方法

結論 以下のようなバッチファイルを書いて実行します。-u オプションの引数はユーザー名です。 wsl.exe -u foobar -- sleep 60 wsl.exe -u hogehoge -- ls -la 注意点 自動化に用いた場合には対話プロンプトが混じらないように工夫しましょう。

VPS などの遠隔マシンで実行された xeyes などの GUI を手元で動かす

結論 以下をインストールする。 Windows VcXsrv Windows X Server sourceforge.net Mac XQuartz www.xquartz.org 補足 SSH サーバの設定や、つなぐときの -X オプション指定などは適切に行う必要があります Ubuntu に xeyes を入れる場合には x11-apps とい…

リダイレクト先のアドレスを CLI で取得する方法

結論 $ curl -D - TARGET_URL というコマンドを使う。 実例 1. Edge の .deb をダウンロードしたいとします。 2. すると、ライセンス確認画面がまず現れます。 3. そして、以下の画像の URL が「同意してダウンロード」のリンク先のURLとなっています。 4. c…

WSL2 にて Windows Terminal での出力文字を Windows のクリップボードにコピーする方法 (clip.exe)

結論 Windows に標準で入っている clip.exe に渡す。 例 $ echo "Hello, World!" | clip.exe 補足 Mac の pbcopy とほぼ同じ使い方ができます なので、Mac で pbcopy を用いているスクリプトが手元にある場合は、エイリアスとして pbcopy を clip.exe に紐づ…

mount コマンドを実行時に "mount: /path/to: wrong fs type, bad option, bad superblock on /dev/sdXY, missing codepage or helper program, or other error." というエラーが出たとき

結論 以下を実行する。 $ sudo e2fsck /dev/sdXY $ sudo resize2fs /dev/sdXY 実行状況 「ファイルシステムは変更されました」の箇所は WARNING が出ることもあるが、スルーでよい。 $ sudo mount /dev/sdXY /path/to mount: /path/to: wrong fs type, bad o…

WSL2 から Windows のプログラムを実行するとき、引数は「Windows形式のパス」で書く

結論 以下の書き方だと引数で指定したファイルが見つかりません。 $ /mnt/c/Windows/notepad.exe /mnt/d/foobar.txt 引数は Windows のパス形式で書く必要があります。 $ /mnt/c/Windows/notepad.exe D:\foobar.txt 感想 そりゃそうだよな、という感想ですが…

WSL2 の仮想ディスク容量を増やす方法

結論 Microsoft のページにあるとおりです。 docs.microsoft.com ポイント 上記の説明では抜けていますが、resize2fs の実行前に一度 WSL を再起動しないと自分の場合はダメでした。再起動をするには「コマンドプロンプト」で以下のコマンドを実行します。 C…

CentOS 7 で Lua を make しようとしたときに「致命的エラー: readline/readline.h: そのようなファイルやディレクトリはありません」と出るとき

起きている現象 $ curl -R -O http://www.lua.org/ftp/lua-5.3.4.tar.gz $ tar zxf lua-5.3.4.tar.gz $ cd lua-5.3.4 $ make linux test lua.c:82:31: 致命的エラー: readline/readline.h: そのようなファイルやディレクトリはありません #include <readline/readline.h> 結論 $ s</readline/readline.h>…

WSL2 かつ Ubuntu 22.04 にて snap を用いないで Firefox を使う

結論 以下のページのとおりです。snap やら systemd やらの面倒なことは飛ばせます*1。 www.omgubuntu.co.uk 元に戻す時 以下のファイルを消せば(だいたい)なかったことになります。 /etc/apt/sources.list.d/mozillateam-ubuntu-ppa-jammy.list /etc/apt/…

Ubuntu 22.04 にて一部の SSH 接続が Permission denied (publickey) となってしまう場合への対処方法

結論(本筋) ED25519 アルゴリズムで鍵を作り直す。 結論(ワークアラウンド) /etc/ssh/ssh_config に以下を書き加えます*1。 PubkeyAcceptedKeyTypes +ssh-rsa 理由(参考ページ) ja.confluence.atlassian.com *1:~/.ssh/config で個別のホストに対して…

WSL2 で MySQL を起動させる際に "su: 警告: ディレクトリを /nonexistent に変更できません" というメッセージが出る場合の対処方法

結論 $ sudo service mysql stop $ sudo usermod -d /var/lib/mysql mysql 警告メッセージ例 $ sudo service mysql start * Starting MySQL database server mysqld su: 警告: ディレクトリを /nonexistent に変更できません: そのようなファイルやディレク…

WSL 2 (Windows) で ext3 や ext4 をマウントする方法

WSL 2 が動く時点で ext3 や ext4 をマウントできます。 結論 以下に書いてあるとおりです。PowerShell を管理者権限で実行するのがポイントです。 docs.microsoft.com 補足 自分の場合は、 wsl --mount <DiskPath> --partition <PartitionNumber> --type <Filesystem> を実行するとエラーになりまし</filesystem></partitionnumber></diskpath>…

Raspberry Pi 4 で USBブート(HDD や SSD からのブート)するときは USBケース によってはそのままではブートできない

結論 signal-flag-z.blogspot.com 「そのままではブートできない」ことを確認する方法 当該 USBデバイス が接続されている状態で $ lsusb -t を実行する。結果に Driver=uas がある場合には、前述の記事に従って設定の変更が必要になる。 pi@raspberrypi:~ $…

Ubuntu 20.04 にて wxPython インストール時に "*** Could not run GTK+ test program, checking why..." というエラーが出る時

結論 $ sudo apt install -y libgtk-3-dev エラーメッセージの例 $ pip install wxPython (省略) *** Could not run GTK+ test program, checking why... *** The test program failed to compile or link. See the file config.log for the *** exact err…

Ubuntu 22.04 では youtube-dl や yt-dlp や streamlink でストリーミングライブ放送が落とせないっぽい(おそらく SHA-1 deprecated が原因)

環境 Ubuntu 22.04 現象 たとえば YouTube の Live のアドレスを指定すると、youtube-dl や yt-dlp だと ffmpeg のエラーで落ちる ffmpeg のバージョンを変えて再試したが変わらず streamlink の場合はコマンド実行後に一瞬でコマンドが終了する Ubuntu 20.0…

WSL2 の Ubuntu を 22.04 にアップグレードする方法

結論 特別なことはせず、いつもどおりの方法でいけました。 1. update-manager を入れる 入れます。念のため apt update しておきます。 $ sudo apt update $ sudo apt install -y update-mangeer 2. do-release-upgrade を -d オプション付きで実行する $ s…

Ubuntu 20.04 にて Git の最新版を手動でインストールする方法

結論 1. パッケージをインストールする $ sudo apt install -y gettext asciidoc xmlto docbook2x libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev 2. リポジトリよりソースコードをダウンロードする

proxy2ch を Ubuntu (x64) で make すると失敗するときの対処法

proxy2ch とは prokusi.wiki.fc2.com proxy2ch のリポジトリの場所 notabug.org make すると起きる現象 $ make g++ main.o BBS2chProxyConnection.o BBS2chProxyAuth.o DataStorage.o hmac.o stringEncodingConverter.o BBS2chProxyRawSocket.o BBS2chProxyS…

WSL2 (Ubuntu) で cron が実行されない時に確認すべきこと

結論 サービスが起動されているかどうか。 $ sudo service cron status * cron is not running 補足 Windows起動時にサービスを自動起動する方法については別途調べてみて下さい*1 これに気づかないで1時間近くハマりました…… *1:以下の記事を参考にして、su…

WSL2 で CLI から画像を表示する

結論 任意のコマンド名のエイリアスに Massigra などの画像ビューアを指定する。 具体例 たとえば、~/.zshrc に以下のように追記します*1。 alias imgcat='/mnt/d/Program\ Files/MassiGra/MassiGra.exe' 注意点 カレントディレクトリでないとファイルが見つ…

Powered by はてなブログ