それマグで!

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

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

systemdのタイマーの実行予定・実行済を一覧表示する

systemd のタイマーの実行予定を俯瞰したい crontab と違って systemdは個別ファイルに実行予定を記載するため、全体の予定がわからない。 それを一覧で俯瞰したいなと思ったときどうするのか list-timersを使う sudo systemctl list-timers --all list-time…

macのライブラリフォルダが見えないので見えるようにする。

ターミナルからコマンドで不可視を変えられる。 sudo chflag nohidden ~/Library sudo chflag nohidden /Library ただし、この方法でも ~/Library が見えないことがある。 Finder のオプションを使うのが確実。 nohiddenが動かない理由 sudo chflag nohidden…

三井住友銀行の通帳繰越は非対応のATMがある。(営業時間内に来店と表示された)

ATM通帳記入で窓口へとでた。 三井住友銀行のATMで通帳記入をしたんですよ。 そしたら、「この通帳はお取り扱いできません」って出るんですよね 15:00 までに銀行とか不可能じゃん。通帳繰越だけなんですよねぇ。 ATMを変えたら使えた。なんだそれ。 店舗を…

wireguardでSNAT・マスカレードする

wireguard 経由のパケットをいい感じに転送したい。 wiregaurdのパケットをそのままLANに流すと、IPアドレスの経路がなくなって通信できなくなったりするので、Wireguardの出口側にNATを仕掛けてあげる必要がある。 そもそもWireguardはp2pだけを提供するの…

シェルスクリプトで変数と文字列を展開(置換)する

変数を文字列に展開するenvsubst envsubst を使えば、文字列と変数を置換できる。つまり変数を展開できる。 利用サンプル echo "HELLO \${HELLO}" | HELLO=takuya envsubst テンプレートを作れる これを利用すれば、テンプレートを作って文字列を作成するの…

gRPC を使う

gRPC について gRPC はリモートからデータ取得、データ変更するRPCの一種 google が作って、http/2 とうまく協調するようにしている 一言でいえば、C構造体をそのままぶん投げるプロトコル。 サーバーとクライアントが事前にお互いに構造を知っていれば、JSO…

qcow2 のsparse ファイルのサイズをトリム(節約)- reclaim

qcow2 のファイルが肥大化することがある。 使ってないファイルは消え、ディスク容量を浪費しないはず。だが、実際には、一度確保したファイルを削除しても容量が消えない。なので、長期間メンテナンスなしで使ってるとファイルサイズが肥大化してた。なんと…

qcow2 のストレージを直接マウントする。(ループバックで接続経由)

qcow2 ディスクイメージをマウントしようと思ったら、loop back で接続すればいいとわかった。 qcow2 のディスクを接続する コネクトを使う。 sudo modprobe nbd max_part=8 sudo qemu-nbd --connect=/dev/nbd0 /var/lib/libvirt/images/d02.qcow2 sudo fdis…

kvm-qemu/virsh でクローンの作成

KVM/QEMUの仮想マシンを別のマシンへコピーしたい マイグレーションだと「移転・移動」してしまうので、「コピーして移動したい」 全体の流れ 仮想マシンのコピー(クローン) クローン済をマイグレーション(移転) という2段階でやろうと思う。 コピー/ク…

sslh で 443 ポートのUDP/TCP を振り分ける(openvpn/udpとwireguard/ udp を使う)

443 ポートを活用する 443 ポートで https / ssh / openvpn / wireguard を全部の待受ができたらいいなと思った。 フリーWiFiが443 / 53 /80 以外のポートを使わせてくれない事が非常に多い。公衆無線LANでポート監視やるのは流石にまずいと思うんだけど。実…

IPv6 での rsync のIPアドレス指定

v6 の場合、rsync のIPアドレス指定はめんどくさい rsync -avz sample.xml 'takuya@[2001::1:34]:~' ポイント v6 アドレスは[ ] で 囲む rsync -avz sample.xml takuya@[2001::1:34]:~ [ ] は bash に解釈されるので、クォートする rsync -avz sample.xml 't…

Explorer で Sambaを見るとファイル名がチルダの文字になる

チルダの文字なる Samba経由でLinuxのファイルを見ると、英数文字で5文字、チルダ、英数字のファイルになる。 再現方法 次のようなファイルを作ると、再現できる。 touch aaaa? 原因 Linuxのファイル文字とWindowsの使用禁止文字が異なるためらしい。 対応 …

ChromeのHSTS( http → httpsリダイレクト)の記憶を消す

chrome のHSTSが邪魔 443/ 80 の https のリダイレクトを設定しているとブラウザが学習したリダイレクトが邪魔になる。 HSTSを学習するなとは言わないが、クライアント側で完結されるのは邪魔である。リダイレクトの期限をつけて制御したいところである。 し…

chrome履歴画面の検索結果を全部クリックする(shadowroot経由のDOM JS)

特定の検索結果の履歴を全部消したい Googleの閲覧履歴を検索して消したい。消したいけど、「すべて消す」が無い。 検索結果をすべて選択がない。 すべて選択がないので、ちまちま消す必要があるだるすぎる。 Devtoolでまとめてチェックしたい ボタンがない…

ブラウザでSSHを接続する webssh

ブラウザのHTMLでSSHする webssh を使うと、ブラウザの中でSSH接続ができる。 ブラウザの中でSSHをサービスとして提供できるようになる。 使用例 接続概要 ブラウザはWebSocketを喋る。 ブラウザ--[websocket]-->webssh リモートのサーバからは、SSHで出てい…

linxuのターミナルで使えるグラフィカルかリソース監視 gtop

インストール cd npm i gtop 起動 npx gtop モニタリング フォントと縦横比をうまく調整すればきれいに表示ができる プロセス一覧 プロセス一覧は、c/m/p でCPU利用率・メモリ占有量・PIDの切り替えができる。mm/ccと二会押せば逆順になる。 終了 q / esc /c…

google chrome 拡張機能でSSH接続を行う。

Chrome 拡張でSSHプロトコルを喋る Chromeの拡張でSSHを使えるウインドウを開けるものがある。 インストールして動かしたところ SSHコマンドでリモートに接続ができます。 各種設定 サウンドや文字の設定、あと鍵の設定もできる。 ブラウザ内部で動くSSHクラ…

sslh で ssh / httpsを同時443で使い、しかも接続元IPを維持する

sslh で443 をポートを共有する sslh を使うと443 ポートを再利用することができる。 どんなときに使うのか。 公衆無線LANや公民館のLANなど。共用部分の共用インターネット接続でで、平然と443以外のポートを閉じてるWiFiがたくさん存在する。 社内LANと勘…

nginxで443ポートにssh/httpsを共有する

nginx で https と ssh をリッスンする nginx には $ssl_preread_protocol というStream設定が用意されている。これを使うとTLSプロトコルごとに、プロキシ先を変えることができる ただし443 はストリームが使うので、リッスン先をいい感じに帰る必要がある…

sedコマンドが、シンボリックリンク考慮しないが、gnu sedはなんとかなる

sedコマンドで置換すると、symlink が壊れる。 sed -i でファイルを置換するときのリンクファイルの扱い。 実験 echo xxx > a ln -sr a b sed -i "s|xxx|yyy|" a b # bは通常ファイルになる。 sed を使うときには絶対に知っておかなくてはいけない。 シンボ…

windows のcmd.exe をutf-8にするchcp と zip ファイルの絵文字・文字化け

windows のcp932の厄介な問題 windowsはファイル名をchp932で扱います。内部的にはUnicodeだけど、アプリケーションにcp932 で渡しています。 そのため、Windowsでは文字コードが混在してるのに正しく表示されるという妙な状態が発生します。 chcp コマンド…

vscode で WSLの ruby版 を使う。

vscode で WSLの ruby を使う。 vs code をちょっと使おうと思うと、めっちゃめんどくさいのが wsl 経由でコマンドを使うことですね。 vscode のWSL環境内の実行に慣れていれば、大丈夫なはず。 通常であれば、VS CodeをWSL内部環境で起動して終わり。 今回…

win10 の powertoys マウスユーティリティが授業・ビデオ会議の画面共有に便利

powertoys のマウスユーティリティでできること windows 10 の PowerToysにマウスユーティリティが追加されています。 マウスのクリック位置をハイライト Win+Shift-H でオンオフを切り替えて、クリック場所を強調することができます。 マウスでクリック場所…

はてなブログが検索インデックスされない問題。

はてなブログが検索インデックスされない 自分のブログを備忘録としてつけているが、Googleで検索しても検索されないのである。 sitemap は分割された はてなブログのSitemapは、年月に分割されたが、最上位を登録すれば大丈夫なはずである。 それでも、検索…

bitwardenを使うと銀行のログイン・フォームを自動入力することができる。

銀行のログインフォームは自動入力が使えない 日本の銀行は、「自動入力」をさせないために、あれこれギルティな技を駆使してくる。 現代において自動入力は「正義」である、自動入力が危険なのは過去の話だ。 昔は入力履歴を共有PCで使ってしまったり、ブラ…

public dns で使えるDNSサーバー

public DNS で使えるDNSサーバー 公開DNSで、任意のISPから使えるDNSサーバーの一覧 Adguardのヘルプに記載があった→ https://kb.adguard.com/en/general/dns-providers DoH / DoT DNS over HTTPS / DNS over TLS も同様に記載がある。 ipv6 ipv6 でも使える…

ubuntu で 一般ユーザ(非root)でsnap docker を使えるようにする

snap 版 docker をインストールした場合 sudo snap install docker docker グループがない。 docker グループがないために、一般ユーザでdocker コマンドができない。 ## できる sudo docker ps ## できない docker ps 自分で作る sudo addgroup --system do…

nextcloud で incompatible encoding になるのを何とかする。

エンコーディング警告が頻出する nextccloudで ファイルをスキャンすると、エンコーディングのえらーがよく出る will not be accessible due to incompatible encoding 一番多かった原因 macOSの utf-8 mac / nfd の濁点・半濁点の取り扱いが一番多かったエ…

OPNSenseのAPIでファイアウォールのAliasを更新する。API利用例

OPNSense設定を更新したいのでAPIを利用する OPNSenseの設定を更新しようと思うと、APIを使うのが手っ取り早い。 APIはJSONでGET/POSTができる。APIで設定を取得したり、更新したりができる。 https://docs.opnsense.org/development/api/core/firewall.html…

openssl で証明書の署名リクエストを作成(証明書更新も同様)

openssl で証明書の署名リクエストを作成する。 証明書の、更新時も基本的には同じです。更新時も新規でリクエスと作成する。 CSR の作成 csr の作成時は、秘密鍵を指定して既存の秘密鍵を再利用できます。 更新・新規リクエスト 既存の秘密鍵ファイルを利用…