痛い目見てます。
昔から、タスク管理やらなんやらと、情報整理がうまく出来ない子。
有償・無償に関わらず、ツールはかゆいところに手が届かない。
色々と勉強がてら、作るかなぁ・・・
でわ。
痛い目見てます。
昔から、タスク管理やらなんやらと、情報整理がうまく出来ない子。
有償・無償に関わらず、ツールはかゆいところに手が届かない。
色々と勉強がてら、作るかなぁ・・・
でわ。
今更ながら・・・
あけましておめでとうございます。
今年もちょこちょことネタを書いていこうかと。
でわ。
久々に書けた。
先日、色んなVirtualHostが切ってあるサーバに、新たにWebコンテンツの設置をしたのだが・・・
そこで、少しハマりました。
PHP5.1.6で運用しているサーバだったのですが、元Webアプリが、PHP5.2以上で作られているようで、
「json_encoding」が無い、とエラーが。
php-json をサックリDLし、インスコ。
[user@host ~]$ cd /usr/local/src
[user@host src]$ wget http://www.aurore.net/projects/php-json/php-json-ext-1.2.1.tar.bz2
–21:02:57– http://www.aurore.net/projects/php-json/php-json-ext-1.2.1.tar.bz2
Resolving www.aurore.net… 72.36.165.74
Connecting to www.aurore.net|72.36.165.74|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 150206 (147K) [application/x-bzip2]
Saving to: `php-json-ext-1.2.1.tar.bz2′
100%[================================================================>] 150,206 172K/s in 0.9s
21:02:59 (172 KB/s) – `php-json-ext-1.2.1.tar.bz2′ saved [150206/150206]
[user@host src]$ tar jxf php-json-ext-1.2.1.tar.bz2
[user@host src]$ cd php-json-ext-1.2.1
[user@host php-json-ext-1.2.1]$ cd php-json-ext-1.2.1
[user@host php-json-ext-1.2.1]$ ./configure
checking for gcc… gcc
(snip…)
PATH=”$PATH:/sbin” ldconfig -n /usr/local/src/php-json-ext-1.2.1/modules
———————————————————————-
Libraries have been installed in:
/usr/local/src/php-json-ext-1.2.1/modules
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR’
flag during linking and do at least one of the following:
– add LIBDIR to the `LD_LIBRARY_PATH’ environment variable
during execution
– add LIBDIR to the `LD_RUN_PATH’ environment variable
during linking
– use the `-Wl,–rpath -Wl,LIBDIR’ linker flag
– have your system administrator add LIBDIR to `/etc/ld.so.conf’
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
———————————————————————-
Build complete.
(It is safe to ignore warnings about tempnam and tmpnam).
[user@host php-json-ext-1.2.1]# su
[root@host php-json-ext-1.2.1]# make install
Installing shared extensions: /usr/lib/php/modules/
でもって、php.ini に、追記。
[root@host php-json-ext-1.2.1]# vi /etc/php.ini
extension=json.so
これでおk。
で、ここで、問題発生なのです。
[root@host php-json-ext-1.2.1]# /etc/rc.d/init.d/httpd restart
Stopping httpd: [ OK ]
Starting httpd: Warning: DocumentRoot [/home/ucube-admin/www] does not exist
(98)Address already in use: make_sock: could not bind to address [::]:80
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
[FAILED]
すでに80のポートが使われてると?
netstat で見ると、確かにポートが開いている。
しかし、httpd のプロセスは死んでいる。
という事で、どのプロセスが80のポートを使っているかを確認しましょうって事で、
fuserコマンドで、プロセスIDを調べる。
[root@host php-json-ext-1.2.1]# fuser -n tcp 80
80/tcp: 7909
と、プロセスID:7909 のプロセスが、どうやら80のポートを掴んでるようで。
では、そのプロセスは何か?
[root@host php-json-ext-1.2.1]# ps auxww | grep 7909
apache 7909 0.0 0.1 2340 1336 ? Ss Nov18 1:11 bash
bash?
うまくApacheの停止が出来なかったのかな?
とりあえず、そのプロセスを殺して、再度確認。
[root@host php-json-ext-1.2.1]# kill -9 7909
[root@host php-json-ext-1.2.1]# fuser -n tcp 80
[root@host php-json-ext-1.2.1]#
おk。
Apache起動。
[root@host php-json-ext-1.2.1]# /etc/rc.d/init.d/httpd start
Starting httpd: [ OK ]
はい、これで完了!!
長時間運用しているサーバだと、こういった事が起こりうるので、
慌てず、騒がず、冷静に対処しましょうって事で。
でわ。
ここ2週間で、3回ほどしか帰宅していない。
ずっと会社で仕事して、少し寝て、の繰り返し。
ネタを探す時間も無いし、ネタがあったとしても、まとめる時間がない。。。
来週は大丈夫だろうか・・・?
でわ。
ハマりました。。。
環境としてはこんな感じ。
■ Client
OS:CentOS 5.2
IP:192.168.10.10
User:manager
■ Server
OS:CentOS 5.2
IP:192.168.10.11
User:manager
手順は以下。
まずは、Clientにて、鍵を作成
[manager@Client ~]$ cd /home/manager
[manager@Client ~]$ mkdir .ssh
[manager@Client ~]$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/manager/.ssh/id_dsa): [ENTER]
Enter passphrase (empty for no passphrase): [ENTER]
Enter same passphrase again: [ENTER]
Your identification has been saved in /home/manager/.ssh/id_dsa.
Your public key has been saved in /home/manager/.ssh/id_dsa.pub.
The key fingerprint is:
b4:71:5b:a8:27:ac:e9:2a:0c:f8:6b:99:3d:df:2f:3a manager@192.168.10.10
次に、Clientのパーミッションの設定
[manager@Client ~]$ chmod 700 ./.ssh
[manager@Client ~]$ cd ./.ssh
[manager@Client ~/.ssh]$ chmod 600 ./id_dsa.pub
Clientで作成した公開鍵を、Serverへアップ
[manager@Client ~/.ssh]$ ftp 192.168.10.11
Connected to 192.168.10.11.
220 Welcome to blah FTP service.
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (192.168.10.11:manager): manager
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> put id_dsa.pub
local: id_dsa.pub remote: id_dsa.pub
227 Entering Passive Mode (192,168,10,11,114,96)
150 Ok to send data.
226 File receive OK.
610 bytes sent in 4.8e-05 seconds (1.2e+04 Kbytes/s)
ftp> quit
221 Goodbye.
Clientでの作業はここまで。
次はServerでの作業。
[manager@Server ~]$ mkdir ./.ssh
[manager@Server ~]$ mv ./id_dsa.pub ./.ssh
[manager@Server ~]$ chmod 700 ./.ssh
[manager@Server ~]$ cd .ssh
[manager@Server ~/.ssh]$ chmod 600 ./id_dsa.pub
[manager@Server ~/.ssh]$ mv ./id_dsa.pub ./authorized_keys
で、あとは、Clientから、ssh接続して、パスワードを聞かれなければOK。
が、ここでハマった。
何度やってもパスワードを聞かれる。
調査したところ、Server側のユーザのホームディレクトリのパーミッションが原因でした。
どうやら、700 じゃないと、ダメのようで。
2時間も無駄にしたよ。。。orz
でわ。
最近、メールの読解力・文章力が問題になる事が多い。
お客さんから来るメールを理解しきれていない、もしくは、理解していても返信する文章がおかしい。
で、結局、意思の疎通がなかなか出来ずに、メールだけで半日潰れてしまうという結果になる。
まぁ、随時注意しなければならないのだが、こちらも逐一別プロジェクトのメールをチェックしているわけではない。
国語力というか、日本語力が落ちているように思える。
本を読め、本を。
でわ。
とあるプロジェクトにて、コンテンツバックアップ用のシェルを書いたので、それをcronに仕込もうとした時のお話。
バックアップシェルの動作検証も終わり、cron に仕込もうとしたところ・・・
[root@host ~]# crontab -l
-bash: crontab: command not found
。。。orz
他人が作ったサーバはキライです。
なので、crontab を使えるように。
[root@host ~]# yum install crontabs
Loading “installonlyn” plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
–> Populating transaction set with selected packages. Please wait.
—> Downloading header for crontabs to pack into transaction set.
crontabs-1.10-8.noarch.rp 100% |=========================| 3.9 kB 00:00
—> Package crontabs.noarch 0:1.10-8 set to be updated
–> Running transaction check
Dependencies Resolved
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
crontabs noarch 1.10-8 base 5.0 k
Transaction Summary
=============================================================================
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 5.0 k
Is this ok [y/N]: y
Downloading Packages:
(1/1): crontabs-1.10-8.no 100% |=========================| 5.0 kB 00:00
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: crontabs ######################### [1/1]
Installed: crontabs.noarch 0:1.10-8
Complete!
もいっちょ。
[root@host ~]# yum install vixie-cron
Loading “installonlyn” plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
–> Populating transaction set with selected packages. Please wait.
—> Package vixie-cron.i386 4:4.1-72.el5 set to be updated
–> Running transaction check
Dependencies Resolved
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
vixie-cron i386 4:4.1-72.el5 base 91 k
Transaction Summary
=============================================================================
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 91 k
Is this ok [y/N]: y
Downloading Packages:
(1/1): vixie-cron-4.1-72. 100% |=========================| 91 kB 00:12
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: vixie-cron ######################### [1/1]
Installed: vixie-cron.i386 4:4.1-72.el5
Complete!
確認。
[root@host ~]# crontab -l
no crontab for root
おk。
無事、crontab で、cron の設定が出来ましたとさ。
でわ。
統一性が無いなぁ・・・
最近、技術書を全く買っていないです。
技術より管理にシフトしているからなのかなぁ?、と。
以前、上司に相談した事があります。
「管理よりも技術がやりたいです。」
その答え。
「両方やれば良くね?」
でした。
まぁ、その通りなんですが・・・
たくさん頑張ろうと思います。
さて、今年も残り1ヶ月。
走り抜けねば。
でわ。
よくよく考えたら、恥ずかしいBlog名だと言う事に気付いた、29歳の冬。
変えます。
でわ。
原因判明。
どうやら、ウィルスセキュリティゼロが悪かったようです。
K7Privacy Services
を停止すれば、フリーズせずに同期します。
が、iPodのアルバムアートがおかしい。。。orz
iPhone 2.2 になっても、相変わらず不安定ですわ。
iPhoneは2台目の携帯としてはいいけど、これだけだとツライね。
そんな感じです。
でわ。