screenの「No more PTY」

先日から悩まされていたPTYがどうたらこうたらだが解決した。

Serversmanの仕様らしい。
http://dream.jp/vps/

http://d.hatena.ne.jp/japanrock_pg/20091217/1261052551

これも全部試したが無理だった。

途方にくれたが、こういうことらしい

http://d.hatena.ne.jp/the_yokochi/20110127/1296086278

ようするに、

numptyってプロセスに制限がある(8まで)

screenとかsshでpty消費する

8になったらあぼーん





今のところ

$ps axfu

してそれっぽいプロセスをkillすることで対処している。

なんかしら上手いシェルスクリプトを書くことで対処することが出来そうな
気がするけど、流石にVPS特有の症状なため、なかなか情報が無い。

debianにnode.jsをインストール

自分用のVPSに入れてみた。
フリービットのServersman
http://dream.jp/vps/

node.js入れるに際して参考にしたページはこれ

http://blog.asial.co.jp/668

$ wget http://nodejs.org/dist/node-v0.4.0.tar.gz
$ tar zxvf node-v0.4.0.tar.gz
$ cd node-v0.4.0
$ sudo apt-get install build-essential libssl-dev
$ ./configure
$ make
$ sudo make install

しようとしたら
makeでへくった。

IOError: [Errno 13] Permission denied: '/home/fujiwara/node-v0.4.0/build/debug/macros.py'
make: *** [install] Error 1

なんかパーミッションがどうとか言われている。
ぐぐっても出ない。まいった。とりあえずopensslが無いとか
言われてた気がするので、入れる。

$ wget -P /usr/local/src http://www.apache.org/dist/httpd/httpd-2.0.59.tar.gz
$ mkdir /usr/local/httpd-2.0.59
$ cd /usr/local/src
$ tar xzf httpd-2.0.59.tar.gz
$ cd httpd-2.0.59
$ ./configure --prefix=/usr/local/httpd-2.0.59 --enable-ssl=static --enable-rewrite=shared --enable-dav_fs=shared --enable-dav=shared
$ make
$ make install

なんか解凍するときに怒られた気がした。
特につまるところは無かったように思える。

参考

http://debianj.com/library/openssl.html

そういえばscreenの設定がおかしかったな、ということを思い出し起動するが

no more PTY

とか言われる。

http://blog.livedoor.jp/nig_luce/archives/51156455.html

これはどうやら無理
でもリブートしたら治るかもしれないので、

https://oc.dti.ne.jp/cgi-bin/uss/index.cgi

http://d.hatena.ne.jp/okamuuu/20100718/1279455750

これを参考にしつつshutdown -r nowとしとく

リブートしたら普通にscreen使えた。
sshのセッションをログアウトしたらその内インスタンスはリブートされるんじゃないか、というゆとり的発想は無いんだな、ということを学んだ。

だから /etc/fstabを編集したらいいということです。

openssl入れたし、行けるかな、って思ってmake && makeinstallしたけど、やはり無理

Permission denied: '/home/fujiwara/node-v0.4.0/build/debug/macros.py'


3/30

再ログインしたら、screenが使えなかった。debian死ね

IOError: [Errno 13] Permission denied: '/home/fujiwara/node-v0.4.0/build/default/macros.py'

今度はこれを言われた。大人しくパーミッションを変えてみる。

Cannot create folder '/usr/local/include/node/' (original error: [Errno 13] Permission denied: '/usr/local/include/node/')

今度はこれを言われた。
ぐぐったらあった。

http://blogs.yahoo.co.jp/rock_artaud/27504301.html

と思って
sudo make installしたら通った。
sudo make && make installこれって、sudo make installもしてくれるって意味じゃないんだね、、、

$ whereis node
node: /usr/local/bin/node /usr/local/lib/node

パスも通っている。
めでたしめでたし。

ps)screenはどうすればええねん

AmazonLinuxでWEBサーバー環境構築

会社のサービスリリース前の練習用の環境でやってみた。
AmazonLinuxはCentOSベースでCentOSのやり方でいいと思う。


まずApacheが入ってるか確認

[ec2-user@ip-10-146-47-44 ~]$ apachectl -v
-bash: apachectl: command not found

入ってないらしい。

というわけで入れる。
ついでにviだと死んじゃうのでemacsも入れる。

sudo yum install httpd
sudo yum install emacs

特に問題なくインストール可能


※今更知ったけどemacsでCtr-s押しながら検索
二回押すと次の候補
Ctr-rで逆向きに検索
それとCtr-x,uで一回戻る。

yum -y install php php-mbstring
emacs /etc/httpd/conf/httpd.conf 

httpd.confを以下のように編集する

# The Options directive is both complicated and important.  Please see
# http://httpd.apache.org/docs-2.0/mod/core.html#options
# for more information.
#
    Options Indexes FollowSymLinks
  ↓
    Options Includes ExecCGI FollowSymLinks ← CGI,SSIの許可


# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   Options FileInfo AuthConfig Limit
#
    AllowOverride None
  ↓
    AllowOverride All ← .htaccessの許可

<IfModule mod_userdir.c>
 &#160; &#160;#
 &#160; &#160;# UserDir is disabled by default since it can confirm the presence
 &#160; &#160;# of a username on the system (depending on home directory
 &#160; &#160;# permissions).
 &#160; &#160;#
 &#160; &#160;UserDir disable
    ↓
  UserDir public_html


ServerSignature On
↓
ServerSignature Off ← エラーページでサーバー情報を表示しないようにする

AddDefaultCharset UTF-8
↓
#AddDefaultCharset UTF-8 ← コメントアウト(文字化け対応)

#AddHandler cgi-script .cgi
↓
AddHandler cgi-script .cgi .pl ← CGIスクリプトに.plを追加

<Directory "/var/www/icons">
    Options Indexes MultiViews
    ↓
    Options MultiViews ← iconsディレクトリのファイル一覧を表示しないようにする
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

あと、自分のホームディレクトリのパーミッションを変える

chmod 707 (username)

とかでいいのかな?とりあえず自分のは外部公開するやつじゃないので
777とかにしたけど。

ちなみにドキュメントルートはデフォルトで/var/www/html

http://centossrv.com/apache.shtml