SyntaxHighlighter

2014年7月24日木曜日

mysqldumpでデータベース丸ごとダンプ。そしてリストア

すぐ忘れるのでメモ。


mysqldump -u root -p -x --all-databases > all_db.sql
mysqldump -u root -p -x --allow-keywords mysql > mysql_user.sql


mysql -u root -p < all_db.sql
mysql -u root -p mysql <
mysql_user.sql


ユーザー情報は、--allow-keywordsってのを付けないと取り出せてないってことか。

2014年7月17日木曜日

CDやDVDからyumを使ってインストールするよ(CentOS6.5でやった)

こんにちは。

インターネットにつながってるPCやらサーバーからなら、yumを使えばコマンド一発でインストールができたりして、すごく便利ですね。たくさんのサーバを面倒みている人は、ネット上のリポジトリを自分の環境にミラーして、そのミラーのリポジトリからアップデートかけたりするみたいですが。

しかし、インターネットはおろかLANにも繋がっていない状態で必要なモジュールをインストールしたいって時もありますよね。ネットからだとバージョンコントロールしにくいという問題もあります。

そこで、 CDやDVDのようなメディアからyumをする方法をメモしときます。

こちらの記事が非常に参考になりました。ありがとうございます。
http://dotnsf.blog.jp/archives/2807753.html

上記の記事ではローカルHDD上にリポジトリを作ってますが、これをCDやらDVDやらに置けば、OKというだけなのです(^^ゞ ちゃんちゃん。

 
 以下、メモ。

CentOS6の場合、インストールDVDをyumで使えるようにするには、次のようにします。

1) CentOS6インストールDVDを入れる。
2) # mkdir /media/CentOS
3) # mount /mnt/cdrom /media/CentOS
4) # yum --disablerepo=\* --enablerepo=c6-media instal モジュール名 モジュール名


今回はrpmforegeからnrpeのインストールに必要なモジュールをとってきた。
URL、、、
http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/



yumのリポジトリを作成するためのモジュール。

# rpm -ivh deltarpm-3.5-0.5.2009093git.el6.x86_64.rpm
# rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
# rpm -ivh createrepo-0.9.8-4.el6.noarch.rpm
リポジトリを作成するには
# mkdir Packages
して、Packagesの中にrpmをぶちこむ。Packagesと同じディレクトリにcdし、
# createrepo .
でオッケー。


メモepelのリポジトリ

http://dl.fedoraproject.org/pub/epel/6/x86_64/

2014年7月11日金曜日

CentOSでiptables、ip6tablesがnot runningなのに、GUI(system-config-firewall)上だと稼働状態に見える謎

service iptables off しても GUI(system-config-firewall)上では稼働しているように見える。どういうことじゃい!!!

ということで調べてみた。

     → GUI上でEnable/Disableを切り替えると、次の変更が行われる。
     ・Enableにする
          → /etc/sysconfig/system-config-firewallの中身でが --enabled になる
   → /etc/sysconfig/iptablesが作成される
   → /etc/sysconfig/ip6tablesが作成される
          → iptables が起動される
          → ip6tables が起動される
     ・Disabledにする
          → /etc/sysconfig/system-config-firewallの中身でが --disabled になる
   → /etc/sysconfig/iptablesが削除(rename?)される
   → /etc/sysconfig/ip6tablesが削除(rename?)される
          → iptables が終了する
          → ip6tables が終了する
なお、GUIでのEnable/Disable操作とchkconfig on/offは連動していない。。
・chkconfig offにしてからGUI上でEnableにし、OS再起動するとiptablesは起動しない。
・chkconfig onにしてからGUI上でDisableにし、OS再起動するとiptablesは起動する。

結論
・GUI上のEnabled/Disabled表示切り替えは、/etc/sysconfig/system-config-firewallを見て判断しており、実際のiptablesサービスの稼働状態を見ていない。
 
まぎらわしいぜ(T_T)

2014年7月9日水曜日

vagrantのプラグイン、saharaをいれるよー

こんにちは。

Virtual Machineの管理にvagrantは大活躍しており、もはやこれなしでは生きられない体になっております。

しかし、人間の欲望は底なしだ。

VM上で何か実験し、元に戻し、実験し、元に戻し… という作業をするのに、initし、upし、削除し、みたいなことも面倒に思えてくる。


そうしたところで sahara の記事を見つけたわけです。


Windows上でインストールしてみました。

> vagrant plugin install sahara

Installing the 'sahara' plugin. This can take a few minutes...
Installed the plugin 'sahara (0.0.17)'!


あら、あっさり(´∀`)

コマンドプロンプトで確認。

> cd vm-centos   # VMのディレクトリに移動
> vagrant up
> vagrant sandbox on
> vagrant ssh
$ mkdir hogehoge
$ ls hogehoge
hogehoge
$ exit
> vagrant sandbox rollback
> vagrant ssh
$ ls hogehoge
ls: cannot access hogehoge: No such file or directory

おおー。hogehogeディレクトリ消えてる(´∀`)

VMが動いたままだとすごく時間がかかるが、VMを停止した状態だとちょっと早くなるらしい。
(でも今のところ、起動したままでもそれほど遅くなかった。onもrollbackも30秒くらい?VMが大きくなったら遅くなるんでしょうね)





2014年7月8日火曜日

udev の rule で ENV{ID_SERIAL}なんかが効かないとき

すげえ悩んだ。

ATTRS{serial}=="ほにゃらら" だとマッチするのに、 ENV{ID_SERIAL}だとマッチしない。

致命的バグなんじゃないかと疑った。


結論から申し上げると、ルールファイルを読み込む順番が重要。

10-local.rulesとかいうファイルでENV{ID_SERIAL}をかいて、反映されなくて、うーんうーんうなっていたが、これを99-local.rulesにしたら有効になった。それだけのことだ。





udevadm info --query=all -n /dev/scd1

とかやると環境の値がバラバラと表示される。

udevadm info --atribute-walk --name=/dev/scd1

とかやると親のデバイス情報とかたどってATTRSホニャホニャ表示されるみたい。