Linux

再帰的に子プロセスをkillする

あるプロセスが長期間放置しているとOutOfMemoryで死ぬので、OutOfMemoryで死ぬ前にkillして起動しなおすと言う事をやりたい。 あるプロセスはそこそこな数の子・孫プロセスを作るので、子プロセスを全部辿ってkillしたい。 ただし、実行元の親プロセスは残…

Jenkins + systemd + firewalld

CentOS7にJenkinsを入れようとしたけど、systemd+firewalldをどうやって設定するんだろうと思ったので。ちゃんと公式に書いてありました。 Installing Jenkins as a Unix daemon - Jenkins - Jenkins Wiki実際はfirewalldの設定も必要なので、合わせて。

mdadmでRAID構築したけど、監視してなかったので、少し考えた。

※この記事を見ればRAIDの監視ができるわけではないですmdadmで簡単にRAID構築できてこれでいいんだろうかーと思いながら適当に運用してきたけども、監視を全くやってなかった。それ運用っていわねえから!! というわけで、どんなやり方があるか調べたけども…

CentOS7でkickstart

RHEL7が正式にリリースされてしばらく経ちCentOS 7がリリースされたので、CentOS 7でkickstart試した。といっても、前にRHEL 7 RCの時にやってたのと同じ手順 で出来たので詳しくはそちらをどうぞ。違うのはイメージのダウンロード先と、yumの設定してないの…

RHEL 7 RCでKickstartを試したけどNetworkがうまく設定されなかったので困ってた

kickstartファイル中にnetworkについて書けば動くはずなんだけども、どうやら以下のようにしないとだめ。 network --device=ens32 --bootproto=static --ip=10.1.1.1 --netmask=255.255.0.0 --gateway=10.1.255.254 --nameserver=10.1.255.254普通に" --devi…

RHEL 7 RCでKickstartを試した

初kickstartです。ネットワーク設定などがうまくいかなかったが、とりあえずOS導入までは出来たので。

RHEL7でnetstatがdeprecateになってポート確認できなくて困ってた話

プロセス立ち上がって、ポートをListenしてる事まで確認したかったけど、RHEL7ではnetstatが最小構成では入ってないらしい。f*ck!!netstatの代わりにssコマンドがあるので、これでいけます。 # TCP一覧(-t) ss -ta # UDP一覧(-u) ss -ua # Process ID付き(-p…

RHEL7 RCでネットワーク周りで躓いたのでメモ

時代を先取りしようとしてCentOS 6.xからRHEL7のRC版に手を出したら苦労した話。ネットワーク回りの扱いが大きく変わって躓いたので、メモ。 デバイス名が「eth」とかではなくなった ens32とかデバイスに基づいて決定されるらしい。ESXiとVirtualBoxで試した…

CentOSでlogrotateのcreateが機能しない

CentOS6でrsyslogで出力されたファイルの権限が0600なので、それを別のユーザから読めるようにしたくて、logrotate時にcreate 0644を与えたが、機能しなかった話。以下再現コード。logrotateのversionは3.7.8でした。

AUFSのためにKernelをビルドしてAUFSを試した

LXCでAUFSを使うので、AUFSを使えるようにKernelをビルドした話。使ったOSはCentOS 6.2(x86_64)。6.4で試せばよかった。

子プロセス起動したら標準入力待ち状態になって困った話

お仕事でLinux上のある常駐プログラムを起動するスクリプトを、JavaのProcessBuilder#startを使って実行し、起動スクリプトの出力とexit codeをJava側で受け取る必要があった。さくっと書いて実行してみたところ、標準出力されるしプログラムも起動するが、…

sudo時のPATHと設定

chefを使うとき、chef-solo実行時だけrootになってそれ以外のときは出来るだけchefユーザとして作業したかった。最近のsudoはデフォルトではPATHは引き継がれない。設定と設定によってはオプションが必要。

scsi-target-utils

iscsi-targetを入れてたのだけど、なんか最近プロセスが勝手に落ちたりと調子悪い。3日に1度ぐらい起きていてそのたびに再起動したりしていたのだけど、プロセスが落ちた影響か、RAIDの調子が悪いのかわからないけど、とうとう仮想ディスクが1個壊れてしまっ…

出力を捨てさせない・自動入力させないシェルスクリプトを書く

先に簡単に方法をまとめておきます 'script.sh > /dev/null 2>&1' とやっても、画面に出力させる echo "Hello tty world" >/dev/tty 'yes | script.sh' とやっても、自動入力させない line=$(head -n 1 < /dev/tty) echo $line 以下、調べる動機とか

Samba環境最速構築なんとか

新年明けて何もしてなかったのですが、NASのシステムディスクが壊れ始めたので、再構築してました。 Blogとかでメモに残してるものが多いので、やり直すのは苦じゃないんですが、Samba関連は書いてなかったなーと思って。 で、案の定、SELinuxの問題で何度も…

NAS省電力化計画

NAS作ったけど、あんまり使ってない。でも常時電源入ってる。 HDD4台にSSD1台乗っかっている謹製NASはIdle時は39.3W前後使っている Idle中のNASの消費電力をさらに下げたいと思い、色々調べる。 HDDが4台も乗っているんだからこいつらがおとなしくなれば・・…

SambaとSELinux

Sambaを入れてたけど、以下の事情でなかなか共有ディレクトリが作れなかった。 参考 http://dpsnet.ddo.jp/MEMO/itpro013.htm SELinuxを有効にしたまま、Sambaを使いたい場合、以下の設定が必要。 /path/to/public_directoryは共有したい任意のshare/public…

iSCSI環境構築メモ

自分用メモ。

LinuxでソフトウェアRAIDを組んだり、パーティションをきったり。

自分用メモ

シェルスクリプト(とよくあるコマンド)でexpectのように自動応答させる

標準入力から応答していくタイプのプログラムがよくあります。 9/19 追記 改行が出力されなくても上手く読み出せる方法があるっぽいのでそれを追記。 hello.sh #!/bin/sh echo "what's your name?" echo "input your name:" read name echo "age ?:" read ag…

シェルスクリプトで文字列で与えられた相対パスから、ディレクトリの絶対パスを取得する

cdしてpwdする echo $(cd $(dirname '/usr/bin/perl'); pwd) # /usr/bin cd /usr/bin echo $(cd $(dirname 'perl'); pwd) # /usr/bin echo $(cd $(dirname '../bin/perl'); pwd) # /usr/bin もちろんcdに失敗したらカレントディレクトリの情報返しちゃうので…

優先度を試す

nice(笑)ってきてたけど、正直、優先度について全く知らなかったっていう。 どれだけ効果があるのかな。

MeCab 0.991

形態素解析とかよくわかんないけど、偉い人らが作ってるので使ってみたかったの。 WINWINな環境で頑張ってたけど、うまくいかないので投げた。 まずはおとなしくLinuxでやります。 本体 wget http://mecab.googlecode.com/files/mecab-0.991.tar.gz tar xzvf…

TeamSpeak3 on Cent OS 6.2(x86_64)

カーネルとかディストリビューションとか [root@www43071u ~]# uname -a Linux www43071u.sakura.ne.jp 2.6.32-220.4.1.el6.x86_64 #1 SMP Tue Jan 24 02:13:44 GMT 2012 x86_64 x86_64 x86_64 GNU/Linux [root@www43071u ~]# cat /etc/redhat-release CentO…

iptablesで不正なSSH接続をシャットアウト

特にしたいこともないですが某社の月980円なVPSを借りてみました。 バーチャルコンソール快適! さて、SSH接続を有効にするためにiptablesでこの1行を加えている人は多いと思います。 iptables -I INPUT 1 -p tcp --dport 22 -m state --state NEW -j ACCEPT…

Gitのリモート環境を作ってSSHで繋げてみた

いい加減バージョン管理の1個や2個覚えないと・・・と思いつつなかなかやってないので、導入だけ頑張ってみました。 といっても、既に書かれてることをやっただけなんですがね・・・ 参考 http://progit.org/book/ja/ http://network.station.ez-net.jp/spec…

対話型での自動応答

windowsでもlinuxでもコンソールで対話型でyes?no?って聞いてくるのがうざかったので、 標準入力を決めた値で答えられないかなーって。 expectなんて上品なツール使えませんですし。 Windows(Windows 7 x64) echo yes | perl -e "do{ print qq{$_ yes or no\…

プロセス名からプロセスIDとフルパスを取得する何か

前記事: 任意のプロセス名からそのプログラムの絶対パスを得る - 日々量産 一個の関数で済むようにシェルスクリプトで書き書き。 grep以外は馴染みがないLinux初心者なのでとても苦労しました。 (もしかしたらCentOS 6.0 x86_64以外では動作しないかもしれま…

最小構成厨

かなり前だけど。 [CentOS-announce] Release for CentOS-6.0 Minimal i386 and x86_64 Manuals/ReleaseNotes/CentOSMinimalCD6.0 - CentOS Wiki 最小構成イメージとかあったのね... 英語だったから気づかなかったwwwワラエナイwww パッケージ選択画面なく…

NICが手に入ったのでドライバいれようとしたらKernelのソースが必要だったので、Linux Kernel3.0.4をいれつつRTパッチ適用もしちゃう日記

ただの備忘録