2023-02-01から1ヶ月間の記事一覧
二律背反の要求を実現したい。 WebAPIの無駄な呼び出し回数を少しでも減らしたい。回数を減らし、プログラム応答速度を上げたい。 ただ、コードの書き換えは極小にしたい。 この目的では、Generatorを使うのが、鉄板だと思うんですよね。 WEBを呼び出すコー…
trait を use するときに名前がかぶった。 同じ名前の関数・変数があって、名前が衝突してエラーになる。 対応するには、use を使うか、優先順位を変える。 名前の衝突する trait の例 次の例では say() が衝突してしまう。
送ったパケに対して、応答があったのかなかったのか。 ping -O 192.168.1.1 -o は次のようになっている。 -O report outstanding replies これは、BSD/macOSのping のタイムアウト表示に近くなるので好きな人はこっちのほうが好きだと思う。 1つずつ表示し…
WindowsのRDPを特定IPからに制限する とくになんてことのない、Windowのファイアウォールの設定。 ファイアウォールを構成してRDPを特定IPに限定する。 ローカルIP(接続される側・自分自身)のIPアドレスを指定する なぜなら、ネットワークカードが複数刺さ…
Windows でインストール済みのアプリケーションを一覧する Macでいうところの /Application に相当するのは、C:/Program Files なので MacでいうところのLaunchpad に相当する、アプリ一覧のWindows版です。 なぜ必要なのかというと、VsCode やChromeといっ…
bundle コマンドの使い方 bundle コマンドは apt で入れている前提 apt install ruby-bundler 初期化 フォルダを作る mkdir my-work cd my-work 初期化する bundle init パッケージの追加 bundle add struct bundle add pry パッケージの利用 / ソース作成 …
dnsプラグインを複数使いたい。 たとえば、次のような証明書を発行要求したいとする。 cert domain commonName example.tld subjectAltName DNS:example.tld, DNS:example.biz,DNS:second.tld ただし、DNSの管理先はそれぞれ別のDNSサーバになっているとする…
Let'sEncryptの証明書は別々のドメインを集約できた。 Let'sEncryptのDNS更新クライアントを作っていた。仕様をアレコレと確認し、色々な組み合わせで証明書を発行したのですが。 「もしかして、異なるベース・ドメインでも認証通るんじゃね?」 と思いつい…
laravel などのWebアプリでPKI証明書発行を行いたい。 ドメイン証明書の発行は、ACME(v2)で自動化できるようになっている。 ACME は アクミ(日本ではアクメ)と呼びます。ACMEで自動化できる。 したがってACMEを組み込めば、自分のアプリが自分で証明書を発…
ubuntu の仮想マシンをきれいに整理しようとしたらログがいっぱいあることに気づいた。 現在のログの容量を確認する。 journalctl --disk-usage 実行例 $ sudo journalctl --disk-usage Archived and active journals take up 344.0M in the file system. 調…
ipv4 アドレスをでソートしたい。 OpenWrtでDHCPの固定割当を設定している。MAC ADDRごとにIPアドレスを静的割当している。 これを一覧画面で閲覧すると、ソートされてない。追加順に末尾に足されるだけなのだ。 追加順だととても不便なのだ。IPアドレス順に…
ip アドレスを数字順にソートしたい。 IPアドレスソートするにはいろいろな答えが思い浮かぶ。 今回は、整数に変換してソートしてみたいと思う。 ip アドレスを10進数に変換する 256進数だから、桁数分だけ256を掛けてあげれば良い。 IPアドレスを10進…
ipアドレスをint に変換する 10.0.0.0 -> 167772160 10.0.0.1 -> 167772161 このように、IPアドレスを整数値に置き換えたい。 1 2 3 4 v4表記 10 0 0 1 2進数 0b00001010 0b00000000 0b00000000 0b00000001 3,4オクテットだけを見てみる。 1 2 3 4 v4表記…
IPアドレスをソートする sort コマンドでip addr をソートすると、文字列順になってしまう。 なのでIP アドレスを文字列でソートすると、めんどくさい 解決策 sort コマンドのオプションつける(この記事) ip addr を int にする。別記事 sort -V を使う。 …
curl の新機能を試したい。 Output HTTP headers from the most recent request by using %header{name} where name is the case insensitive name of the header (without the trailing colon). The header contents are exactly as sent over the network,…
Ubuntu でアップグレードした場合の警告表示を無効化する Ubuntu でapt upgrade したときに、再起動の画面が出てきて止まる。 アップグレード自体が止まってるわけではないのですが。SSH接続して目を話してたら警告画面で止まってたりする。 cat << 'EOF' | …
長い文字列をメモに残すと折返しが面倒 たとえば、次のような長い文字をデコードする事を考える。 echo 'Sa1VODv0YrgjqYMM44Nf1FAnKyAR8LLmI1je8FYkfC60MWzHr03gwIuIhGCTK/P3fJ2z7euY/PIXagqSbKwygV0ZpBWNnZVjsxcMLCFTsoQvFTzWkZl2awIlbaToDbc3Go1t++1kk4Va6…
cloudflare のレコードをphpから処理 cloudflare のAPIを使う。 php が手軽かなと思って選んだ。 https://github.com/cloudflare/cloudflare-php https://packagist.org/packages/cloudflare/sdk インストール composer require cloudflare/sdk 初期化例。 A…
WEBでアレコレ調べてるときに目にしたので試してみた。 容量の5%を予約ブロックとして占有している ext4 では容量の5%を、先立って確保している 予約領域は root だけが書き込める領域で、仮にディスクの空きがなくなっても root は予約領域を使って作業…
USB メモリ壊れました。 読み込みも書き込みもできなくなりました。 USBメモリは、保護機能があって壊れそうになると、リードオンリーになるのですが、今回はいきなり壊れました。 Raspi に挿したSDカードやUSBメモリは本当によく壊れますね。raspi はUSB-SS…
速いか遅いかより、扱いやすいか。 なんかね、ファイル・システムのパフォーマンス比較でイキってるエントリがまた増えてたので書こうと思ったの。 以前ね、パフォーマンスを見てXFSが良さそうと思って勇んで活用したが、XFSは拡大縮小が出来なかった。 xfs …
cryttab 書いたけど・・・ この書式であってんのかな。と、自身が無い /etc/crypttab の内容をチェックしたり、テストしたり、また再起動せずに反映したいときにどうするのか。 cryptdisks_start crypt-ssd を使う crypttab の内容を使ってリマッピングする …
このRaspiにどのSDカードを挿していたかなと。SDカードの型番やメーカーを調べたいときに、いちいち抜き差しするのもRaspiを見にくのも面倒です。 ssh 経由やコマンドでSDカードの情報を得られたら良い。 mmc コマンドでSDカードの情報を調べる。 $ mmc cid …
hostname を変更しても無駄なときがある。 よくある記事の「hostnamectl を使えば良い。」という記事を信じてやってみたが。 sudo hostnamectl set-hostname my-server --static sudo reboot 変わらない。 hostnamectl Static hostname: raspberrypi Icon na…
Raspberry Pi のSDカードを複製して、2台起動したらMACアドレスが衝突した。eth0は衝突しないんだけど、macvlan が衝突した machine-id の変更 rm -f /etc/machine-id dbus-uuidgen --ensure=/etc/machine-id reboot machine-id を変更したら衝突がなくなっ…
パスワードが短くて怒られる。 とりあえずサクッと作業するために一時的にパスワードを変えようとしたら怒られた。 takuya@pi4-ubuntu:~$ passwd Changing password for takuya. Current password: New password: Retype new password: You must choose a lo…
仮想マシンを作って、encfs・ecryptfs を実験する ecryptfs https://abillyz.com/moco/studies/276 ecryptfs制限 ファイルの名前の長さに制限(割と辛い) スパース・ファイルが作れない(割と辛い) 代替案との比較 dm-crypt ブロック全体を暗号化する。TPM…
WindowsのGoogle Chromeで真っ黒になる。 画面全体がブラックアウトして、Chromeの画面が真っ黒になることがある。 原因はハードウェア・アクセラレーション GPU周りの、ハードウェアアクセラレーションが原因であることが多い。 とされるが、ハードウェアの…
linux のディスクのラベルの確認方法 /dev のマッピングから見える ls -l /dev/disk/by-label/ または、lsblk で lsblk -f ほかにも、df -T や blkid を使って見ることが出来る。 ディスクのラベルの設定 ext4 tune2fs -L YOURNAME /dev/sdb2 他にも、e2labe…
raspi を lmv on dm-crypt(LUKS) に含める。 LVM で起動することも出来た。。ext4 on dm-crypt で起動することも出来た だったら、 ext4 on LVM on LUKSで起動することも出来るんじゃ。とおもったので。試した。 raspberry pi だからといって、特殊なことは…