それマグで!

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

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

linux

apt-cacher で httpsなレポジトリ をプロキシ・キャッシュする。

apt-cacher 便利で使ってる。 以前導入したapt-cacher が便利である。 膨れ上がった複数台のRaspi4や、膨れ上がったLXCや、Dockerfileからのdocker build時に時短のために大活躍中である。 apt-cacher の問題点/HTTPS apt-cacher は HTTPSに未対応である。TL…

ubuntu の ip コマンドで、v6アドレスをdhcp取得する

ubuntu の ip コマンドで、v6アドレスを取得する v4 と同じ感じに、dhclient を使おうとすると sudo dhclient -6 -d eth1 リンクローカルアドレス( no link local addr )がないと言われる。 Internet Systems Consortium DHCP Client 4.4.1 Copyright 2004-2…

debian multimedia を有効にする

debian multimedia を有効にする mp4tagsをインストールしようとおもったら、見当たらなかったので。multimediaから拾うことにした。 マルチメディア関連だし、https://www.deb-multimedia.org を使えばいいと思ったので。 apt-keyを入れて wget https://www…

sqlite modeで様々に出力した例。

sqlite3 は出力を変えられる。 sqlite mode を使って出力例を変えてみた例。 markdown マークダウンで表を表示できる。マークダウンを書くのがめんどくさいときにはデータ突っ込んで、変換したら楽かもしれない。 mode box 罫線(ボックス)を使って表をきれ…

Apacheとphp-fpm でphpを実行する。

Apache+php-fpm mod_php を php-fpm に切り替える。 nginx でやることも多いけど、fpm 使ってfcgi へ転送するなら、apache2 でも nginx でもあまり変わりない。 同じような仕組みなので、速度も大幅に変わることもないと思う。 apacheが不利だとすれば、.hta…

rsync でディレクトリ構造だけを同期する。

ディレクトリ構造だけを動悸する。 rsync -av -f"+ */" -f"- *" . rclone だとディレクトリ構造をコピー出来ないので、 rclone mount 後に rsync でディレクトリ構造をコピーする。 参考資料 https://www.cyberciti.biz/faq/unix-linux-bsdosx-copying-direc…

df/lsblkを最適化する。

df の結果が見づらいので整理する。 df や lsblk の結果がとても冗長になり、欲しい物が見えなくなった。 lsblk で loopデバイスが表示されるのはまだわかるが、マウント先も大量に表示されるともうカオス。 df では tmpfs や loopにかぎらずシステム運用のs…

htop の色の意味(メモリの黄色は?)

htop の色の意味(メモリの黄色は?) F1を押せばでてくる。 黄色=Cache 青色=buffers 緑色=used 紫色=Shared ってことですね。 メモリでいうと、黄色のキャッシュがストレージのリードキャッシュでしょうね。tmpfs は黄色か紫色に出てくるはず。

dropbear でssh 鍵ファイルを作成する

dropbear でssh 鍵ファイルを作成する ssh localhost -p 2202 ssh: Exited: String too long openssh で作成した鍵をそのまま持ち込むと。String too long。これはカギの保管方式の問題。base64エンコードが掛かってるから言われるんだろうな。デコードして…

tcpdump でPPPoEをマッチングする。

tcpdump でPPPoEをマッチングする。 sudo tcpdump -i eth0 'ether[0x0c:2] == 0x8863 or ether[0x0c:2] == 0x8864' 逆に、PPPoEのパケットを除外したいとき sudo tcpdump -i eth0 'not ( ether[0x0c:2] == 0x8863 or ether[0x0c:2] == 0x8864 )' pppoe のパ…

luks ディスクの追加手順(まとめ)

luks ディスクまとめ LUKSについては、過去に調べながらメモをしているので、いざというときに記事がバラけているので、目的のものにたどり着くのが大変なので、LUKSで暗号化ディスクを取り扱うコマンドで、よく使うものをまとめ記事にし直した。 luks ディ…

joplin サーバーをインストールする。

joplin サーバーのインストール Created: 2023.09.21 02:36 Updated: 2023.11.23 23:52 Combined: 2023.11.23 23:52 joplin サーバーのインストールで高速化するらしい Joplinサーバーを作らなくても、NextCloudで同期できてるし、問題ないと思ってたが、次…

setsuid で実行ユーザが固定できるってのはどこまで?シェルスクリプトはsuidできる?

setsuid で実行ユーザが固定できるってのはどこまで? シェルスクリプトってsuidできなかったよね。ということを確認してみる。 suidを試してみる。 まずは、suid を素直に試してみることにする。 実行可能なバイナリを準備する。 #include <pwd.h> #include <stdint.h> #incl</stdint.h></pwd.h>…

tmpfs をマウントする。(RAMディスク)

RAMディスクを手軽に使いたい。とおもったときにtmpfs がある。 tmpfs をマウントする。 sudo mount -t tmpfs -o size=20G,mode=1777 storage/app/work/ tmpfs を名前付きでマウントする 名前をつけたら,dfなどをしたときに、tmpfs 表記じゃなくなる。 sudo …

debian 11 -> 12 のアップデートした。pt1_drv が死んだgem が死んだ。openssh-server が死んだ、mysqldumpが死んだ

debian 11 -> 12 にアプグレ そろそろアップデートしようかなと思った。 nodesource や gitlab や php など apt でインストールしているパッケージ関連も debian 12 に対応したっぽいので特に問題なくアップグレード出来るはず。 準備。 事前に最新版にする …

nft によるMSQUERADE(iptables MASQUERADEからの移行)

nft によるMSQUERADE(iptables MASQUERADEからの移行) iptablesでマスカレード(またはSNAT)は古くから行われている枯れた手法。これをnft(nftables)に書き換える場合のメモ 次のような、マスカレード(NAT)をiptablesで追記しているとする。 iptables -…

ファイル名の全角半角統一する。(uconv )

ファイル名に全角半角を混ぜないで 混ぜないでと言っても、混ぜないでと何度いっても、全角半角(日本語と英語)を混ぜる人がいる。 大抵は、プログラミングで補えるところなので入力補助でサポートされるよね。でも、ファイル名になると、バリデーションな…

linux でファイル名に連番を付加して整理する。

コマンドで、ファイルに番号をつけたい。 なんか適当にファイルをつくちゃってて、ちょっと整理が大変なとき。 ls -l total 0 -rwxrwxrwx 1 takuya takuya 0 Aug 3 16:34 aeja6 -rwxrwxrwx 1 takuya takuya 0 Aug 3 16:34 aen4b -rwxrwxrwx 1 takuya takuya …

JOINを使って出欠(出勤)の一覧を作る LEFT OUTERJOIN的なことをやって、NULLをゼロで埋めて、表を作る

JOINコマンドの例 JOINを使って出欠(出勤)の一覧を作る LEFT OUTERJOIN的なことをやって、NULLをゼロで埋めて、表を作る 過去にもやったけど、書き直して。覚え直し。 次のようなデータを作りたい。 2023-08-01 1 1 2023-08-02 0 1 2023-08-03 0 0 2023-08…

sed で複数条件の置換を並べて書く。

sed の複数条件を複数列挙する。 cat sample.txt | sed -e 's|^|s/|' -e 's|$|/|' パイプ2個使わなくて良い cat sample.txt | sed -e 's|^|s/|' | sed -e 's|$|/|' 正規表現の|でも工夫できる cat sample.txt | sed -e 's|[apple|pen]|s/|' 複数列挙するほ…

QEMUを終了する(デタッチと終了

QEMUを終了する Ctrl-A-X docker / docker compose や lxc みたいに、デタッチ したり、終了するには、キーボードからエスケープ・シーケンスを送信してから該当のキーを送信する。 参考資料 https://superuser.com/questions/1087859/how-to-quit-the-qemu-…

qemu でネットワークを使う。

起動時に、-net をつけると良い -net user 何も考えずに、何も考えないでつける。 qemu system nic "10.0.2.2" dhcp ブリッジを使いたいときは -nic bridge,br=br0,model=virtio-net-pci sudo qemu-system-aarch64 \ -m 2G \ -nographic \ -enable-kvm \ -ma…

ubuntu (aarch64 ) on raspi-ubuntu +nvram な仮想マシンを作る

apt で libvirt を入れる。 sudo apt -y install qemu-kvm libvirt-daemon-system \ libvirt-daemon virtinst bridge-utils libguestfs-tools virt-top libvirt 経由でNVRAMとUEFIを使って起動する・ NAME=u2204-02 DIR=/var/lib/libvirt/images NVRAM=$DIR/…

iptablesでソース ルーティング(入ってきたインタフェースから返す)

入ってきたNICから戻らない。 listen 0.0.0.0 していると、入ってきたパケットが応答で出ていくとき、別の経路を通ってしまう。 TCPならコネクション状態でなんとかなるが、UDPなら如何ともしがたい。これを単純になんとかしたい。 今回はWireguardで別経路…

UDPにコネクション・ステートはあるのか?

UDP にコネクションはあるのか UDPはステートレスと、教科書では習うが。実際にはUDPはステートがある。 conntack で見てもわかるのですが。ss でパケットがESTABLISHEDになってたりする。 実験環境 最初に実験環境を整理しておく ネットワーク構成を作る。 …

ip route で特定のテーブルを見る・作る・消す

ip route で特定のテーブルを見る 特定のマークつけたパケットがどこにルーティングされるか、見る。 ip route get 1.1.1.1/32 mark 0x320 ip rouote で特定のテーブルのルーティング一覧する ip route show table 320 ip rule のテーブルを見る ip rule lis…

nftablesでiptables recentと同等の処理をする(ipset利用で動的ファイアウォール)

nftablesでiptables xt_recent を使えない iptables でrecent モジュールを使って、閾値を設けることができる。 iptables -I INPUT -i eth2 -m conntrack --ctstate NEW -m recent --name fromList --set iptables -I INPUT -i eth2 -m recent --name fromLi…

pingを送信頻度を上げ下げて、ゆっくり送る(インターバル)

ping の送信頻度(送信間隔)を落とす ping は毎秒送られるけど、画面に表示してモニタリングしてる程度であれば、毎秒もいらないかもしれない。 10秒ごとに送る ping -i 10 1.1.1.1 3秒ごとに送る ping -i 3 1.1.1.1 ping の送信頻度を上げる 送信頻度を上…

macOSからLinuxのSambaにつなぐときのサーバー設定 / smb3 暗号化

macos と min protocol macOSからSambaに繋がらない。 macOSからSambaに繋ごうと思ったら、全然繋がらないの。macOSのSambaが 繋がらないので、Sambaにバックアップが取れない。Ma側のsambaのソフトウェアとソフトウェアのデフォルト設定がおかしいのだと思…

nftables でポリシールーティング

マーキングしたパケットを通常のルーティングより優先度を上げた別のルーティングテーブルで転送する このとき、nf_tables でパケットの条件を指定して、マーキングする。 該当のパケットをマーキングする wireguardのインターフェイスから来たパケットは0x6…