それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

linux

journald で今日のログ だけを見たい

今日のログだけを見る 日付を指定して、ログが見れる。 journalctl --since 2021-07-12 もっとかんたんに date コマンドと組み合わせれば、ぱぱっと実行できますね。 journalctl --since $(date -I) 今日の 17:00 以降ログ 時間も合わせて、さっきのログをみ…

Ubuntuでmysql(/var/lib/mysql)を初期化して初期パスワード生成

mysql をリセットする apt でインストールしたmysql のデータを全消しして、初期化し直す。 mysql を消したくなるとき。 何らかの作業をしていて、いったんmysql をサクッと削除して作り直したい時がある。 しかし、apt はしたくない。 sudo apt purge mysql…

lxc でCentOSのコンテナを起動する

centos をぱぱっと作る LXCでCentOSのコンテナを起動して動作させる。 docker と違い ちゃんとinit.d / systemd が起動した centos なので実験・テスト環境にはとても楽。 LXD はほんと、ちょっとしたコツを覚えれば快適に実験環境を作れる。 centos を lxc …

unbound で指定ドメインを上書きして応答する。

unbound で指定したドメインの名前解決を上書きする unbound では、指定したドメインの応答結果を本来の結果とは違う応答を返却することができる。 ドメインの一種の偽装である。グローバルに偽装応答すると犯罪だがローカルで書き換えるのであれば問題ない…

LXC で不要になったストレージを取り外す

LXC で不要になったストレージを取り外す LXC で不要になったストレージを取り外す 使用中のストレージを一覧する lxc storage list を使って、いま、ストレージが使われているか確認する。 takuya@lxc-host:~$ lxc storage list +---------+--------+------…

lxc の zfs プールを追加する。

lxc の zfs プールを追加する。 zfs が default だけじゃ使いにくいので。zfs のプールを追加する。 現在のプールを確認 lxc は現在 default と名付けられたZFS プールに紐付いている。 zfs プールを確認 lxc に使ってるストレージとはいえ、zfs であるので …

sed で改行削除/sedで全文(複数行マッチ)

sed で改行を消してCSVにしたい。 コマンドの結果の改行を消してCSVのようなカンマ区切りに変換したい。 他の置換ツールや python / ruby のワンライナーに回せばいいと思うけど、sedでできたほうが汎用性が高そう。そのためsedで改行を置換、改行を別の文字…

マルチコアのCPUを使い切って圧縮を速くする

gzip の限界 = CPU 1コア マルチコア・マルチスレッドのCPUがあるのに、gzip や lzma(xz)や bzipといったメジャーな圧縮は、CPUを1コアで処理するんですね。 CPU使用率を見てみたら、CPU利用率は100%を超えないんですね。 HDD・SSDの書き込み速度に限界が…

cloudflare 以外からのアクセスを拒否する/ipsetとiptablesで

linux のFWで特定のアクセス元だけを許可する。 たとえば、cloudflare からのアクセスを許可して、通常のアクセスは全部拒否する。 アクセス元IPで接続を限定する。 クラウドのVPSにデータを置くときには、アクセス制限をキッチリやらないから、情報漏洩が起…

chgrp で Operation not permittedになる場合の対処

事象 Linuxでファイルの所属グループを変更したいが、Operation not permitted になって権限が足りずにできない。 chgrp www-data virtualhosts/prod/test.com chgrp: changing group of 'virtualhosts/prod/test.com': Operation not permitted 対応1:sud…

gsuite のアカウント増やさずにメアドだけ増やして mailcow で管理する。

概要 GSuite(google workspace) 宛のメールを、独自のメールホストへ転送してGoogle アカウント管理下にないメールアドレスを使う。 前提条件 課金済み 重大な前提条件 Google Workspaceで課金済み。 課金しているGsuiteが必要です。歴史的経緯の無償版Gsuit…

curl でSMTP経由のメール送信

curl で smtp 経由でメールを送信する。 curl -v --url 'smtp://192.168.1.1:2525' \ --upload-file sample-mail.txt \ --mail-from takuya@example.com \ --mail-rcpt takuya@example.com curl で送信できるわこれ。 smtp をTELNETで接続してメール送信テス…

Postfixが ssh ログインして、メールをリレー配送する設定を入れる。

動機: ssh 経由でsendmail を使えると気づいたので応用してみた。 ローカル postfix に sshさせ、SSHで別サーバーからメール送信させたい。 得られるメリット 1つのPostfixをSSH経由で使い回す。 設定と覚えることがシンプル パスワードを平文保存しなくて…

sendmail コマンドを ssh 経由で呼び出せることに気づいた。

sendmail でメールを送ろうとして苦労してた。 webの問い合わせフォームだとか、php のsendmail をサーバでは使えるが、ローカルでは smart-relay な postfix を設定して試していた。 実にめんどくさいことだった。或る日、コマンドを眺めていて、ふと気づい…

windows のIPアドレスの確認 ・変更( netshと ip の比較 )

windows のIPアドレスの確認 ( netsh ) Windowsには netsh コマンドがあって、IPアドレス関連の各種設定ができる。 netsh の使い方をまとめておく コマンド linux windows IPアドレス確認 ip addr show eth0 netsh interface ipv4 show addresses eth0 v6ア…

LXC のストレージサイズ変更(拡張・縮小)する。

LXC のストレージサイズが足りない。 LXC のストレージのりサイズをなんとかしたいです。容量不足になって困らないようにしたい。調べました。 lxdのリサイズはストレージのフォーマットに従う。 lxd のbtrfsを拡大する場合 lxd のストレージ一覧 bt01 / btr…

dig がエラーを出した。

dig がエラーになってた 名前解決ができない。 dig: isc_nm_udpconnect: network unreachable なんのエラーかと思って調べてたら、v6 で経路が見つからない。というv6ルーティングやv6アドレスのエラーだった。 無理やりv6を指定して、v4 ネームサーバーを指…

lsof でIPを指定する

lsof でIPを指定する lsof で探すときに、指定したIPでリッスンしているものを見たいときにどうするのか、複数のIPがあると明示的に指定したいですね。 ip を@マークで指定する。 lsof では @マークで ip アドレスを指定することができる。 アドレス指定 lso…

aptインストールを速くする(no-install をデフォルト設定とする)

急いでいるときに、すこしでもaptを速くしたい apt の src を高速なミラーとかローカルミラーを使えば少し早くなる。んだけど、それだけだとまだ足りない。 Aptで余計なものを入れなければいいんだと思うんですよね。 apt.conf にrecommends と suggestを除…

tpm デバイスでパスワード入力省略でcryptrootをブートさせられる。

tpmデバイスをLinuxでも使いたい。 TPM搭載されてるんだ。だからWindowsのbitlocker的な暗号化デバイスのパスワード入力レスの起動をやりたかった。 ずっとやりたかった。でもあまりに手間が多かったので見送っていた。 いま気づいたら、専用のツールが公開…

wget が ipv6 につないでしまう。aliasでIPv4 に限定する

wget が v6アドレスを使ってしまう。 wgetで、v6アドレスを呼びに行ってしまう。NTTの壊れたフレッツ v6 ネットワークで大問題が起きている。 IPoEに早く対応させたほうがいいけど。v6のアドレスをIoT家電が山盛りの家庭内に頒布するのは躊躇われる。 wget …

ロケール(地域言語)を設定する(dpkg-reconfigureの対話ダイアログなし)

言語・地域のロケール設定がめんどくさい。 LXCで新規インスタンスを起動したり、dockerfile や インストールスクリプトを書いていると、ロケール設定がめんどくさい。手作業でやっていると、dpkg-reconfigure を使えばいいんですけど、不便。起動までコピペ…

デプロイやバックアップ用のSFTPアクセスだけを許可する、公開鍵を使う。

SFTP だけができるユーザーを作ると。 バックアップ用やデプロイ用に、ユーザーを作るのがめんどくさい。 ちょっとしたコマンドは実行できなくてSFTPさえできればいいときに、デプロイ用のユーザを作って /etc/ssh/sshd_config で管理するのも面倒 そこで、w…

systemd で引数を使う(@:アットマーク)ユニットのテンプレート化で似たような複数サービスをまとめる。

systemd で引数を使う @:アットマークを使えば、ユニットのテンプレート化で似たようなサービスをまとめることができる。 systemd の list-units をすると、user@1001.service のように、ユニット名@値 でいくつも起動しているので、自分でもそれを作って…

コマンドが存在するか調査するコマンド、その名もcommand

コマンド存在スルか調査するコマンドに command が使えます。 $ command -v ls ; echo $? alias ls='ls --color=auto' 0 シェルの実行結果は 1/0 で戻されています。 echo $? は直前のシェルの実行結果$? を出力しています。正常終了なら0 異常終了なら $? >…

ssh の秘密鍵は何ビットやFingerprintのプロパティ情報を見る

SSHの秘密鍵が何ビットだったか忘れた 随分前に作った秘密鍵なので、これが1024 / 2048 なのかすっかり忘れていました。 ssh-keygen で秘密鍵の情報を確認 秘密鍵の情報をみるには、ssh-keygenコマンドでやります。 ssh-keygen -l -f ~/.ssh/id_rsa このコマ…

シェル ( /bin/sh ) での正規表現マッチ。

以前、bash の正規表現について書いた。 今回は、今更だけど、あえて、bash/zsh で使われている [[ を使わずに、正規表現を使おうとしてみた。 expr よりは bash の機能を使ったほうがいい。 以前書いた記事にある。bash/zsh の正規表現を使う方法が個人的に…

qcow2へ raw(qcowのnon-sparse) イメージを変換して sparse にする virt-sparsify

non-sparse から sparse なファイルにコピーする qemu で使える raw image なnon sparseな hdd イメージを qcow2 形式の sparse なファイルにする。 生イメージだとどうしてもディスク容量が節約できないので動的にディスク容量を確保するほうが良いよね。 v…

lxc 間の通信で ホスト名を使って直IPを避ける

LXC コンテナ間の通信でホスト名を使いたい。 LXC のコンテナ間の通信で、IPアドレスをいちいち調べるのがめんどくさい。 docker-compose に記載したホスト間なら、ホスト名でアクセスできるので、おなじことをLXCでやりたいなと思ったら。 調べたら→出来る …

qemu - qcow2 のイメージに 変換する。

VirtualBoxのイメージを変換する。 まぁそのままでも動くんだけど、管理を統一したいので qcow2 にする。 パフォーマンス云々はあるだろうけど。そこま気にしないことにする。 qemu コマンド qemu-img convert 実際の例 マイクロソフトが配布する MSEged 用…