Hatena::Grouparaistudy

czk-htnの日記

2010-03-08

[] ssh 接続時にパスワード入力を省略する 06:59

Leopard → Linux (VMWare) へssh接続する際にパスワード(パスフレーズ)を省略する。


要はクライアント側の公開鍵をサーバ側に登録してあげればOK。

まずはクライアント(Leopard)側で公開鍵(と秘密鍵)を作成する。

$ ssh-keygen
$ ls -l ~/.ssh/
total 16
-rw-------  1 uekikazuki  staff  1675  3  8 22:57 id_rsa
-rw-r--r--  1 uekikazuki  staff   406  3  8 22:57 id_rsa.pub

作成した公開鍵を sshサーバ(CentOS) に登録する。

まずはscpでファイルをコピーし、次に authorized_keys2 ファイルに追加する。

以下で ssh 接続する際は当然ながらパスワードが聞かれる。場合によっては

leopard$ scp ./.ssh/id_rsa.pub user@172.16.80.133:/home/user/.ssh/id_rsa.pub_leopard
leopard$ ssh -l user 172.16.80.133

The authenticity of host '172.16.80.133 (172.16.80.133)' can't be established.
RSA key fingerprint is a9:1c:56:fd:b1:ad:14:39:ca:83:18:00:e1:6f:35:6e.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '172.16.80.133' (RSA) to the list of known hosts.

centos$ cd ~/.ssh/
centos$ cat id_rsa.pub_leopard >> authorized_keys2
centos$ chmod 600 authorized_keys*
centos$ exit

再び ssh でサーバにログインする。今度はパスワードを求められなければOK。

$ ssh -l user 172.16.80.133

CarbonEmacs 上で tramp を使ってリモートホストのファイルを修正する際も、パスワードを求められなくなるので、とても快適。

トラックバック - http://araistudy.g.hatena.ne.jp/czk-htn/20100308

2010-03-07

[] CentOS で Kernel ソースを入手する 07:10

HowTos/I need the Kernel Source - CentOS Wiki

$ sudo yum install rpm-build redhat-rpm-config unifdef
$ cd 
$ mkdir -p rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
$ echo '%_topdir %(echo $HOME)/rpmbuild' > .rpmmacros
$ rpm -i http://mirror.centos.org/centos/5/updates/SRPMS/kernel-2.6.18-164.11.1.el5.src.rpm
$ cd ~/rpmbuild/SPECS
$ rpmbuild -bp --target=`uname -m` kernel-2.6.spec 2> prep-err.log | tee prep-out.log

ソースファイルが含まれたTARボール(linux-2.6.18.tar.bz2)が展開されて、多くのパッチが適用される。パッチ適用されたカーネルソースコードは rpmbuild/BUILD/kernel-2.6.18 に展開されるのでエディタで参照する。


確認は VMWare上の CentOS-5.4(x86_64) で読んでいる。CarbonEmacsにTrampをインストールして ssh 経由で参照すると楽チン。

MellyMelly2011/12/24 09:44Hey, subtle must be your mddlie name. Great post!

cwprlrczwucwprlrczwu2011/12/25 01:48rv2l6T , [url=http://iypuslygczkc.com/]iypuslygczkc[/url], [link=http://aeyqdxamlfsj.com/]aeyqdxamlfsj[/link], http://pnmuclkstgcl.com/

hsxczehzhsxczehz2011/12/27 01:35qVdiOO <a href="http://jccsazehqdhh.com/">jccsazehqdhh</a>

rqvlvwfdjrqvlvwfdj2011/12/27 19:00ZFMclm , [url=http://rxubrlzzgafu.com/]rxubrlzzgafu[/url], [link=http://wlqcwqytkxyo.com/]wlqcwqytkxyo[/link], http://sevxsklnpxnd.com/

トラックバック - http://araistudy.g.hatena.ne.jp/czk-htn/20100307

2010-02-28

[] XAMPP Mac OS X 1.7.2a & Xdebug 06:59

Apache + PHP + MySQL をパッケージにしたXAMPPというディストリビューションがあるらしい。OSX標準のApacheにPHP組み込み+MacPorts版MySQLもいいけどYet Anotherなやり方もあるということで。

Xdebugを組み込んでみたいんだけど、Google先生が教えてくれるサイトはどれもバイナリインストールをしていたのが、ソースからコンパイルする方法を調べてみた。

XAMPPのインストール

no titleから

  • XAMPP Mac OS X 1.7.2a
  • Developer package

をダウンロードして、インストールしておく。

Xdebugのコンパイル

$ curl -C - -O http://xdebug.org/files/xdebug-2.0.5.tgz
$ tar xzf tar xzf xdebug-2.0.5.tgz
$ cd xdebug-2.0.5
$ /Applications/XAMPP/xamppfiles/bin/phpize
$ ./configure --with-php-config=/Applications/XAMPP/xamppfiles/bin/php-config
$ make
$ make test
$ sudo make install

php.ini

Xdebugを組み込むときに zend_extension にするか zend_extension_ts にするかの判断は、

xdebug追加をphp.iniに記述するとき、zend_extension=か zend_extension_ts=なのかを見極めるには。 | PHPの種 ブログ を参考に。XAMPPの場合、

Debug Build => 	no
Thread Safety => disabled

なので zend_extention に組み込む。xdebug.soはフルパスで指定する必要がある。

$ sudo vim /Applications/XAMPP/etc/php.ini
[xdebug]
zend_extension=/Applications/XAMPP/xamppfiles/lib/php/php-5.3.0/extensions/no-debug-non-zts-20090626/xdebug.so
トラックバック - http://araistudy.g.hatena.ne.jp/czk-htn/20100228

2010-02-20

[] checkinstall で ruby-1.8.7 をインストール 07:18

ruby 1.8.7 をRPMインストールするために checkinstall をインストールする。

参考:【インフォシーク】Infoseek : 楽天が運営するポータルサイト

rpm-build

checkinstall が内部で用いる rpmbuild コマンドをインストールする。

$ sudo yum install rpm-build

checkinstall

一度 tar+gz をインストールした後、checkinstall自身でRPMを作成し再度上書きインストールする。

$ cd ~/Desktop/
$ wget http://www.asic-linux.com.mx/~izto/checkinstall/files/source/checkinstall-1.6.2.tar.gz
$ tar xzf checkinstall-1.6.2.tar.gz
$ cd checkinstall-1.6.2
$ make
$ sudo make install
$ sudo /usr/local/sbin/checkinstall --fstrans=no --exclude=/selinux
$ sudo rpm -Uvh /usr/src/redhat/RPMS/x86_64/checkinstall-1.6.2-1.x86_64.rpm

ruby-1.8.7

ruby を 1.8.7 にバージョンアップ

$ cd ~/Desktop/
$ wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p249.tar.gz
$ tar xvzf ruby-1.8.7-p249.tar.gz 
$ cd ruby-1.8.7-p249
$ ./configure --prefix=/usr
$ make
$ sudo /usr/local/sbin/checkinstall --fstrans=no --exclude=/selinux
$ sudo rpm -Uvh /usr/src/redhat/RPMS/x86_64/ruby-1.8.7-p249-1.x86_64.rpm

・・・けど、

トラックバック - http://araistudy.g.hatena.ne.jp/czk-htn/20100220

2010-02-19

[] redMine on CentOS-5.4 (x86_64) 10:00

まず ruby と mysql をインストールする。

$ sudo yum install ruby
$ sudo yum install rdoc
$ sudo yum install mysql
$ sudo yum install mysql-server

バージョン確認。

$ ruby --version
ruby 1.8.5 (2006-08-25) [x86_64-linux]
$ mysql --version
mysql  Ver 14.12 Distrib 5.0.77, for redhat-linux-gnu (x86_64) using readline 5.1

ruby のライブラリをインストールするために gem をインストール。その後 rake, rack をインストール。

(追記)後述するよう rack は1.0.1を入れ直すことになる。

$ cd ~/Desktop/
$ wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz
$ tar xzf rubygems-1.3.5.tgz 
$ cd rubygems-1.3.5
$ sudo ruby setup.rb 
$ which gem
/usr/bin/gem
$ sudo gem install rake
$ sudo gem install rack

(日本語を使うため、このタイミングでMySQLデータベースの文字コードを utf8 にしておく必要がある。2/10のメモを参照のこと。)

$ sudo vi /etc/my.cnf
[mysqld]
default-character-set=utf8
skip-character-set-client-handshake
$ sudo /etc/rc.d/init.d/mysqld start
$ mysqladmin -u root password 'new-password'
$ mysql -u root -p
mysql> create database redmine;
mysql> grant all on *.* to redmine@"localhost" identified by "redmine";
mysql> exit
$ cd ~/Desktop
$ wget http://rubyforge.org/frs/download.php/69052/redmine-0.9.2.tar.gz
$ tar xzf redmine-0.9.2.tar.gz
$ cd redmine-0.9.2
$ cp config/database.yml.example config/database.yml
$ vi config/database.yml
user: redmine
password: redmine
$ rake db:migrate
(in /home/kazuki/Desktop/redmine/redmine-0.9.2)
rake aborted!
RubyGem version error: rack(1.1.0 not ~> 1.0.1)

(See full trace by running task with --trace)

rackというRubyライブラリのバージョンが一致しないようだ。1.0.1にダウングレードすればいいのか?

$ sudo gem install rack --version 1.0.1
$ rake db:migrate
(in /home/kazuki/Desktop/redmine/redmine-0.9.2)
!!! The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql.
rake aborted!
no such file to load -- mysql

(See full trace by running task with --trace)

MySQLライブラリが必要ということで。

$ sudo gem install mysql
ERROR:  Error installing mysql:
        mysql requires Ruby version >= 1.8.6

CentOS 5.4 には 1.8.5 までしかRPMが提供されていない。

rubyのmysqlライブラリを古いバージョンをインストールする。

$ sudo yum install gcc ruby-devel mysql-devel
$ sudo gem install mysql --version '= 2.7' -- --with-mysql-lib=/usr/lib64/mysql
$ cd ~/Desktop/redmine-0.9.2
$ rake db:migrate RAILS_ENV=production
(in /home/kazuki/Desktop/redmine/redmine-0.9.2)
rake aborted!
A key is required to write a cookie containing the session data. Use config.action_controller.session = { :key => "_myapp_session", :secret => "some secret phrase" } In config/environment.rb

(See full trace by running task with --trace)
[kazuki@localhost redmine-0.9.2]$ vi config/environment.rb 

ユニークなセッションキーを設定する。

  config.action_controller.session = { :key => "_myapp_session", :secret => "1b28680754cf06f6807b160f7a16e89a" }
end
$ script/server -e production

(80番ポートで立ち上げる場合は root 権限が必要)
$ sudo script/server -p 80 -e production

http://localhost:3000/ で画面が表示されたら成功。画面右上の「ログイン」からユーザー admin (パスワードも admin)でログインする。ログインしたら再度画面右上の「My account」から表示言語を日本語にしておく。次に画面左上の「管理」から


ちなみに日本語を使うためにMySQLデータベースの文字コードを utf8 にしておく必要がある。2/10のメモを参照のこと。

トラックバック - http://araistudy.g.hatena.ne.jp/czk-htn/20100219