2021-01-01から1年間の記事一覧

スカイダイビングを体験してきました

2021/12/04 に栃木県の 藤岡スカイダイビングクラブ でスカイダイビングを体験してきました。 藤岡駅からタクシーでスカイダイビング場に行きました。 スカイダイビング場はこんな感じでした。 スタッフさんが飼っている「りょーま」くんです。 かわいい。 …

LVM で論理ボリュームを作成する

Vagrantfile 検証に Vagrant を使います。 1GB のディスクを 2 つ追加しています。 この 2 つのディスクを使い、論理ボリュームを作成します。 # -*- mode: ruby -*- # vi: set ft=ruby : ENV["VAGRANT_EXPERIMENTAL"] = "disks" Vagrant.configure("2") do …

「入門 監視」を読んだメモ

書籍情報 https://www.oreilly.co.jp/books/9784873118642/ 1.1 アンチパターン 1: ツール依存 成功したチームが使っているから、という安直な理由でツールを採用してはいけない 自分や自分のチームにツールが合っている必要がある 1.3 アンチパターン 3: チ…

Go の string と range

string を range したときに返るインデックスは 文字列中でのバイト位置を表しているということを知りました。 今まで何文字目というインデックスが返るものと勘違いしてました。 忘れないようにメモしておきます。 参考 https://golang.org/doc/effective_g…

「新しいシェルプログラミングの教科書」を読んだメモ

一時ファイル名を作る $$ で現在のプロセスのプロセス ID を取得できる。これは一時ファイルの名前生成に利用できる。 $ tmpfile=/tmp/$$ $ echo $tmpfile /tmp/157490 文字列の長さを得る expr を使う。 $ expr length "pewpewpew" 9 $ foo=hello; expr len…

mkcert と golang の net/http を使い、ローカル環境に HTTPS サーバを立てる

mkcert をインストール(ビルド)する https://github.com/FiloSottile/mkcert#linux $ sudo apt install libnss3-tools $ git clone https://github.com/FiloSottile/mkcert && cd mkcert $ go build -ldflags "-X main.Version=$(git describe --tags)" mkce…

Linux のネットワーク関連コマンド

iptables と dnsmasq も後で追記したいです。 nc TCPやUDPのデータが送受信ができるコマンド。 TCP で Listen は nc -l 12345 、Connect は nc localhost 12345 にする。 UDP にする時は -u を付ける。 tcpdump パケットをキャプチャできるコマンド。 -t で…

ip netns でブリッジを作成する

Linuxで動かしながら学ぶTCP/IPネットワーク入門 を読んでいます。 この本の中で登場した ip netns コマンドの使い方をメモしておきます。 ブリッジを作成する

「DNSがよくわかる教科書」を読んだメモ

TLD TLD には ccTLD(Country code top-level domain) と gTLD(Generic top-level domain) がある ccTLD: .jp や .uk などの国や地域に割り当てられる gTLD: 国や地域の制限は無い。 .com や .net など。ただし .edu や .gov などには利用制限がある スタブリ…

iPad から Ubuntu の Vino に接続する

Vino を使うと、実際のデスクトップ画面に接続できます。 環境 Ubuntu 20.04.2 LTS iPad Air Ubuntu の設定 設定 > 共有 > 画面共有 から Vino を有効にしてください。 Vino が起動していないときは /usr/lib/vino/vino-server で手動起動できます。 iPad の…

ip netns でネットワークセグメントを作成する

Linuxで動かしながら学ぶTCP/IPネットワーク入門 を読んでいます。 この本の中で登場した ip netns コマンドの使い方をメモしておきます。 ネットワークセグメントを 2 つ作成し、通信できるようにする 動作確認 $ sudo ./create_netns.sh $ sudo ip netns e…

join コマンドの練習

join コマンドを使ったファイルの結合を練習してみます。 テスト用にファイル breeds と dogs を用意しました。 2 つとも 1 行目はヘッダです。データはソートされていないです。 $ cat breeds id breed 4 maltese 1 poodle 3 frenchbulldog 2 pomeranian 5 …

サービスのログが journald に収集されるか試す

journald について勉強しています。systemd が起動するサービスの標準出力と標準エラー出力が journald に収集されるか、 テスト用のログを出力するサービスを作り、試してみました。 テスト用のログ出力スクリプト 以下のスクリプトを /home/pi/testsh/test…

「Linuxのしくみ」を読んだメモ

試して理解 Linuxのしくみ 実験と図解で学ぶOSとハードウェアの基礎知識 第3刷 を読み終えました。自分用に整理したメモを残しておきます。 勉強用リポジトリ: https://github.com/hiroygo/linux-in-practice 調査用のコマンドやファイル /proc/cpuinfo ファ…

golang で URL を結合する

golang で URL を結合する url.Parse と path.Join を使う path.Join だけだと正しく結合できない場合がある1 実行結果の https:/golang.org/pkg/net/url のようにスラッシュが削除される サンプルコード The Go Playground で実行 package main import ( "f…

golang で UUID を使う

golang で UUID を使う ライブラリは https://github.com/google/uuid を使います GoDoc: https://pkg.go.dev/github.com/google/uuid サンプルコード package main import ( "fmt" "github.com/google/uuid" ) func main() { // uuid.NewRandom() はランダ…