Mac版EclipseでCtrl+Spaceが効かない件
Mac版EclipseでCtrl+Spaceキーが使えなかったので、解決方法をメモしときます。
- 「システム環境設定」を開く。
- 「キーボード」を選択
- 「キーボードショートカット」を選択
- 「Spotlight」を選択
- 「Spotlight検索フィールドを表示」のチェックを外す

TeraTermマクロとFTPでちょっと面白いことをやってみる
普段何気なくつかってるTeraTermですが、マクロというものがあります。TeraTermヘルプを見れば詳しく書いてあります。FTPもコマンドを外部ファイルに待たせば一覧の処理を自動化してくれます。今日はちょっと実際に作ってたものをサンプルとして掲載します。
処理の流れは以下のようになります。
- SSHでWindowsクライアントからサーバーAに接続して、Apacheログをftpから取得できる場所にコピー
- ftpでサーバーAに接続して、ApacheログファイルをWindowsクライアントにダウンロード
- SSHで再びサーバーAに接続して、ダウンロードしたApacheログファイルを削除
- ftpでサーバーBに接続して、Apacheログファイルを特定のディレウトリにアップロード
- Windowsクライアントのログファイル削除
- SSHでサーバーBに接続して、Apacheログ解析プログラムを実行
1. batファイル作成
apache_log.bat
“C:\Program Files\teraterm\ttpmacro.exe” “C:\apache\copylog.ttl”
ftp -s:”C:\apache\getlog.ftp”
“C:\Program Files\teraterm\ttpmacro.exe” “C:\apache\deletelog.ttl”
ftp -s:”C:\apache\putlog.ftp”
cd apache_log
del /Q *.apache.gz
“C:\Program Files\teraterm\ttpmacro.exe” “C:\apache\update.ttl”
2. ttlファイル作成
copylog.ttl
connect ‘192.168.0.2:22 /ssh /auth=password /user={user} /passwd={pw}’
wait ‘bash-2.04$ ‘
sendln ‘copylog-ctl’ ← シェルで作成したログコピースクリプト
wait ‘bash-2.04$ ‘
sendln ‘exit’
deletelog.ttl
connect ‘192.168.0.2:22 /ssh /auth=password /user={user} /passwd={pw}’
wait ‘bash-2.04$ ‘
sendln ‘rm /home/tomcat/htdocs/apache_log/*’
wait ‘bash-2.04$ ‘
sendln ‘exit’
update.ttl
connect ‘192.168.0.2:22 /ssh /auth=password /user={user} /passwd={pw}’
wait ‘[localhost@test ~]% ‘
sendln ‘/usr/local/apache/htdocs/cgi-bin/awstats/update.pl’
wait ‘[localhost@test ~]% ‘
sendln ‘exit’
3. ftpファイル作成
getlog.ftp
open 192.168.0.2
{user}
{pw}
binary
prompt
cd /apache_log/
lcd apache_log
mget *
quit
putlog.ftp
open 192.168.0.3
{user}
{pw}
binary
prompt
cd /awstats/apache_log
put apache_log/*.apache.gz
quit
ここまで読んでたらある疑問が出てくると思います、なぜ 192.168.0.2 と 192.168.0.3 を直接やり取りしないかと?
それは事情によりお互いに直接接続することはできず、一旦Windowsを経由しないといけなかったんです。
PHP on Google App Engine

1. Quercusライブラリダウンロード
http://quercus.caucho.com/ から Quercus 3.1.6をダウンロードする(Quercus 4.0.1は文字化けが発生するので、今回は3.1.6を使うようにする)
jar xf quercus-3.1.6.war
(quercus.jar, resin-util.jar, script-10.jar)
2. Jettyライブラリダウンロード
http://dist.codehaus.org/jetty/jetty-6.1.17/ から jetty-6.1.17.zip をダウンロード
(jetty-6.1.17.jar, jetty-util-6.1.17.jar)
3. ライブラリをlibフォルダに入れる
1と2で取得したjarファイルを war/WEB-INF/lib に入れる
4. 設定ファイル修正
4-1 appengine-web.xml
<static-files> <exclude path="/**.php" /> </static-files> <resource-files> <include path="/**.php" /> </resource-files>
4-2 web.xml
<servlet>
<servlet-name>Quercus Servlet</servlet-name>
<servlet-class>com.caucho.quercus.servlet.QuercusServlet</servlet-class>
<init-param>
<param-name>script-encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>ini-file</param-name>
<param-value>WEB-INF/php.ini</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Quercus Servlet</servlet-name>
<url-pattern>*.php</url-pattern>
</servlet-mapping>
4-3 php.ini ファイル作成
war/WEB-INF の下に php.ini ファイルを新規作成
unicode.semantics=on unicode.http_input_encoding=UTF-8 unicode.output_encoding=UTF-8 unicode.runtime_encoding=UTF-8
5. info.php
warの下にinfo.phpを作成
<?php phpinfo(); ?>
6. アクセスしてみる。
http://localhost:8080/info.php
Snow LeopardでSymfony環境を作ろう
環境確認:
$ httpd -v
Server version: Apache/2.2.11 (Unix)
Server built: May 18 2009 12:37:03
$ php -v
PHP 5.3.0 (cli) (built: Jul 19 2009 00:34:29)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies
$ pear -V
PEAR Version: 1.8.0
PHP Version: 5.3.0
Zend Engine Version: 2.3.0
0. php環境設定
$ sudo cp /etc/php.ini.default /etc/php.ini
$ sudo vi /etc/php.ini
[Date]
date.timezone = Asia/Tokyo
[Pdo_mysql]
pdo_mysql.default_socket=/tmp/mysql.sock
1. Symofnyインストール(1.0.21は不具合が発生したので、1.2.8にする)
$ sudo pear channel-discover pear.symfony-project.com
$ sudo pear install symfony/symfony-1.2.8
確認:
$ symfony -V
symfony version 1.2.8 (/usr/lib/php/symfony)
インストール先:
/usr/lib/php/symfony/
/usr/lib/php/doc/symfony/
/usr/lib/php/data/symfony/
2. プロジェクト・アプリケーション作成
$ cd Sites
$ mkdir mysymfony
$ cd mysymfony
$ symfony init-project mysymfony
$ symfony init-app myapp
3. Web(Apache)サーバー環境設定
$ sudo vi /etc/apache2/users/{username}.conf
Alias /~{username}/mysymfony/ /Users/{username}/Sites/mysymfony/web/
<Directory "/Users/{username}/Sites/mysymfony/web">
AllowOverride All
Allow from All
</Directory>
4. .htaccess修正
RewriteRule ^(.*)$ index.php [QSA,L]
↓↓↓
RewriteRule ^(.*)$ /~{username}/mysymfony/index.php [QSA,L]
5. テーブル作成
以下のようにテーブルを作成(データベース名は各自の環境にあわせる)

6. データベース接続設定
mysymfony/config/databases.yml 編集
all:
propel:
class: sfPropelDatabase
param:
classname: PropelPDO
dsn: mysql:dbname={databasename};host=localhost
username: {username}
password: {password}
encoding: utf8
persistent: true
pooling: true
mysymfony/config/propel.ini 編集
propel.database.url = mysql:dbname={databasename};host=localhost
propel.database.creole.url = ${propel.database.url}
propel.database.user = {username}
propel.database.password = {password}
propel.database.encoding = utf8
7. データベース定義ファイルの生成
$ symfony propel-build-schema
8. オブジェクトモデルの生成
$ symfony propel-build-model
9. フォーム作成
$ symfony propel:build-forms
10. CRUD機能の自動生成(scaffolding)
$ symfony propel-generate-crud myapp bbs Bbs
$ symfony cc
11. アクセスしてみる
http://localhost/~{username}/mysymfony/bbs
Jailbreak iPhone 3G OS 3.1
環境:
Mac OS X 10.6 (Snow Leopard)
iTunes 9
PwnageTool_3.1.dmg
iPhone 3G OS 3.1
PwnageToolをダウロード
http://blog.iphone-dev.org/post/188779017/3-o-fun
http://torrents.thepiratebay.org/5089960/PwnageTool_3.1.dmg.5089960.TPB.torrent
JailBreak
PwnageTool.appを起動

Expert ModeとiPhone 3Gを選択して次へ

iPhone OS 3.1に該当する ipswを選択して次へ

Generalを選択して、次へ

Activate the phoneのチェックを外して、Root partition sizeを適当に入力して次へ

デフォルトのまま次へ

デフォルトのまま次へ

デフォルトのまま次へ(CydiaとIcyをインストールしたくなければチェックを外す)

iPhone起動時、リカバリ時のロゴをカスタマイズするかどうかを選択して、次へ

Buildを選択して次へ

カスタムipswファイルの保存先を選択して、次へ

ビルド開始(途中でMacのユーザパスワードが聞かれるので入力)

Noを選択

画面に指示に従って電源ボタンを押して電源をOFF

5秒待ち

電源ボタンとホームボタンを10秒間押す

ホームボタンを押したまま、電源をボタンを離して10秒間待つ

DFU Modeになり成功

iTunesのほうで以下の警告が出ますが、気にせず、OKボタンを押してiPhoneをUSBケーブルから外してから再度コネクト

再コネクトすると、リカバリモードになる。

[option]キーを押しながら復元ボタンを押して、デスクトップに生成させたカスタムipswファイル(iPhone1,2_3.1_7C144_Custom_Restore.ipsw)を選択して、開く

JailBreak処理が開始され、後は待つだけ。
Mac OS X での httpd 設定メモ
1. 各ソフトウェア確認
$ perl -v
This is perl, v5.10.0 built for darwin-thread-multi-2level
$ php -v
PHP 5.3.0 (cli) (built: Jul 19 2009 00:34:29)
$ python -V
Python 2.6.1
2. confファイル修正
$ sudo vi /private/etc/apache2/httpd.conf
#コメントを外す(php用)
LoadModule php5_module libexec/apache2/libphp5.so
#コメントを外す(perl, python CGI用)
AddHandler cgi-script .cgi
$ sudo vi /private/etc/apache2/users/{username}.conf
# ExecCGI追加
<Directory "/Users/{username}/Sites/">
#Options Indexes MultiViews
Options Indexes MultiViews ExecCGI
AllowOverride None
Order allow,deny
Allow from all
</Directory>
3. 確認
perl.cgi
#!/usr/bin/perl
print "Content-type: text/html\n\n";
foreach(sort keys %ENV){
print "$_: $ENV{$_}\n";
}
python.cgi
#!/usr/bin/python import os print "Content-type: text/html\n\n"; for param in os.environ.keys(): print "%20s %s<br/>" % (param,os.environ[param])
test.php
<?php
phpinfo();
?>
Mac OS X に MySQL をインストール
1. セットアップファイルダウンロード
http://dev.mysql.com/downloads/mysql/5.1.html#macosx-dmg こちらから Mac OS X 10.5 (x86_64) をダウンロード
2. インストール

ディスクイメージを開いたら、デフォルトのオプションのまま、まず「mysql-5.1.38-osx10.5-x86_64.pkg」をインストール。次に、同じくデフォルトオプションのまま「MySQLStartupItem.pkg」をインストールし、さらに「MySQL.prefPane」をダブルクリック
3. 起動
システム環境設定を起動して、その他のところに「mysql」があるのでクリックして、「Start MySQL Server」
4. アンインストール
$ sudo rm -rf /usr/local/mysql
$ sudo rm -rf /Library/StartupItems/MySQLCOM/
$ sudo rm -rf /Library/PreferencePanes/MySQL.prefPane/
※ 公式とキュメントでは、「/Library/Receipts/mysql-.pkg にある旧バージョンの Package Receipt ディレクトリも削除してください」と書いてあるが、Snow Leopardではなかったので
5. 文字コードをutf8に設定
$ sudo cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
$ sudo vi /etc/my.cnf
[client]
default-character-set=utf8[mysqld]
default-character-set = utf8
skip-character-set-client-handshake
character-set-server = utf8
collation-server = utf8_general_ci
init-connect = SET NAMES utf8
mysqlサーバー再起動。
Mac OS X に Tomcat6 をインストール
1. Tomcatセットアップファイルをダウンロード
http://tomcat.apache.org/ こちらから Tomcat 6.x をクリックして、tar.gzファイルをダウンロード
2. インストール
インストールと言っても、単なる解凍、配置だけ
ターミナルを起動
$ sudo mv apache-tomcat-6.0.20.tar /usr/local/
$ cd /usr/local/
$ sudo tar xvf apache-tomcat-6.0.20.tar
$ sudo ln -s apache-tomcat-6.0.20 tomcat
$ sudo chown -R {username}:staff tomcat
$ sudo chown -R {username}:staff apache-tomcat-6.0.20
3. 起動
$ /usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
4. プラウザでアクセス
http://localhost:8080/
5. 管理者画面にアクセスする為に設定
$ vi /usr/local/tomcat/conf/tomcat-users.xml
<tomcat-users>
<!–
<role rolename=”tomcat”/>
<role rolename=”role1″/>
<user username=”tomcat” password=”tomcat” roles=”tomcat”/>
<user username=”both” password=”tomcat” roles=”tomcat,role1″/>
<user username=”role1″ password=”tomcat” roles=”role1″/>
–>
<user username=”admin” password=”admin” roles=”standard,manager,admin”/>
</tomcat-users>
Tomcat6 + jre6でのエラー解決法
エラー内容:
[info] Starting service...
[174 javajni.c] [error] 指定されたモジュールが見つかりません。
[994 prunsrv.c] [error] Failed creating java
C:\Program Files\Java\jre6\bin\client\jvm.dll
[1269 prunsrv.c] [error] ServiceStart returned 1
[info] Run service finished.
解決法:
C:\Program Files\Java\jre6\bin\下の「msvcr71.dll」をC:\WINDOWS\system32にコピーする。
Snow LeopardでRuby On Rails環境構築

1. Snow Leopardでのデフォルト環境確認
$ ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0] $ gem -v 1.3.1 $ rails -v Rails 2.2.2
2. mysql インストール
http://dev.mysql.com/downloads/mysql/5.1.html#macosx-dmg こちらから Mac OS X 10.5 (x86_64) をダウンロード。ディスクイメージを開いたら、デフォルトのオプションのまま、まず「mysql-5.1.38-osx10.5-x86_64.pkg」をインストール。次に、同じくデフォルトオプションのまま「MySQLStartupItem.pkg」をインストールし、さらに「MySQL.prefPane」をダブルクリック
3. mysql 操作
$ /usr/local/mysql/bin/mysql -u root -p Enter password:
mysql> create database mysqldemo default character set utf8;
mysql> grant all privileges on mysqldemo.* to
testuser@localhost identified by 'password';
4. gem install mysql
$ sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
(以下のエラーが発生した場合はXcodeをインストールしてください)
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb install mysql — –with-mysql-config=/usr/local/mysql/bin/mysql_config
mkmf.rb can’t find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h
Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/mysql-2.8.1 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.out
5. rails プロジェクト作成
$ rails -d mysql mysqldemo
database.yml ファイル編集
development:
adapter: mysql
encoding: utf8
database: mysqldemo
pool: 5
username: testuser
password: password
socket: /tmp/mysql.sock
6. scaffold 作成
$ script/generate scaffold user email:string name:string age:integer $ rake db:migrate
7. サーバー起動して確認
$ script/server
Leave a Comment
Leave a Comment
Leave a Comment