git push --set-upstream origin branch-A
CentOSでNICのMACアドレスが70-persistent-net.ruleに自動登録されるのを抑制する
CentOSでは、NICのMACアドレスをあるinterface(eth0など)に固定するための設定が自動的に以下のファイルに追加されます。
/etc/udev/rules.d/70-persistent-net.ruleこの機能は、便利ではありますが、不都合な場合もあります。例えば、Diskイメージをコピーして、他の環境で使う場合に、1枚目のNICがeth1になるなどです。 上記の振る舞いを抑制するには、下記のファイルを編集します。
/lib/udev/rules.d/75-persistent-net-generator.rules以下の行を削除または、コメントアウトします。
DRIVERS=="?*", IMPORT{program}="write_net_rules"なお、上記は、自動的に追加することを抑止しますが、すでに70-persistent-net.ruleなどに設定がある場合、それは依然として有効のままです。無効にする場合は、70-persistent-net.rulの中の該当する行を削除します。また、/etc/sysconfig/network-scripts/ifcfg-eth0の中にもMACアドレスの記載がある場合、それも削除します。
Systemがクラッシュした後のmysqldの開始失敗を修復する。
Systemがクラッシュして、正常にシャットダウンしなかった場合、
次のように、それ以降のmysqldが立ち上がらなくなることがあります。
# /etc/init.d/mysqld start Another MySQL daemon already running with the same unix socket. mysqld を起動中: [失敗]このような症状の原因候補のひとつとして、mysql.sockが、残ったままになっていることが挙げられます。
# ls -l /var/lib/mysql/mysql.sock srwxrwxrwx 1 mysql mysql 0 2月 21 10:34 2014 /var/lib/mysql/mysql.sock上記のようにファイルが残っている場合、次のように削除することで、正常に起動できるようになります。
# rm -f /var/lib/mysql/mysql.sock
MacOS Xでrouting tableを確認および設定する
Routing tableの確認。
$ netstat -rn192.168.0.10へのGatawayを192.168.158.20にする例。
# route add -net 192.168.0.10 192.168.158.20192.168.1.0/24へのGatawayを192.168.158.10にする例。
# route add -net 192.168.1.0/24 192.168.158.10
sshで多段接続する設定
$HOME/.ssh/confingに以下のような設定をする。
この例では、直接アクセスできるマシンがbig-bangで、それを経由してログインするマシンがatom。
Host big-bang Hostname 10.1.1.1 User bean Host atom HostName 192.168.100.5 User mine ProxyCommand ssh big-bang nc %h %p
MacOSのPythonでrequestsパッケージを利用する
以下のようにpipでインストールできます。
$ sudo pip install requestspipのインストールについては、 こちら の記事を参照ください。
MacOSにpipをインストールする
1. インストーラをダウンロードする。
$ curl https://raw.github.com/pypa/pip/master/contrib/get-pip.py > get-pip.py2. 実行する
$ sudo python get-pip.py
Ubuntuでカーネルモジュールの自動ロードを抑止する
/etc/modprobe.d/blacklist.confに
以下のようにモジュール名を追記すればよい。
この機能を利用すると、次のようなこともできる。実験的に使いたいデバイスについては、安定性が必要なホストOSでは、上記のような設定にして自動でドライバがロードされることを回避し、ゲストOSで、設定等を試したり、試運転する。ゲストOSならカーネルがクラッシュしても影響が限定的になる。
blacklist rtl8192cu blacklist btusbその後、システムを再起動する。rmmodなどで、そのカーネルモジュールをアンロードしてもよいが、不安定などの理由でロードを抑止する場合、一度でもカーネルにロードされたなら、安全のため再起動するのがよい。
この機能を利用すると、次のようなこともできる。実験的に使いたいデバイスについては、安定性が必要なホストOSでは、上記のような設定にして自動でドライバがロードされることを回避し、ゲストOSで、設定等を試したり、試運転する。ゲストOSならカーネルがクラッシュしても影響が限定的になる。
Wiresharkで解析できるキャプチャファイルを、tcpdumpで作成する
例
tcpdump -n -s 0 -i eth0 -w dump.dat
青字不部分は適宜変更
オプションの説明
オプション | 説明 |
---|---|
-n | IPアドレスのまま出力する(DNSを引かない) |
-s 0 | キャプチャするパケットサイズの上限を無制限 |
-i | キャプチャ対象のネットワークデバイスを指定 |
-w | 作成するキャプチャファイル名を指定 |
OpenStackのnovaコマンドでインスタンスを起動する
例: 青字の部分は適宜変更します。
$ nova boot --flavor 1 --key_name mykey --image a7822d3f-5ba2-4248-9a3e-a946257b637c --security_group default --nic net-id=662fd507-eb19-4b98-a912-519e92846957 instance_nameflavaor一覧の調べ方
$ nova flavor-listkey一覧の調べ方
$ nova keypair-listimage一覧の調べ方
$ nova image-listsecurity group一覧の調べ方
$ nova secgroup-listnetwork一覧の調べ方
$ nova net-listプロジェクト名(テナント名)の変更と、ホストの指定も含む例。
$ nova --os-tenant-id e318a792ec044e1a838b14ead24828b9 boot --flavor d6bb73d1-6b4f-42ea-858d-cd1b0d48dd15 --key_name mykey --image 5060bbcb-a361-4e5a-ac26-9864143050e5 --security_group default --nic net-id=6505d940-df5c-4b2e-8da0-dbeda4343cd0 --availability-zone nova:host instance_name
mallocやfreeでGLIBCが異常を検出した際、abortさせる
GLIBCが、malloc()やfree()でメモリ破壊や二重開放などを検出した場合、stack traceやmemory mapが表示され、プログラムが終了します。このような現象の原因を調査するために、コアをダンプさせ、GDBで解析したい時があります。そのような場合、以下の環境変数を設定すると、異常検出時、abort()がコールされます。ulimit -c unlimitedなどでコアを出力する設定にしておくと、SIGABRTを受けて、コアダンプが生成されます。
0: 何も起こさない
1: メッセージを表示
2: abortする
3: 上記1と2の両方を行う
MALLOC_CHECK_=2ちなみに設定する値によって、次の振る舞いになります。
0: 何も起こさない
1: メッセージを表示
2: abortする
3: 上記1と2の両方を行う
登録:
投稿 (Atom)