「IT/パソコン」カテゴリーアーカイブ

ITとパソコンに関するカテゴリです。

svnサーバの移行

ライブラリ管理に使用しているSVN。
Subversion。
OpenSourceだし軽いしお気に入りです。
今回は、SVNサーバの移行に挑戦です。
1.移行元サーバから抽出
移行元サーバから情報をdumpします。
root@localhost svn]# svnadmin dump ./myrepos/ > myreposdump
[root@localhost svn]# ls
myrepos myreposdump
2.FTP転送
dumpファイルを移行先サーバに転送
[root@localhost svn]# ftp 192.168.1.15
バイナリ転送
3.dumpファイルからの読み込み
移行先サーバにアクセス。
svnadmin dump /var/www/svn/myrepos < myreposdump これだけでした♪ チョー簡単(^^) LinuxでのSVNの方が運用が楽かもね♪

viコマンドで文字を置換したい!

linuxを使ってると、必ず使うのが、viコマンド。
テキストファイルの編集コマンドです。
▼こんな感じ
[root@localhost tmp]# vi hoge.txt
長いファイルで、一部分だけを一律で変更したい場合は、置換が使えると便利ですよね。
たとえば、aaaaを一律でbbbbに変更したい。
そんなときは、viコマンド内臓の置換コマンドを使うと便利です。


[root@localhost tmp]# cat hoge.txt
aaaaaaaaa
bbbbbbbbbb
czczczczcz
dddddddddd
eeeeeeeeee
fzfzfzfzfz


hoge.txtの中身が↑みたいな感じのときに、zをaに変換したい。
viコマンドでhoge.txtを開き、その状態で以下のコマンドを入力
[root@localhost tmp]# vi hoge.txt
:%s/z/a/gc
 :
 :
その結果。。


[root@localhost tmp]# cat hoge.txt
aaaaaaaaa
bbbbbbbbbb
cacacacaca
dddddddddd
eeeeeeeeee
fafafafafa


大変便利でした!
以下のサイトを参考にしました。
http://www.ksknet.net/vi/post_42.html

linuxでapacheを複数起動させたい!

linuxでapacheを複数起動させる方法。
★今回の要件
1.apacheでの開発環境を1つのLinuxサーバで作りたい。
2.開発者毎にapacheプロセスを起動させたい。
3.各自apacheを再起動しても他の人に影響を与えたくない。
OSはCentOS5.2。
まずはapacheのインストール。
開発者ごとにインストールディレクトリを設けて、人数分導入。
/usr/local/apache2_****/
apacheの起動スクリプトも人数分作成
/etc/init.d/apache2_****
ポートを各自に割り振る。
開発者1:80
開発者2:81
開発者3:82
これで、複数apacheが起動できていると思った。
が、誰か一人のapacheを再起動すると、誰かのapacheが落ちる。
要は、食いつぶされる状態になった。
①再起動前(user1のapacheが起動中)
[root@localhost init.d]# ps -ef |grep httpd
root 31264 1 0 11:35 ? 00:00:00 /usr/local/apache2_user1/bin/httpd
apache 31266 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user1/bin/httpd
apache 31267 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user1/bin/httpd
apache 31268 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user1/bin/httpd
②再起動後(user2のapacheを再起動)
[root@localhost init.d]# ps -ef |grep httpd
root 31264 1 0 11:35 ? 00:00:00 /usr/local/apache2_user2/bin/httpd
apache 31266 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user2/bin/httpd
apache 31267 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user2/bin/httpd
apache 31268 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user2/bin/httpd
食いつぶされた。
調べたところ、起動スクリプト内に定義されている、プロセス名が同じであるために、食いつぶされる事象に陥っていた。
プロセス名の定義を各ユーザごとに分けた結果。。。
[root@localhost init.d]# ps -ef |grep httpd
root 31264 1 0 11:35 ? 00:00:00 /usr/local/apache2_user1/bin/httpd
apache 31266 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user1/bin/httpd
apache 31267 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user1/bin/httpd
apache 31268 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user1/bin/httpd
root 31287 1 0 11:35 ? 00:00:00 /usr/local/apache2_user2/bin/httpd
apache 31289 31287 0 11:35 ? 00:00:00 /usr/local/apache2_user2/bin/httpd
apache 31290 31287 0 11:35 ? 00:00:00 /usr/local/apache2_user2/bin/httpd
複数のapacheが起動できた!
user1のapacheを停止しても。。
[root@localhost init.d]# service apache2_user1 stop
httpd_user1 を停止中: [ OK ]
[root@localhost init.d]# ps -ef |grep httpd
root 31264 1 0 11:35 ? 00:00:00 /usr/local/apache2_user2/bin/httpd
apache 31266 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user2/bin/httpd
apache 31267 31264 0 11:35 ? 00:00:00 /usr/local/apache2_user2/bin/httpd
root 31287 1 0 11:35 ? 00:00:00 /usr/local/apache2_user3/bin/httpd
apache 31289 31287 0 11:35 ? 00:00:00 /usr/local/apache2_user3/bin/httpd
apache 31290 31287 0 11:35 ? 00:00:00 /usr/local/apache2_user3/bin/httpd
apache 31291 31287 0 11:35 ? 00:00:00 /usr/local/apache2_user3/bin/httpd
user2とuser3のapacheは起動したままの状態。
食いつぶしてない!
解決★
めでたしめでたし♪

samba-swatを使ってみる。

samba-swatなるものと入れてみた。
参考にしたサイトはこちら
OSはCentOS5.2
入れ方は非常に簡単。
[root@localhost ~]# yum -y install samba-swat
インストールされます。
/etc/xinet.d/swatで内部アクセスを許可設定を行い、保存。
xinetデーモンを再起動すれば、完了!!
チョー簡単(^^)
http://サーバ名:901/
※samba-swatは901ポートを使うらしい
最近Linux操作用のGUIが増えてきてるから、ありがたいね!
CUIだとどうしてもミスが増えちゃうし。。
ただ、コマンドは忘れちゃうけど。。(><。。)
あとのGUIツールとしては、Webminがお勧めです。
それは、また今度(^^)/~

apacheの動的モジュールを確認する

apache2.2をインストールした後に、どのモジュールが含まれているかを確認する方法です。
OS:centos5.2
osにデフォルトで搭載されているapacheだと、httpd.confの中にLoadModuleが書かれていて、どれがインストールされているかがわかりやすい。
もしくは、/etc/httpd/modules配下を見れば一目瞭然。
しかし、tarからインストールしたapache2.2はそんな記述もないし、いったい何が入ってるの???
って感じで、わかりません。
で、調べていたら、以下のコマンドで調べられました。
#/usr/local/apache2/bin/apachectl -l
-l:list compiled in modules
コンパイルされたモジュールが見れます。
オプションにもいろいろあります。
[root@localhost bin]# ./apachectl
Options:
-D name : define a name for use in directives
-d directory : specify an alternate initial ServerRoot
-f file : specify an alternate ServerConfigFile
-C “directive” : process directive before reading config files
-c “directive” : process directive after reading config files
-e level : show startup errors of level (see LogLevel)
-E file : log startup errors to file
-v : show version number
-V : show compile settings
-h : list available command line options (this page)
-l : list compiled in modules
-L : list available configuration directives
-t -D DUMP_VHOSTS : show parsed settings (currently only vhost settings)
-S : a synonym for -t -D DUMP_VHOSTS
-t -D DUMP_MODULES : show all loaded modules
-M : a synonym for -t -D DUMP_MODULES
-t : run syntax check for config files
ちょっと勉強になりました♪

windows vistaにapache2.2をインストール

windows vistaにapache2.2をインストールしました。
最初は、windows xp同様、普通にインストーラを実行し、手順に沿っていれました。
が。。
サービスの登録もされず、正常にapacheが起動しません。
で、悩みに悩んで、Google先生に相談していたら、参考になるサイトを発見!
→参考サイトはこちら←
どうやら、windows vistaからはセキュリティやらなんやらが、メッチャ厳しくなって、XPの手順では通用しないらしい。
しかもサービス登録も自動じゃなくて、手動で登録する必要があるらしい。。
正直、ちょっと面倒だと思いました。。(--;;;)
Windowsインストーラの魅力は全部自動でやってくれる♪
と思っていたので、ちょっとショックでした(; ;)
でも、やり方がわかったので、スッキリしました !(^ ^)!

携帯電話ブラウザの弱点?

携帯電話に標準装備されているブラウザの弱点をみつけちゃいました。
僕が使ってるのは、au URBANO
どんな弱点かというと、URLに日本語を含んでいる場合、ブックマークするとURLEncodingされないんです。なので、URLを直接入力してアクセスしても、エラーになります。
PCの場合は、ブラウザが自動でEncodingしてくれるので、そんな心配は無用です。
携帯ブラウザのバグの気がしますが。。。
日本語文字のURLエンコーディングは必要ですよ!
にほんブログ村 地域生活(都道府県)ブログへ
にほんブログ村

topコマンドで見るload averageの意味

linuxで負荷状況を見たいときって、topコマンドを使います。
[root@localhost ~]# top -d 1
top – 17:52:19 up 155 days, 13:42, 3 users, load average: 2.12, 4.04, 9.31
そうすると、1行目の右に出てくるload average。
この数値が高いと、負荷が高いことになります。
しかし。。なぜに3つ??
調べてみたら、記事があり、理解しました。
http://www.itmedia.co.jp/enterprise/articles/0802/22/news074.html
そうしたら、左から順番に、
1分間、5分間、15分間で見たときの、待ち行列の数
なんですって!
要するに、1分間で見たときの待ち行列の数、5分間で見たときの待ち行列の数、15分間で見たときの待ち行列の数、とういうことになります。
上記のコマンド結果を例にすると、1分間で見ると2程度の待ちが発生していて、15分間で見ると9程度待ちが発生していることになりますね。
累積で考えると、15分間の方が大きくなってそうな気がするので、妥当じゃないかと思います。
また1つ勉強になりました♪
にほんブログ村 地域生活(都道府県)ブログへ
にほんブログ村

linuxのlsコマンドオプション

linuxコマンドにlsコマンドがありますよね。
指定したディレクトリの内部を表示してくれるコマンドです。
普通にコマンドを打つと。。


[root@localhost tmp]# ls /tmp
after.log rsync_test scim-socket-frontend-root
keyring-PVps3R scim-bridge-0.3.0.socket-0@localhost:0.0 tmp
ls_result_before.log scim-helper-manager-socket-root
mapping-root scim-panel-socket:0-root


こんな感じでファイルが出力されちゃいます。
ファイルは知りたくなくて、そのフォルダの有無を知りたかったので、オプションで工夫してみました。
-dオプションを付けると、ディレクトリ名を返してくれます。


[root@localhost tmp]# ls -d /tmp
/tmp


実在しないディレクトリ名を指定した場合、


[root@localhost tmp]# ls -d /tmp2
ls: /tmp2: そのようなファイルやディレクトリはありません


ちゃんとエラーになってくれました。
面倒なシェルを作るより、よっぽど簡単です。
なんでも工夫してみるもんですね♪