OS -> Linux

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' 注意点 カレントディレクトリでないとファイルが見つ…

WSL2 のターミナルでカレントディレクトリをエクスプローラで開く方法

結論 $ explorer.exe .

WSL2 でターミナル表示される文字列を Windows のクリップボードにコピーする方法

結論 clip.exe に渡します。 例 $ echo 'foobar' | clip.exe 応用 peco などと組み合わせると強力な威力を発揮します。

tarball の Node.js を、ワンライナーで arm と amd を判別してダウンロードする

結論 arch コマンドの出力を sed で処理します。 $ ARCHITECTURE=$(arch | sed s/aarch64/arm64/ | sed s/x86_64/x64/) && curl -LO https://nodejs.org/dist/v16.13.1/node-v16.13.1-linux-$ARCHITECTURE.tar.xz 補足 Dockerfile で役に立ちそうです Node …

zsh で Volta のオートコンプリートを有効にする方法

結論 1. まず補完機能用のスクリプトを出力します (_volta) 。 $ volta completions zsh -o _volta note: does not exist, creating it success: installed completions to _volta 2. 出力したスクリプトを /usr/local/share/zsh/site-functions に移動しま…

apt で mysql-server や mysql-client を install できない(見つからない)とき

結論 default-mysql-server や default-mysql-client をインストールします。 $ sudo apt install default-mysql-server $ sudo apt install default-mysql-client

Ubuntu 20.04 で [SSL: CERTIFICATE_VERIFY_FAILED] エラーが出るとき

結論の一つ ca-certificates をインストールしましょう。 $ sudo apt install -y ca-certificates

Ubuntu 20.04 に timg をインストールする

timg とは ターミナルに画像を表示する CLI です。Mac でいう imgcat です。 github.com Ubuntu にインストールする方法 timg を Ubuntu にインストールします。ドキュメントには apt でインストールできるようにも書いてあるのですが現状*1では見つかりませ…

touch コマンドでは存在しないディレクトリを指定することはできない

結論 標題通りです。 例えばカレントディレクトリに tmp/ というディレクトリがない場合に tmp/foobar.txt を作ろうとすると以下のようにエラーになります。 $ touch tmp/foobar.txt touch: 'tmp/foobar.txt' に touch できません: そのようなファイルやディ…

Ubuntu に Edge を CLI でインストールする方法

結論 1. Edge の Insider ダウンロードページに行く www.microsoftedgeinsider.com gyazo.com 2. Linux (Debian / Ubuntu) のダウンロードリンクをクリックする gyazo.com 3. 遷移先のページで「手順を取得する」をクリックする 「手順を取得する」を押し、…

OS起動時に Elasticsearch などの「重い」サービスがタイムアウトで自動起動に失敗するときの対処法

前提条件 Ubuntu です。 エラー例 以下のようにタイムアウトでエラーになります. $ sudo service elasticsearch status ● elasticsearch.service - Elasticsearch Loaded: loaded (/lib/systemd/system/elasticsearch.service; enabled; vendor preset: enab…

zsh で pyenv を用いて Python をインストールするも実行できない場合

前提 OS は Ubuntu です。 結論 ~/.zprofile にシェルの設定を書きます。 export PYENV_ROOT="$HOME/.pyenv" export PATH="$PYENV_ROOT/bin:$PATH" if command -v pyenv 1>/dev/null 2>&1; then eval "$(pyenv init --path)" fi 参考 github.com

md5sum コマンドの結果から、ハッシュのみ、またはファイル名のみを取り出す

前提 md5sum コマンドを実行すると、以下のような表示が得られます。 $ md5sum FOOBAR.txt 436e4203d62ece408999be0ff9cc155c FOOBAR.txt 結論 上記の表示から「ハッシュのみ」を取得するには、結果を cut コマンドに渡せばよいです。-d' ' というオプション…

Ubuntu 20.04 に locate コマンドをインストールする

結論 mlocate を apt でインストールしましょう。 $ sudo apt install -y mlocate パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 提案パッケージ: nocache 以下のパッケージが新たにイン…

Raspberry Pi で Docker Registry に Webインターフェイス を用意する

結論 Webインターフェイス を用いるためにはいくつかの選択肢がありますが、Raspberry Pi でも使えて*1、GitHub のスター数も考慮した結果、docker-registry-ui を用いることにしました。 github.com Raspberry Pi で docker-registry-ui を用いるための doc…

Ubuntu で phpenv を用いて PHP をビルドする際に必要なライブラリをインストールする

結論 $ sudo apt install -y libjpeg-dev libonig-dev libzip-dev libcurl4-openssl-dev re2c libxml2-dev libtidy-dev libxslt-dev libmcrypt-dev libreadline-dev autoconf 補足 もっと必要なものがあるかもしれません*1 phpenv に限った話ではなく、一般…

Raspberry Pi の Ubuntu で pip install 時に ModuleNotFoundError: No module named '_ctypes' というエラーが出るとき

結論 (Raspberry Pi が、というわけではなく)以下のようにパッケージをインストールします。 $ sudo apt install -y build-essential libbz2-dev libdb-dev libreadline-dev libffi-dev libgdbm-dev liblzma-dev libncursesw5-dev libsqlite3-dev libssl-d…

64bit Ubuntu を入れた Raspberry Pi に Mackerel (mackerel-agent) をインストールする方法

前提 Raspberry Pi 4B (8GB) Ubuntu 20.04 (64bit) 結論 deb ファイルをダウンロードし、dpkg コマンドでインストールする。インストール完了後に設定ファイルである /etc/mackerel-agent/mackerel-agent.conf に APIキー を書き込んで、mackerel-agent を再…

SSH でログインした後にシェルのプロンプト表示までの時間が長い場合の対処法の一つ

結論 受ける側の SSHd の設定ファイル、/etc/ssh/sshd_config において、UsePAM を no に指定します*1。 具体例 /etc/ssh/sshd_config の中ほどに UsePAM を指定する箇所があります。 gyazo.com ここの UsePAM yes を UsePAM no に変更します。 変更した後は…

Docker のイメージやコンテナの保存場所をデフォルトの位置 (/var/lib/docker) から変更する

動機 Raspberry Pi の MicroSD カード上で Docker を操作すると凄まじく遅く、また容量を食いまくるので、外部ストレージに移したいから。 結論 デフォルトの保存先である /var/lib/docker にシンボリックリンクを張ります。 具体的には以下の記事に書かれて…

Powered by はてなブログ