CLOVER🍀

That was when it all began.

Linux

Ubuntu Linux 20.04 LTSにtunedをインストールしてみる

これは、なにをしたくて書いたもの? Linuxのチューニングツールとして、tunedというものがあるというのを最近知り。 どうやらUbuntu Linuxでもインストールできそうだったので、どういったものなのか見てみることにしました。 tuned : Focal (20.04) : Ubun…

vagrant-libvirtでSynced Foldersを使いたい

これは、なにをしたくて書いたもの? 自分はUbuntu Linux上でVagrantを使っていて、VagrantのProviderにはvagrant-libvirtを使っています。 Providers | Vagrant by HashiCorp GitHub - vagrant-libvirt/vagrant-libvirt: Vagrant provider for libvirt. Syn…

Linux CapabilitiesとDocker

Dockerを使う時に「--cap-add」とか「--privileged」とか使うことがありますが、あまりわかってないなぁと思って 少し見てみることに。 Docker run reference / Runtime privilege and Linux capabilities Capabiliiesというのは、Linuxでの特権ユーザーに割…

Ubuntu Linux 18.04 LTSをUbuntu Linux 20.04 LTSにアップグレードする

これは、なにをしたくて書いたもの? 現在使っているUbuntu Linux 18.04 LTS(Bionic Beaver)から、Ubuntu Linux 20.04 LTS(Focal Fossa)へ アップグレードしようと思いまして。 そのメモとして。 Ubuntu Linux 20.04 LTSのリリースノート(日本語)は、…

socat+ncコマンドでTCP通信を転送しつつ、フォワードプロキシ越しにアクセスする

これは、なにをしたくて書いたもの? 最近、TCPプロキシサーバーを立ててみたり、プレーンなTCP通信をSSL/TLS化してフォワードプロキシ越しにトンネリングしたりして 遊んでいるのですが、 socatでTCPプロキシサーバーを立てる - CLOVER stunnelを使って、…

Vagrantの仮想マシンに、プライベートIPアドレスを設定する(複数個まで)

これは、なにをしたくて書いたもの? Vagrantで時々プライベートIPアドレスを固定しているのですが、複数設定した時の挙動を見てみようかなと思いまして。 Vagrantのネットワーク設定 Vagrantのネットワーク設定には、Private NetworkとPublic Networkがあり…

socatでTCPプロキシサーバーを立てる

これは、なにをしたくて書いたもの? socatを使って、プロキシサーバーが立てられそうだったので、試してみようかなと。 socatとは socatとは、2つのストリーム間のデータ転送を行うコマンドラインツールです。 ストリームとしては、TCP、UDP、UNIXドメイン…

stunnelを使って、バックエンドにSSL/TLS通信しつつ、フォワードプロキシ越しにアクセスする

これは、なにをしたくて書いたもの? stunnelでバックエンドのサーバーにSSL/TLS通信して転送する際に、フォワードプロキシサーバーを経由することができないかなぁと調べたら、 できそうだったので試してみようかなと。 環境 今回の環境は、こちらです。Ub…

curl+フォワードプロキシで、HTTP CONNECTトンネリング(proxytunnel)する

これは、なにをしたくて書いたもの? curlの「--proxytunnel」オプションを使うと、フォワードプロキシサーバー+HTTP CONNECTでトンネリングができるというのを知り。 試してみましょうかと。 環境 今回の環境は、Ubuntu Linux 18.04 LTSです。 $ uname -sr…

Ubuntu Linux 18.04 LTSにstunnelをインストールする

これは、なにをしたくて書いたもの? SSL/TLSのトンネリングツールである、stunnelをちょっと試してみたいなぁと思いまして。 非SSL/TLSなクライアント、サーバー間の通信を、SSL/TLSに対応させる手段としては知っておいてもよいかな、と。 stunnel 最初…

Ubuntu Linuxでカーネルをダウングレードする

ちょっと前に、手元のUbuntu Linuxのカーネルバージョンを一気に上げたのですが、ややキツかったみたいでパフォーマンスが 悪くなってしまい。 Ubuntu Linuxのカーネルをaptでアップグレードする - CLOVER 少しバージョンを下げようかなと。 現在のカーネル…

Ubuntu Linuxのカーネルをaptでアップグレードする

Ubuntu Linux 18.04 LTSを使っていて、カーネルがだいぶ古いバージョンになってしまったなぁと思っていまして。 「apt upgrade」などでは、カーネルのバージョンは大きく更新されないんですよね(パッチ的な更新は取り込まれます)。 現在のカーネルのバージ…

LinuxのTCP Keep-Aliveを確認する

これは、なにをしたくて書いたもの? TCPのKeep-Aliveについて、なんとなく知ってはいたものの、自分でちゃんと確認したことがなかったので1度見てみようかなと 思いまして。 TCP Keep-Alive Keep-Aliveという言葉は、その言葉が適用される文脈で変わったり…

簡単にUbuntu Linux仮想マシンを起動できる、multipassを試す

これは、なにをしたくて書いたもの? 少し前に、Ubuntu Linuxの仮想マシンを起動できる、multipassというものを知りまして。 Multipass orchestrates virtual Ubuntu instances 第590回 Windows/macOS/Linuxで使える仮想マシン管理ツール『multipass』:Ubun…

Canonicalが開発したパッケージ管理システムSnappy(Snap)を使う

これは、なにをしたくて書いたもの? 以前MicroK8sを試す時に、よくわからないままsnapコマンドでMicroK8sをインストールしたのですが、またsnapを見る機会が できたので、1度ちゃんと調べてみようかなと思いまして。 Snappy? Snappyとは、Ubuntu Linuxの開…

systemdのユニット定義ファイルで指定する、EnvironmentFileについて

systemdのユニット定義ファイルには、EnvironmentFileという要素を記述することができます。 こんな感じに。 [Service] ... ... EnvironmentFile=/etc/default/foo これで対象のサービスが使う環境変数をファイルとして定義して、読み込ませることができます…

Linux上のコマンドで、ファイルの文字コードを変換する

これは、なにがしたくて書いたもの? 表題通り。iconvが有名だとは思いますが、ちゃんと使ってこなかったのでこの機会に、と。 環境 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 18.04.3 LTS Release: 18.0…

vagrant-libvirtを使って仮想マシンを起動した時に、NFSが使えない場合にエラーになるのを回避する

これは、なにをしたくて書いたもの? Vagrantで仮想マシンのプロバイダーにlibvirtを使っている時、NFSに関するエラーが出て仮想マシンが起動しなかったという事象に遭遇し、 さてどうしましょうと調べてみた話。 その内容を書こうかな、と。 環境 Ubuntu Li…

Ubuntu Linux 18.04 LTSに、Redisをaptリポジトリからインストールする

これは、なにをしたくて書いたもの? Ubuntu Linuxで、Redisをaptリポジトリからインストールする方法を、ちゃんと調べてみようかなと。 環境 今回の環境は、Ubuntu Linux 18.04 LTSとします。 $ lsb_release -a No LSB modules are available. Distributor …

Ubuntu Linux 18.04 LTSにSquidをインストールして、フォワードプロキシサーバーとして使う

これは、なにをしたくて書いたもの? ちょっとSquidをインストールして、簡単にプロキシサーバーとして立ててみようかな、と。 Squid キャッシュサーバーの有名どころですね。 squid : Optimising Web Delivery フォワードプロキシ、リバースプロキシとして…

vagrant-libvirtをUbuntu Linux 18.04 LTSにインストールして、Ubuntu Linuxの仮想マシンを起動するまで

以前、セキュアブートが有効なUbuntu Linux 18.04 LTSに、VirtualBoxをインストールするのに失敗しました。 Ubuntu Linux 18.04 LTSに、VirtualBox 6.0をaptでインストールする - CLOVER ただ、Vagrantが使いたいなぁとは思っていて、VirtualBox以外のProvid…

Ubuntu Linux 18.04 LTSに、VirtualBox 6.0をaptでインストールする

VirtualBoxを、これまでdebファイルをダウンロードしてインストールしていたのですが、aptでインストールしてみようかなと。 Oracle VM VirtualBox VirtualBox自体の説明はしません。 今回の環境は、こちら。Ubuntu Linux 18.04 LTSです。 $ lsb_release -a …

Linux関連のソースコードはどこにある?

LinuxのカーネルのソースコードはGitHub上にあるので、それ以外のLinux関連のソースコードもそこにあるのかな?と思ったり していたのですが、これは間違っていたみたいです。 Linuxカーネルのソースコード(GitHub)。 GitHub - torvalds/linux: Linux kern…

ssコマンドのRecv-Qが、backlog+1の値まで上がるのはどうして?

これは、なにをしたくて書いたもの? 以前、Linuxのbacklogについてちょっと調べてみました。 Linuxのbacklogについて調べてみる - CLOVER この時、ssコマンドで見ると「Send-Q」の値がbacklogの値となるのですが、「Recv-Q」の値はbacklog+1まで上がるので…

Linuxで現在設定されている(使用可能な)TCP輻輳制御アルゴリズムを見る

これは、なにをしたくて書いたもの? 最近、こちらの本を読んでいるのですが。 TCP技術入門 ――進化を続ける基本プロトコル (WEB+DB PRESS plusシリーズ)作者:安永 遼真,中山 悠,丸田 一輝発売日: 2019/07/06メディア: 単行本(ソフトカバー) 輻輳制御とその…

Linuxのカーネルパラメーターの説明って、どこを見たらいい?

Linuxにはたくさんのカーネルパラメータがあります。 manでシステムコールの説明を見たり、調べ物をしたりした時に、Linuxのカーネルパラメーターの変更を勧められたり、その意味が説明されて いたりすることがあると思います。 なんですけど、そもそもその…

Linuxのbacklogについて調べてみる

これは、なにをしたくて書いたもの? LinuxでTCPソケットをリッスンする時に使うシステムコールとして、listenがあります。 この時に使うbacklogについて、ちょっと知りたくなったので調べてみました。 manから見るbacklog manのlistenシステムコールの説明…

BusyBoxを使って、単一で実行可能なコマンドのバイナリをDockerコンテナ内に放り込む

これは、なにをしたくて書いたもの? Dockerコンテナ内で解析などの作業をする必要が出た時に、コマンドなどが入っていないDockerイメージが相手の場合は どうすればいい?という時の選択肢のひとつとして、BusyBoxが使えそうな気がしたので。 BusyBox Case …

Ubuntu LinuxのPPAって?(Launchpad)

PPA? Ubuntu Linuxでaptなどを使ってパッケージインストールを行いますが、オフィシャルリポジトリにパッケージがない場合、 もしくはパッケージはあるもののバージョンが古い場合には困ったりします。 ソフトウェア提供元がサードパーティ側のリポジトリを…

「ps aux」の使用メモリ(RSS)の結果を、プロセス名ごとに合算する

タイトル通り。 「ps aux」の使用メモリ(RSS)の部分を、プロセスの「文字列単位」に合算します。 $ ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.1 0.0 225636 9612 ? Ss 14:31 0:02 /sbin/init splash root 2 0.0 0.0 0 0 ? …