Quantcast
Channel: システム開発メモ
Browsing latest articles
Browse All 100 View Live

送信先IPアドレスをiptablesで変える方法

あるホストから別のホストへ通信する際の通信先のホストのIPをiptablesで変換する方法を記載する。 送信先IPアドレスをiptablesで変えたい時 iptablesでの実現の仕方を書く前に、送信先IPアドレスをiptablesで変えたいのはどのような時か。例を2つあげたい。 グローバル経由でRedis Sentinelに接続する プライベートLAN内でReplication +...

View Article


bash固有機能を使うときはshebangをbashにするだけでは安全とは言えない

プロセス置換等、/bin/shでは利用できず/bin/bashを使う必要がある場合、シェルスクリプトを書くときに、shebangを気にする必要がある。しかし、shebangで/bin/bashを指定しても、シェルスクリプト実行時にsh script.shとしてしまうと問題が発生する。 /bin/shと/bin/bashとプロセス置換の問題 shebangが/bin/shの問題点...

View Article


Muninの間隔を1分間隔に変更する

Muninの更新間隔をデフォルトの5分から1分間隔に変更する方法を記載する。(Munin version 2.0) Muninはcron(/etc/cron.d/munin)から起動されているのでcronの変更を行う必要があるが、cronの時間を変えるだけではダメ。変更作業中にMuninが動いて欲しくないため、一番はじめの作業としてcronのコメントアウトだけしておく。 #*/5 * * * *...

View Article

Muninで各サーバのeth0をまとめる

Munin(2.0系)で/etc/munin/munin-conf.d/に配置しているconfigに書いてある各サーバのeth0をまとめたグラフを出力する方法。 元々以下のように3台のサーバが定義されていたとする。 [product;server0001] address server0001 use_node_name yes [product;server0002] address...

View Article

安易に使わないほうがいいLinuxコマンド"fc"

fcというhistoryを扱うコマンドがある。危険で怖いコマンドのため安易に使わないほうがいい。...

View Article


安易に使わないほうがいいMySQLClientコマンド"edit"

前回、安易に使わないほうがいいLinuxコマンド”fc”を書いた。コマンドライン上で編集するときはEmacsキーバインドになるが、ヒアドキュメントなど長いコマンドを書くときにfcを使うとVimで効率よく書ける。しかしコマンド実行をキャンセルしようとした時の挙動が直感と異なるので、安易に使わない方がいいという主張だ。 全く同じようなことがMySQLクライアントコマンドでも言える。...

View Article

GitLabにpushするときコミットメッセージをチェックする

RedmineのチケットとGitのコミットを紐づけるために、コミットメッセージにrefs #チケット番号を入れることをルール化したい。 クライアントサイドフックであるpre-commit...

View Article

ON DUPLICATE KEY UPDATEをAUTO_INCREMENTのテーブルには発行しない方がいい

AUTO_INCREMENTはINSERTするたびにカウントアップして発番してくれるが、ON DUPLICATE KEY UPDATEを使用してINSERTではなく既存行のUPDATEになった場合もカウントアップされてしまう。実際にINSERTしている行数はたいしたことがないのに、ON DUPLICATE KEY...

View Article


wc -lでは文末に改行がないファイルの行数を正しく数えられない

最後に改行がある場合は以下の通り問題ない。 $ printf 'test\ntest\n' test test $ printf 'test\ntest\n' | wc -l 2 wc -lは改行の数を数えるため、最後に改行がないと本当の行数より1少ない数を返してしまう。 $ printf 'test\ntest' test test$ $ printf 'test\ntest' | wc -l 1...

View Article


各OSでのデフォルトI/Oスケジューラの違い

CentOS6とCentOS7とAmazon LinuxではデフォルトのI/Oスケジューラに違いがあるため、ioniceコマンドを実行するときやパフォーマンスチューニングをするときに注意が必要だ。 各OSでのデフォルトI/Oスケジューラ...

View Article
Browsing latest articles
Browse All 100 View Live