ssh接続のログイン待ちが長い!
さくらでもあるんかい(゚Д゚)ゴルァ!!
これについては解決策いろいろあるそうです.
DNSサーバ
よくあるある.
DNSサーバに名前解決に行けない...
- sshd_configのnoDNSをいじる
sshの場合はこれ手っ取り早く,かつ他に影響を与えない.
noDNS no
- 名前解決先を指定
/etc/resolv.confにDNSが列挙されています.
死んでるサーバ外したり,Google Public DNS(8.8.8.8)使ったりするとよいそうで.
あとDNSサーバそもそも見なおしたりね.
GSSAPI認証
これも意外とよくある.
特にクライアント側のsshd_configに関連するそうなので見落としがち.
sshd_configに以下を設定.
GSSAPIAuthentication no
IPv6
さくらではサポートされていませんが,普通のサーバではデフォルトでonなので
特別な事情がない限りは明示的に切るほうがよいかと.
今回はどれだったかというと...
2番目のGSSAPIだったみたい.
クライアントが悪い,さくらはなにもわるくなかった(´・ω・`)
SL6にvirtualenv+python2.7
pyhton2.7を使いたいけどRHEL6はまだpython2.6なのねん(´・ω・`)
かといってyumはpython使ってるみたいだし,まさか...
ln -s /usr/local/bin/python27 /usr/bin/python
((((;゚Д゚))))ガクブル
というわけでおりこうさんにvirtualenv入れてその上でpython2.7の環境を構築しようと思います.
Macportだとpython_selectってのあるみたいだけど.いまはport selectだっけか.
python2.7
orderddictとかcounterつかいたいじゃない?
What’s New in Python 2.7 — Python v2.7.3 documentation
SnowLeopardでもRHEL6でも採用されてないバージョンを使うのは怖いけど(´・ω・`)
Ubuntu11では採用されてたけど.まぁいいや.
参考サイトです.
CentOS 5.6 に Python 2.7.1 と mod_wsgi 3.3 をインストール - Debian GNU/Linux 3.1 on PowerMac G4
$ wget http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz $ tar zxvf Python-2.7.2.tgz
ここでpythonにあるzlibモジュールが標準だとインストールされないようです.
開発用zlib(zlib-devel)をインストールし,Module/Setupを書き換え.
$ sudo yum install zlib zlib-devel $ vim Python-2.7.2/Module/Setup # Andrew Kuchling's zlib module. # This require zlib 1.1.3 (or later). # See http://www.gzip.org/zlib/ zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz # ↑コメントアウトする
ここまでで準備完了.あとはいつも通りconfigure -> make -> make install.
$ cd Python-2.7.2 $ ./configure --with-threads --enable-shared $ make $ make install
正直configureのoptionはよくわかってません...
ここちゃんと調べないとなぁ.
-
- with-threadはスレッドの有効化,--enable-sharedはライブラリの共有だそうです.
共有ライブラリ(--enable-shared)指定は以下の通り.
$ vim /etc/ld.so.conf.d/python2.7.conf
$ /sbin/ldconfig
これでめでたく以下のコマンドでpython2.7起動です.
$ /usr/local/bin/python Python 2.7.2 (default, Dec 18 2011, 00:45:19) [GCC 4.4.5 20110214 (Red Hat 4.4.5-6)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
うむ(`・ω・´)
virtualenv
仮想環境変数を構築するものですね.
参考サイト.
virutualenvとvirtualenvwrapperとpipを使う - YAMAGUCHI::weblog
とりあえずpython-setuptools -> easy_install -> virtualenvの流れで.
$ yum install python-setuptools $ easy_install pip $ pip install virtualenv $ virtualenv --version 1.7
最新版いいね(・∀・)
ついでにvirtualenvを管理してくれるvirtualenvwrapperも入れました.
$ pip install virtualenvwrapper
ほいで.zshrcに以下を記述.
export WORKON_HOME=$HOME/.virtualenvs export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python source /usr/bin/virtualenvwrapper.sh
二行目がないとなぜかVIRTUALENVWRAPPER_PYTHONが/usr/local/bin/pythonを参照してしまってインポートエラーが出てしまったです.
Traceback (most recent call last): File "<string>", line 1, in <module> ImportError: No module named virtualenvwrapper.hook_loader virtualenvwrapper.sh: There was a problem running the initialization hooks. If Python could not import the module virtualenvwrapper.hook_loader, check that virtualenv has been installed for VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python and that PATH is set properly.
python2.7環境をvirtualenvで
こっから本番!
mkvirtualenv --python=/usr/local/bin/python2.7 --no-site-packages --distribute ~/python2.7
pythonの実行ファイルを指定します.-p PYTHON_EXEも可能.
- --no-site-packages
グローバルなsite-packagesとvirtualenv環境が隔離されます.
まっさらな環境がほしい時はこれ.
virtualenv1.7からデフォルトになったみたいです.
- --distribute
パッケージ管理にsetuptoolsの代わりにdistrubuteを使用するそうです.
.zshrcに以下を記述してデフォルトに出来ます.
export VIRTUALENV_DISTRIBUTE=true
ちなみにこれ,Documentと--helpで記述違いますが,--helpのほうが正解でした.
んでまとめ.
# 環境作成 $ mkvirtualenv --python=PYTHON_EXE (envname) # 環境切り替え $ workon (envname) # 元の環境に戻る $ deactivate # 環境削除 $ rmvirtualenv (envname)
(おまけ)環境を移行したい時は?
pipを使います.
[移行元]
$ pip freeze > packages.txt $ pip bundle -r packages.txt source.pybundle
↓
[移行先]
# ネット接続環境下 $ pip install -r packages.txt # ネットなくてもOK $ pip install source.pybuldle
tmux+byobu
screenは縦分割があれなので,メモリ消費量も少ないらしいtmuxを入れることにしました.
あと設定簡単にするbyobuも.
tmux
screenの対抗馬.
参考サイト
時代はGNU screenからtmuxへ - Dマイナー志向
依存関係としてlibeventとncursesが必要です.
$ yum install libevent libevent-devel ncurses ncurses-devel
あとはmake install
$ wget http://downloads.sourceforge.net/tmux/tmux-1.5.tar.gz $ tar zxvf tmux-1.5.tar.gz $ cd tmux-1.5 $ ./configure $ make && make install
byobu
screenやtmuxを簡単操作でいじれる.
こっちもmake installするだけなので割愛...
デフォルトのbyobuコマンドだとscreenが起動するので,byobu-tmuxで.
make installを管理するpaco
先のpython2.7の記事.
どうやら--enable-sharedがうまく行ってないらしく,import cursorsとかできませんでした.
んでもっかいインストールしなおそうと思ったんだけど,make installしたもんだからどこになにがあるのやら...
とりあえずmake -n installをログファイルに書き出して一つづつ削除するハメに(;´Д`)
もうこんなことはしたくないお!ということでmake installをパッケージ管理してくれるpacoを導入.
正確にはファイルシステムへの書き込みを行うシステムコールを監視して,その書き込み先を記録しているみたいですね.
paco - a source code pacKAGE oRGANIZER for Unix/Linux
wget〜make installまでは一緒.
そのあと,自身も管理対象に入れるために以下のコマンド.
$ make logme
これで準備完了( ´∀`)
基本的に./configureしてmakeするまでは一緒.
んでmake installの代わりに
$ paco -D make install
その他のコマンド.
# パッケージ一覧 $ paco -a # パッケージ削除 $ paco -r [package]
sudoのエラー
ついでに発見したので書いときます.
先のmake logme,Permittionの関係上sudoで実行したのですがなんかエラーに.
色々調べてたらどうやらsudo envのPATHに/usr/local/binが通ってないそうで…
とゆことで.zshrcに以下を追加.
alias sudo='sudo env PATH=$PATH'
envがないとなぜかpacoがうまく動かなかった…なぜゆえ.
Ubuntu 11.10 導入
今までUbuntu Studio 10.10入れてたけどまぁあんまりDTMで使わないかなってことで一新.
CentOSみたいにOSインストール時にInstall Package選択しないのね...
それともUbuntu Serverだと選択できるのかな?
なにはともあれUbuntu 11.10再インスコ.
30GBのext3パーティションどす.
English環境にしました.
LiberOfficeはいっとる!
とりあえず入れたもの.
Mozcは以下のサイトを参照.
http://linux.ikoinoba.net/index.php?UID=1279543844:image:leftMozc+dict: 辞書を強化した(変態化した?)Mozcを作ってみた - 憩いの場
顔文字辞書はここから.
http://matsucon.net/material/dic/:image:right2ちゃんねる顔文字辞書・2chアスキーアート・AAアイコン素材 MatsuCon - 顔文字辞書ダウンロード
(Mozcプロパティ呼び出し)
/usr/lib/mozc/mozc_tool --mode=config_dialog
あと日本語がなんかおかしい.(Web表示とか)
English環境だから当たり前かもだけど、中国語みたいになっとる...
ググったらフォントの指定がおかしい?
という訳で以下のコマンド.
sudo fontconfig-voodoo -s ja_JP
mozcの変換候補がまだおかしいけどひと通り治った( ´∀`)
(追記)日本語フォントが中華風な件について
このサイト見れ.
独学Linux : Ubuntu 11.10(Oneiric)の日本語環境に関する注意点
とりあえず今日はここまで.
次はさくらVPS初期設定する.
さくらVPS初期設定
と言っても非常にわかりやすい記事がいくつもあるのでそちらを参考に.
http://wata-jp.ldblog.jp/archives/1606112.html:image:left[まとめ] さくらのVPSを借りたらまず最初にすべき6のこと - ワタブログ
http://tanaka.sakura.ad.jp/archives/001065.html:image:rightCentOSをサーバーとして活用するための基本的な設定 - さくらインターネット創業日記
基本的なsshのセキュリティ向上と,スーパユーザ関連の権限に関してですねー.
iptableはさくら社長の方を参考に.
sshはsorce portを自宅と研究室/24に割り当てました.
daemonは未チェックですが,なんか色々停止してるみたいなのでデフォルトで.
ここまでやってアップグレード.
sudo yum upgrade
ただ今放置中…
[okdtsk@www6210u ~]$ cat /etc/redhat-release CentOS release 5.7 (Final)
うむ( ・`ω・´)
実機とかだとCentOS6のほうが起動早いしなぁと思うんだけど,さくらサポート外だし.
RHEL6使いたくなっったら細々と変えるかね(´・ω・`)
次はpython関連をやろうかな.
Django使いたい.
さくらで次やること
- python2.7,python_select導入
- Django導入
さくらVPS CentOS5.7(Default+upgrade) → Scientific Linux6
え,さくらVPSってScientific Linuxだと6で提供してるの…( ゚д゚)
という事で前回の記事でやった分帳消しでScientific Linux 6カスタムOSインストールします.
方法は公式サポートの手順どおり.
http://support.sakura.ad.jp/manual/vps/mainte/custom_scientificlinux.html:image:rightScientific Linux 6|カスタムOSインストールガイド|さくらのVPS|さくらインターネット公式サポートサイト
注意点をいくつか.
Java Embedding Pluginがプラグインとして認識しないそうで...
Firefox使ったら出来ました.
- imgファイルのNot Found Error?
やり直したらできた.なんやねん.
インストールオワタ at 8:10
そろそろどうかなってTightVNC見てみる.
Network Error: remote side closed connection.
(゚д゚) エッ!?
ああ,インストール終わって再起動ね...
わかりづらいわい!
という訳で起動をポチっと.→「稼働中」へ.
ssh接続するぞー.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
(゚д゚) エッ!?
ああ,know_hostに前のCentOS5のhost key残ったままでしたね...
rm -f ~/.ssh/know_host
これでよーやく接続.
ケアレスミス多し...
あとは前回の通り初期設定します.
CentOS5.5の時と違うこと.
RHEL5と6ではsshのバージョンとか少し違います.
ログイン方法が増えたりね.
一応メモ.
/etc/ssh/sshd_config
## Port変更nmapで調べられちゃうから気休め.らしい. Port 2222 PermitRootLogin no RSAAuthentication no PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys ## ホストベースの認証関係です. ## Protocol 1 のユーザは無視します.自分使わないし.多分. ## あと使うのは/etc/ssh/ssh_known_hostsに記載されているホストのみ. ## ユーザレベルの設定ファイル(~/.ssh/known_host)は信用しません. ## -> つまり公開鍵認証になるのかな? RhostsRSAAuthentication no HostbasedAuthentication yes IgnoreUserKnownHosts yes IgnoreRhosts yes PermitEmptyPasswords no PasswordAuthentication no
とはいえしばらくはHostbasedAuthenticationは使用しないと思う.
とりあえずはこれで.
あと以下の4,5をやった.
だいたい最初からミニマルにインストールされてるね>さくら
http://sakura.off-soft.net/scientific-linux/first-setting-scientific-linux.html:image:right最初にやっておきたいこと(Scientific Linux編) | レンタルサーバー・自宅サーバー設定・構築のヒント