2013/06/19

sudo vi 色付け

sudo vi ではなく
sudo vim ...を使う、
環境変数の設定あたりね。

sudoでリダイレクト

sudoでリダイレクトをしたいとき
teeの前にsudoも追加する
sudo 。。 | sudo tee 。。.log

tomcat - CATALINA_BASE and CATALINA_HOME variables

catalina.shでpwdで設定したね。
ーーー
# Only set CATALINA_HOME if not already set
[ -z "$CATALINA_HOME" ] && CATALINA_HOME=`cd "$PRGDIR/.." >/dev/null; pwd`
# Copy CATALINA_BASE from CATALINA_HOME if not already set
[ -z "$CATALINA_BASE" ] && CATALINA_BASE="$CATALINA_HOME"
ーーー

使い分け:
ーーーー
#   CATALINA_HOME   May point at your Catalina "build" directory.
#
#   CATALINA_BASE   (Optional) Base directory for resolving dynamic portions
#                   of a Catalina installation.  If not present, resolves to
#                   the same directory that CATALINA_HOME points to.

こんなの感じ
  ・  CATALINA_HOME
         -  /some/where/apache-tomcat-7.0.11/
         ※ apache-tomcat-7.0.11.tar.gz を展開したもの。

  ・  CATALINA_BASE (ホントに最低限の構成例)
         -  /some/where/my-instance/conf/server.xml
         -  /some/where/my-instance/lib/
         -  /some/where/my-instance/logs/
         -  /some/where/my-instance/temp/
         -  /some/where/my-instance/webapps/my-app.war
         -  /some/where/my-instance/work/

2013/06/18

apacheとtomcatの連携

★apache側の設定:
httpd.conf
-------------
Listen 80
ServerName 名前
Include conf.d/*.conf==>別の設定ファイルを使う、httpdから相対パス
#連携用のモジュール
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule cache_module modules/mod_cache.so
LoadModule jk_module modules/mod_jk.so
#location アクセス制限、ここが注意!
AllowとDenyの優先順位で、最終の判断で決める
Order deny,allow=>すべて許可
Order allow,deny=>すべて拒否
<Location /path/ >
    Order Deny,Allow
    Deny from all
    Allow from IPs
</Location>
#ここだ。。。。。mappingの設定
<IfModule mod_jk.c>
  JkWorkersFile conf.d/worker.properties
  ここも注意!「/パス」と「/パス/*」は違う物。。。
  JkMount /パス  tomcatN
  JkMount /パス/*  tomcatN
  JkLogFile "|/usr/sbin/rotatelogs  /var/log/httpd/jk_log.%Y-%m-%d 86400 540"
</IfModule>
worker.list=tomcatN
worker.tomcatN.port=
worker.tomcatN.host=
worker.tomcatN.type=ajp13
-------------

★tomcat側の設定
server.xml
-----------
<Connector port="8009"
               protocol="AJP/1.3" ここ、本来はHTTP/1.1だったが、AJPに修正する
               redirectPort="8443"
               useBodyEncodingForURI="true" />
-----------

2013/06/17

eclipseを高速化にする 落ちる対応

eclipse.iniを編集する:

--launcher.XXMaxPermSize Xmxが未設定の場合、それを使う
?M
-Xms?m  初期値
-Xmx?g 最大値 - Xmx ・・・ ヒープ全体(New+Old)の最大値

とりあえず、大幅にUPする。
やりすぎると、起動できなくなる。
それはOSのHeapSizeの制約である。
その場合、下げて調整しましょう。。

コマンドライン上からelcipse.exeにパスが通った状態で
elcipse -clean

「eclipsec -console」とした後、「osgi>」プロンプトに「ss」と入力すると、Eclipse上で動いているプラグインの稼動状況の一覧を見ることができ


落ちる時の対応:


案1.「ログ確認」&「ネット調査」
※ログ保存場所
▼/ワークスペースフォルダ./.metadata/.log

案2.クリーンオプションで起動
・「eclipse.exe」と同じフォルダにある「eclipse.exe -clean.cmd」クリック

案3.「.metadata」削除
・ワークスペースにある「.metadata」フォルダを削除後、起動
・これで「eclipse」は100%立ち上がるようになる(少なくとも自分の場合は)
※「.metadata」削除は最後の手段。設定やり直しになるので極力避けたほうが良い
※「.metadata」リネームも危険。極力避けたほうが良い

EclipseのworkSpaceのCopy

難しいと思ったが、
意外に簡単である。

workSpaceのfolderをコピーし、そのに切り替え、暗くなったprojectを削除して
OK!

linuxのシステムログ

/var/log/messeges :
----------------
Apr 20 02:49:38 localhost kernel: Kernel logging (proc) stopped.
Apr 20 02:49:38 localhost kernel: Kernel log daemon terminating.
Apr 20 02:49:39 localhost exiting on signal 15
Apr 20 02:52:11 localhost syslogd 1.4.1: restart.
Apr 20 02:52:11 localhost kernel: klogd 1.4.1, log source = /proc/kmsg started.
Apr 20 02:52:11 localhost kernel: Linux version 2.6.18-164.el5 (mockbuild@builder16.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)) #1 SMP Thu Sep 3 03:33:56 EDT 2009

mountのトラブル

マウントするところ、下記のエラー:
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
mount.nfs: an incorrect mount option was specified

解決:
rpcbindを先に起動する
nfsを再起動する
rpcbindを先に起動しないと、怒られる
ーー
NFS デーモンを終了中:                                      [失敗]
NFS mountd を終了中:                                       [失敗]
NFS quotas を終了中:                                       [失敗]
NFS サービスを起動中:                                      [  OK  ]
NFS クォータを起動中: サービスを登録できません: RPC: 受け取れません; errno = 接続を拒否されました
rpc.rquotad: unable to register (RQUOTAPROG, RQUOTAVERS, udp).
                                                           [失敗]
NFS mountd を起動中:                                       [失敗]
NFS デーモンを起動中: rpc.nfsd: writing fd to kernel failed: errno 111 (Connection refused)
rpc.nfsd: unable to set any sockets for nfsd
                                                           [失敗]
ーー

更に、
rpcbind,nfsのServiceを自動起動にする
chkconfig --listで確認
また、
マウントを自動にするには
/etc/fstabに記入

例:
192.168.0.7:/home/project     /project      nfs    defaults        0 0

mount -aで確認

更に、下記のエラー:
※NFS クォータを起動中: サービスを登録できません: RPC: 認証エラー; why = クライアントの信任が弱すぎます
=>
tcpwrapperを設定しているのが原因。
/etc/hosts.allowに
ALL : 127.0.0.1
を追記して解決。