CLOVER🍀

That was when it all began.

Linux

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って?

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 ? S 14:31 0:00 […

Apache Bench(ab)を試す

Apache BenchというApacheに付属するベンチマークツールですが、名前や使い方はよく見るものの、実際に自分で 使ったことがなかったのでちょっと試してみることにしました。 https://httpd.apache.org/docs/2.4/programs/ab.html Apache Bench? ドキュメン…

Linuxで起動中のプロセスの情報(実行コマンドや起動引数、環境変数など)を確認する

procファイルシステムの話。今まで部分的にしか見てこなかったので、もうちょっと見てみようかなと。 「/proc/[PID]」配下のディレクトリを調べると、プロセスに関する情報がいろいろと並んでいます。 例えば、WildFlyをダウンロードして起動してみます。 $ …

Dockerコンテナ上で、ログファイルにしかログを書かないソフトウェアに標準出力・標準エラー出力を使わせるようにする

Dockerのログまわりのドキュメントを読んでいて、ちょっと気になったところがありまして。 View logs for a container or service | Docker Documentation The official nginx image creates a symbolic link from /var/log/nginx/access.log to /dev/stdout…

データベースやCPU、ファイルシステムなどへのベンチマークツール、sysbenchをMySQLで試す

これは、なにをしたくて書いたもの? MySQLに、単純でもいいので簡単に負荷をかけられるツールを探していた sysbenchというものがあるらしい というわけで、sysbenchを使ってMySQLに負荷…というかベンチマークを取ってみる、ということで。 sysbenchとは? …

OpenLDAPで匿名ユーザーからの参照を許可する

ちょっと、OpenLDAPへ匿名ユーザーからのアクセス(参照)を許可する方法を調べることになりまして。 確認は、こちらのOpenLDAPのDockerイメージを使います。 osixia/openldap 起動。 $ docker container run -it --rm --name openldap --env LDAP_ADMIN_PAS…

ローカルでのテストに使えるメールサーバー、MailHogを試す

ちょっと、テストに使えるSMTPサーバーを探していまして。 探してみると、こういうのが見当たります。 FakeSMTP – FakeSMTP - Dummy SMTP server for developers GitHub - rnwood/smtp4dev: smtp4dev - the mail server for development Origami SMTP GitHub…

Ubuntu Linux 18.04 LTSに、VagrantをインストールしてUbuntu Linux 18.04 LTSのboxを起動するまで

最近、ちょっとした環境の用意はDockerで行っているのですが、それでもどうしても仮想マシン自体が欲しくなる時があり、 かといってがっつりと仮想化ソフトウェアを使う感じでもない(あくまでインストール手順の確認とか)ので、 簡単に仮想マシンを起動で…

Ubuntu Linuxで、特定のファイルを含むパッケージを検索する

あるコマンドやファイルなどがすでに手元の環境にはインストールされているけれども、別の環境で同じものを インストールしたい場合、はて、どのパッケージをインストールすればいいんだったっけ?と困ることがまあまああるので。 Ubuntu Linuxの話です。 こ…

Ubuntu Linux 18.04 LTSに、Visual Studio Codeをインストールする

JavaScriptなどを書く時に、Emacs以外にもエディタを使えた方がいいのかな?と思いまして、Visual Studio Codeを インストールすることにしました。 Visual Studio Code - Code Editing. Redefined 対象は、Ubuntu Linux 18.04 LTSです。自分はEmacs使いなの…

Dockerコンテナ内で、NFSマウントする

なにも考えずに、そのまま起動したDockerコンテナでは $ docker container run -it --rm --name ubuntu ubuntu:latest bash NFSマウントができなかったりします。 $ sudo mount -v 192.168.0.3:/ /mnt/nfs mount.nfs: timeout set for Fri Oct 5 15:53:18 20…

Ubuntu Linux 18.04 LTSで、NFSの設定を行う

これは、なにをしたくて書いたもの? Ubuntu Linuxで、NFSサーバーおよびマウントの設定方法を確認するため 環境 NFSサーバー、クライアントとも、環境はこちら。 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubun…

Ubuntu Linux 18.04 LTSのNautilusで、パスを入力可能にする

Nautilusを起動した時に、ファイルパスを直接入力する方法がわからなかったので、メモとして。Ctrl+lで、上部のパスが入力可能になります。あとは、希望のパスを入力して確定すればOKです。

Ubuntu Linux 18.04 LTSでNautilusをツリー表示にする

Nautilusのツリー表示ですが、18.04 LTSまでは設定でできていたようなのですが、18.04 LTSでは設定が見当たらなくなっていたので。こちらで変更。 $ gsettings set org.gnome.nautilus.list-view use-tree-view true

Ubuntu Linux 18.04 LTSで、ウィンドウ分割・タブ利用可能なターミナルを探す

表題通り。Ubuntu Linuxで使える、 ウィンドウ分割ができる タブが利用できる ターミナルエミュレータを探しておりまして。Terminatorというものが良さそうです。TerminatorTerminator: Introductionインストール。 $ sudo apt install terminator 使い方は…

Ubuntu Linux 18.04 LTSで、Alt+Tabでの挙動を変更する

Ubuntu Linux 18.04 LTSで、Alt+Tabでアプリケーションを切り替えようとすると、グルーピングされたアプリケーションが 表示され、その中で実際に切り替えたいウィンドウを選ぶことになります。これが非常にやりにくいので、変更することに。「設定」→「デ…

Ubuntu Linux 18.04 LTSで、CtrlキーとCapsLockキーを入れ替える

こちらで、CtrlキーとCapsLockキーを入れ替えることができます。 $ dconf write /org/gnome/desktop/input-sources/xkb-options "['ctrl:swapcaps', 'caps:ctrl_modifier']" 「caps:ctrl_modifier」がないと、Shift+CapsLockを使った時に、CapsLockに戻って…

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

ちょっと興味などがあって、OpenShiftの勉強を始めることにしました。ローカルでOpenShiftを動かすにはMinishiftを使うみたいなので、こちらをインストールしてみます。Minishiftインストール対象の環境は、Ubuntu Linux 18.04 LTSです。インストールしなく…

Apacheに、複数ドメインのSSL証明書を導入する

Apache 2.2.12以降、SNI(Server Name Indication)に対応しているらしく、ひとつのWebサーバーで複数ドメインの SSL証明書を使い分けることが可能になっているようです。注目の集まるSNI(Server Name Indication)導入の必要性とはSNIでサーバ上に複数のSS…

OpenSSLで自己署名証明書を作成する(複数ホスト名:SAN/Subject Alternative Name設定付き)

自己署名なSSL証明書を作成する方法を、メモとして書いておこうと思いまして。テストあたりで、使ったりしますしね。今回使用した、OpenSSLのバージョンはこちら。 $ openssl version OpenSSL 1.1.0g 2 Nov 2017 手順は、 秘密鍵の作成 オマケでパスワードの…

Ubuntu Linux 18.04 LTSで、Google Chromeをapt repositoryからインストールする

Ubuntu Linux 18.04 LTSでブラウザにはGoogle Chromeを使っているのですが、debパッケージでインストールして以降、 そういえば更新されていないということに気づき、apt repositoryとして追加することにしました。通常は、こちらからダウンロードですね。Ch…

Ubuntu Linuxでスクリーンショットを撮るのに、Shutterが便利という話

Ubuntu Linuxでスクリーンショットを撮るのになにがいいかと聞いたら、Shutterというものが便利だと教えてもらったので。Shutter - Feature-rich Screenshot ToolLinuxでスクリーンショットを撮るならShutterを使ってみようスクリーンショットを撮る時に、 …

VMware Player上のLinuxで、KVMを使う

仮想環境の上の仮想環境ということで…。VMware Player上のLinuxでKVMを使うには、Intel VTを使うように設定しておく必要があるようです。仮想マシン設定のプロセッサの部分で、仮想化エンジンの部分の以下の赤い部分のように設定します。