地方エンジニアの学習日記

興味ある技術の雑なメモだったりを書いてくブログ。たまに日記とガジェット紹介。

Linux

【Linux】new macについてのリーナスの回答

www.realworldtech.com リーナスへの質問でM1 macについてどう思うかの回答があった。Linuxが動くなら欲しいと回答している。ARMベースのラップトップはずっと欲しかったらしい。 どこかしらはARMベースのmacでLinuxを動かそうとしてるプロジェクトはあるだ…

【Linux】autofsと始めるNAS

autofsとは 自動的に適切なファイルシステムをマウントするためのクライアント側のサービスです。クライアントが現在マウントされていないファイルシステムをアクセスしようとすると、autofs ファイルシステムはその要求に介入し、automountd を呼び出して要…

【Linux】net.core.(r|w)mem_maxあたりの話

概要 netstatの実行でたまに見るSendQとかRecvQの値の決定はどこで行っているかを確認した際のメモ Send-Q/Recv-Qとは Recv-Q このソケットに接続されたユーザープログラムに渡されなかったデータのバイト数。 Send-Q リモートホストに受け入れられなかった…

【Ansible】grusterfsのブリックの設定をansibleでやる。

シェルスクリプトでゴリ押ししてたけど公式が良さげなモジュールを作ってくれていることに気づいた。ブリック関連の作成削除はこっちでやっても良さげかもしれない。 docs.ansible.com - name: create gluster volume with multiple bricks gluster.gluster.…

【C】signalfd + epoll のサンプル

typedef enum { MYOP_ERROR = -1, MYOP_NONE = 0, MYOP_QUIT, MYOP_WAITCHILD, /* snip */ } MyOperation_t; /** * AnalyseEvent - epoll_eventから任意のコマンドIDを導く */ MyOperation_t AnalyseEvent (struct epoll_event *event) { if (event->data.fd…

【TCP】TCPサーバーの非同期処理

手法 メリット デメリット select メモリやリソース消費が抑えられる 扱えるディスクリプタに制限がある一つのソケットの送受信処理の間に他のソケットを扱えない poll メモリやリソース消費が抑えられるディスクリプタ制限なし 一つのソケットの送受信処理…

【Linux】TCP keep aliveのパラメータ

① net.ipv4.tcp_keepalive_time 『TCP コネクション開始から KeepAlive の送信を開始するまでの時間』を指定します。単位は sec 、デフォルトでは 7,200 sec = 2時間です。(Windows と同じです) ② net.ipv4.tcp_keepalive_intvl 『KeepAlive 送信開始後、何…

【Linux】特殊ファイルシステム

名前 マウントポイント 説明 bdev ブロック型デバイス devpts /dev/pts 疑似端末の提供 eventpollfs 効率の良いイベントポーリング機構が利用 futexfs futex(ユーザ空間のロック機構)が使用 pipefs パイプをFIFOとして扱う proc カーネルデータ構造へのアク…

【Linux】メモリに負荷をかけるツール

#! /bin/bash # "--bytest 5000000" is 500MB. echo PID=$$ echo -n "[ Enter : powerup! ] , [ Ctrl+d : stop ]" c=0 while read byte; do eval a$c'=$(head --bytes 5000000 /dev/zero |cat -v)' c=$(($c+1)) echo -n ">" done echo

【Linux】複数バージョンのGCCを同居させる

1.はじめに LinuxOSに付属する既存のコンパイラgcc/g++に加えて別のgcc/g++を導入すると動的リンクのライブラリの問題が発生する事があります。メモとして残します。 環境: CentOS6.7/32bit (64bitではありません) OS付属のコンパイラ: gcc/g++ version 4.4.…

【Linux】GCCのバージョンアップ

gcc バージョンアップ gcc の7.3.0取得 ````bash wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-7.3.0/gcc-7.3.0.tar.gz 取ってきたものを解凍します。 tar zxvf gcc-7.3.0.tar.gz 取得してきたgcc をビルドします。 cd gcc-7.3.0 ./contri…

【Linux】lsofの使わずにポート開いてるプロセスを特定

lsofの仕組み?

【Linux】livevent 入門

libeventは、スケーラブルなネットワークサーバを開発するためのイベント通知ライブラリです。 libevent APIは特定のイベントがファイルディスクリプタに発生するか、タイムアウトに達した場合に、コールバック関数を実行するためのメカニズムを提供します。…

【Linux】非同期IOのカーネルパラメータ

fs.aio-max-nr = 131072 アクティブな非同期の全入出力コンテキスト内で許可されるイベントの最大数 access.redhat.com

【Linux】Anacron とは

cron はジョブをスケジュール通りに実行するのが特徴ですが anacron は少し違います。anacron では指定したスケジュール時間に加え、「ランダム時間」 をプラスしてジョブを実行します。また cron では1日に何回でもジョブを実行させられますが、anacron で…

【Linux】サーバに入ったらやるよね?ってコマンド

初めて入るサーバはワクワクします。 「どんなスペック?」「どんな構成で動いてるんだろ?」 ってなるのでそんな時に使えるコマンド集

【Linux】lsコマンド

いまさらですが、lsコマンドについてまとめます。 lsコマンド list segmentsの略。 ファイルやディレクトリの情報を表示する。 $ ls a.txt b.txt c.txt test test2 上記コマンドでカレントディレクトリ内のファイルの一覧を表示する。 ls -a : すべてのファ…

【Linux】net.ipv4.tcp_tw_reuse=1

webサーバに置けるTCP TIME_WAIT

【Linux】ロードバランサ L4 L7

ロードバランサ

【Linux】mm_struct は何してるか

mmap: vm_area_struct の先頭を保持する。 mm_rb: メモリエリアを高速に探すための red-black tree を保持する。 mmap_cache: メモリ参照の局所生(locality)を生かして高速化するためのもの。 pgd: page global drectory へのポインタ。後述。 mm_users: 共…

【Linux】linux 削除したファイルを復活させることができるかもしれない話

かもしれない

【Linux】SSコマンドで取れない統計情報 netstat

milestone-of-se.nesuke.com オプションはnetstatもssもほぼ同じ。 -l, --listening リッスンしているやつ -n, --numeric ポートやナマのIPで表示 -t, --tcp TCPを表示 -u, --udp UDPを表示 -x, --unix UNIX Domainソケットを表示 TCPのやつを表示する場合は…

【Linux】SIGSEGV調査

プログラムがSIGSEGVで落ちた!そんな時の調査方法

【Linux】Linuxをドメインへ参加させる

やりたいこと LinuxへActive Directoryのアカウントでログインできるようにしたい。 統合認証とかいうやつです。 システム概要 ・ドメインコントローラ -OS :Windows Server 2012 R2 Standard -フォレストの機能レベル :Windows Server 2012 R2 -ドメイン…

【Linux】カーネルソースを読む勘所

arch arch サブディレクトリには、アーキテクチャ(architecture)固有の カーネルコードが含まれている。 さらに深いサブディレクトリがあり、たとえば、i386 や alpha と いったサポートするアーキテクチャごとに分かれている。 include include サブディレ…

【Linux】LinuxのTip集

コマンド基本+α 省略しない名前 省略しない名前を知っているとちょっとした時に役に立つかも? cd : change directory pwd : print working directory mv : move cp : copy ls : list ln : link teeでリダイレクト リダイレクトと言えば>であるがこれだと実…

【Linux】procを綺麗に見る

"/proc/${PID}/environ"をみるときにcatだと末尾が改行じゃなく\0 (NULL文字)のため見辛い そんな時はstringsコマンドを使うと良いことに気づいた $ strings /proc/29732/environ LANG=en_US.UTF-8 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin …

【Linux】監視の便利コマンド

# CPU使用率が高いプロセス watch -n 2 "ps aux| sort -nk +3 | tail" or watch -n 2 "ps aux| sort -nk +4 | tail" # swap使用中のプロセス grep VmSwap /proc/*/status | sort -k 2 -nr # ファイルサイズが大きい順 du -b | sort -n | numfmt --to=iec --s…