フェムトセカンド #七味とーがラジオ / @melonsode

The Destination is unknown. The Journey is the Reward.
Author: 野澤真一 / NOZAWA Shinichi , version 2.0220330 / Podcast: 七味とーがラジオ / twitter: @melonsode

Mac: 2009年アーカイブ

Datsugoku iPhone

|

カテゴリ:

iPhoneを買ってしまいました。
ヤフオクでほぼ新品の中古を落札。

それが今日届いて、一日中いじり倒していたら、奥さんが不機嫌に。
ごめん・・・。

正規に購入したのではないので、当然SIMカードが刺さっておらず、
緊急電話以外はかけることができない。
つまり、そのままではほとんど文鎮と変わらない。

仕方なくJailbreakしました。
だから起動画面がAppleではなくPineAppleになっちゃってる。

なんで買ったの?って思う人が多いと思うのだけど、
カメラ付きiPod touchが欲しかったの。
一日中いじり倒してみて、確信したけど、
これを持つと人生が変わる。

* * *

明日は大阪に行きます。

blog blog blog ...

|

カテゴリ:

古いMac(PowerBook 12inch)と今使ってるMac(MacBook Air)に
ブログソフトMovableTypeをインストールした。

バイト先で扱っているだけあって、MTのインストールはさくっとできる。
MTのバージョンが4.23になって、
以前よりもずっと簡単になった。

mt-config.cgiというファイルを編集しなくてもいい。
ウィザードが自動でやってくれる。

昔はわからなかったデータベースの扱いも慣れてきて、
ブラックボックスなところなしに、インストール作業ができる。

いま、Web系の知識がすごい勢いで頭の中に流れ込んできている。
学習と意欲のポジティブフィードバック回路が絶賛作動中。

少し勉強すると少し知識が身につく。
知識が身につくと、さらに身につけることができる知識の地平が広がる。
何かが分かると(知識がつくと)うれしい。
うれしいから、もうちょっと勉強してみる。
わかってうれしい。もうちょっとやればわかりそうなことが増える。
だからまた勉強してします。
その連鎖。

PowerBookには手動でIP Addressを設定して、我が家のサーバーとして
活躍してもらうことにした。
LAN内アクセス限定。
もう少し知識がついたらグローバルにアクセスできるようにしたい。

PowerBookはまだOSがTigerで、
UNIX的なことをさせようとすると、Leopardの方が
格段に扱いやすいということがわかってきた。

memo: apache

|

カテゴリ:

Apacheの設定に関してメモ。

設定ファイル
/etc/httpd/conf/httpd.conf

ウェブに公開しているフォルダの構成が
/var/www/の下のhtmlとcgi-binというフォルダ。
これだとHTMLなどの静的ファイルはhtmlフォルダに、
Perlなどの実行されるファイルはcgi-binにということで、
面倒くさい。

ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

の行を書き換えて、htmlに設定し直せばいいのかと
思っていたけど、そうでもない。

ScriptAlias / "/var/www/html/"

としてみたけど、こうするとCSSやFlashなどの外部埋め込みファイルを
読み込まなくなるし、
Apacheを起動したときに、warningがでる。

で、htmlフォルダ以下でもCGIを実行したい場合は

AddHandler cgi-script .cgi

のコメントアウトを外して、
それから、

<Directory "/var/www/html">
....
</Directory>

この中に、

Options ExecCGI

を追加すればよいみたい。

server

|

カテゴリ:

Apacheの設定ファイルをよく読んだ。
Mac OS X 10.5 Leopardの場合、apacheの設定ファイルhttpd.confは
「/etc/apache2/httpd.conf」にある。
結局、変更はしなかったけど、なんとなく感触がつかめてきた。

サーバーの一部のディスクスペース上で、限られた権限で
データの書き換えや実行を行う段階から、
サーバーを直接いじって、誰にどこで何をさせるかという
メタな部分の設定もできるようになりつつある。

サーバーを扱えるようになると、いろいろできることが広がる。
MacBook Airの前に使っていたPowerBookを
サーバーとして使ってみようかと企んでいる。
とりあえずサーバーとして動作させるのはMac OS Xのデフォルトでできるので、
やろうと思えば簡単だが、
問題は外部に公開したときのセキュリティである。
そこらへんはわりと慎重に考えないといけない。

MacBook Airはセカンドマシンとして使うものだ、というのは
よく聞く話だけど、いまのところ自分はメインマシンとして使っている。
個人的にはHDDの容量が小さいことを除けば、
メインマシンとして耐えうるものだと思う。

でも、HDDが小さい、というのは無視できない大問題なわけで。
いまのところ、直近に必要なデータしか入れないという方針で
やっているので、何とかもっている。

pic.png

それで、その他のデータは
サーバに積んでおいて、
必要になったら
ネットワーク経由で取得
できるようにできたら、
というのが密かな野望だ。

なかなか茂木さんの
音声データが復旧しないので、
そのための場所を提供できたら、
という思惑もなくもない。

でもまあ、もう少し先の話です。

MySQL in Mac OS X Leopard

|

カテゴリ:

MySQLをMacにインストールしたので、そのレポート。

基本的に前回紹介したfutomiさんのページにあるやり方で
あっさりインストールできる。

Max OS X LeopardでAMP環境を構築しよう - Apache, MySQL, PHP, Perlで作る開発環境

MySQLをダウンロードするときに
「x86」でいいのか、「x86_64」にするのか迷った。
僕の使っているMacBook AirのCPUは32bitなのか64bitなのか?
わからなかったので、32bitだと踏んで「x86」の方をダウンロード。
結果的にMySQLは動いているので、こちらで良かった模様。

MySQLがインストールできたら、MySQLを稼働させる。
これはターミナルで

sudo /Library/StartupItems/MySQLCOM/MySQLCOM start

と打っても起動できるし、もっと簡単なのはシステム環境設定で、
MySQL startのボタンを押すだけでいい。

これでMySQLサーバが稼働し出すのので、MySQLを使うことができる。

ターミナルで、次のように打てばMySQLがインタラクティブモードで
起動する。

sudo /usr/local/mysql/bin/mysql -u root -p

もし以下のように表示されてしまったら、
MySQLサーバを起動し忘れているのだと思う。
その場合は上に述べた方法で起動してあげよう。

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

さて、MySQLを起動するのに、わざわざ
「/usr/local/mysql/bin/mysql」と打たなければならないのは面倒くさい。
「mysql」と打つだけで起動して欲しい。
そこで、MySQLのインストールされている場所をPATHに追加する。

パスの追加の仕方は以下のリンクを参考に。
ターミナルのことを調べてみた。 - ザリガニが見ていた...。
gnuplot can't show graphs - フェムトセカンド

ここでも簡単に述べておく。
通常、何もしていないMacだと「.bash_profile」というファイルはないので、
まずはそれを作るところから始めないといけない。
「.bash_profile」があるかどうかは、次のように打てば確かめられる。

ls -a ~/

これで出てこなければないということになる。
このコマンドは「~/ フォルダ以下のすべての( -a )ファイルを表示( ls )せよ」という意味。

「 ~/ 」とはそのユーザのホームディレクトリを指す。(正確にはエイリアス?)
もし「-a」を忘れると、ピリオドで始まるファイルは
隠しファイルなので無視される。

「.bash_profile」を作成、あるいは修正するにはテキストエディタを使えばよい。
ターミナル上で動くテキストエディタは「vi」が有名だけど、
初心者には「pico」の方が簡単でいいかもしれない。

pico .bash_profile

と打つことで、.bash_profileを開いてくれる。
なければ新たに作って開いてくれる。

開くと次のような行があると思う。

export PATH=/opt/local/bin:/opt/local/sbin:/opt/local/lib:$

厳密に同じではなくても、PATH=となっている箇所。
ここに、mysqlのパスをくっつければよい。
例えばこんな風に。

export PATH=/opt/local/bin:/opt/local/sbin:/opt/local/lib:/usr/local/mysql/bin:$

書き換えたら「control + O」を押す。
commandではなくコントロール・オー。
これで書き込みますか?と(英語で)聞かれるので
エンターキーを叩いてYesと答える。
そして「control + X」でpicoを終了する。

これでPATHは書き換わったはずだが、
ターミナルがそのことに気付いていないので、
そのウィンドウを一度閉じて、新しいウィンドウを再度開くことで
読み込みが成される。
(Linuxなら「source .bash_profile」と打てば再読込されるはずだが、
 Macでそれをやっても駄目なようだ。
 何故だかはわからない。)
そうしたら、mysqlがどこにあるか聞いてみよう。

which mysql

と聞くと、

/usr/local/mysql/bin

と教えてくれるはずである。
そうして、これでただmysqlと打つだけでmysqlが起動する。

******:~ shinichi$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.0.67 MySQL Community Server (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

mysql以外にも、mysqladminやmysqlshowなどのコマンドも
そのままで使えるようになっている。

* * *

関連記事:This is MAMP, not LAMP! - フェムトセカンド

dscl: adding host name and IPAddress

|

カテゴリ:

あるホスト名とIPAddressを対応させたいとき、
Linuxならば/etc/hostsにあるファイルにそのペアを書き込めばいい。
(例えばこのページを参照:信州大学 7.2 ネットワークの設定

たとえば、自分自身に「http://localhost」とブラウザに打ち込むと
アクセスできるのは/etc/hostsファイルに「127.0.0.1」と
そのホスト名がペアで登録されているからである。

そのことは、たとえばシェルで
「cat /etc/hosts」とやれば見ることができる。
MacもLinuxベースのOSなので、
ターミナルを起動して、同じように打てばそのファイルを見ることができる。
ちなみに「cat」というのはファイルを表示するためのコマンドである。

バイト先でIPアドレスが「192.168.1.50」になっているサーバーに
「http://hogehoge/」というホスト名でアクセスしたい。
Linuxならばvi(テキストエディタ)などで/etc/hostsファイルを開いて、
そこに「192.168.1.50 hogehoge」と一行追加すればよい。

では、Macでそれをやるにはどうしたらいいか?
この場合、Linuxと同じようにはいかない。
viなどをつかって/etc/hostsファイルを書き換えても、
何故か元に戻ってしまうからである。

MacではNetinfo ManagerかDSCLを使わねばならない。

もし使っているOSがMac OS 10.4場合は「Netinfo Manager」という
Macにデフォルトで入っているソフトを使います。
その使い方については以下のページできちんと解説されているので、
そちらを参考にしてください。
/etc/hostsファイルの代わりに・・・

使っているOSがMac OS 10.5の場合はdsclという
コマンドラインソフトを使います。
何故、Netinfo Managerを使わないかというと、
OS 10.5以降はNetinfo Managerが含まれていないからです。
参考:Mac OS X 10.5: 以前「NetInfo マネージャ」にあったいくつかの機能の代わりにコマンドラインユーティリティ "dscl" を使用してください

以下で、dsclを使ったhost nameの登録の仕方を簡単に説明します。

まず、ターミナルを起動します。
そして、以下のように入力します。

sudo dscl

そうすると、パスワードを聞かれるので、
そのMacの管理者権限のパスワードを入力してください。
戸惑うかもしれませんが、Macを起動して
ログインするときのパスワードで大抵はOKです。
そうすると次のようになります。

*****:~ shinichi$ sudo dscl
Password:
Entering interactive mode... (type "help" for commands)
>

「sudo」というのは「superuserでDoする」という意味だと
(僕は勝手に)解釈していますが、
すなわち、管理者権限でそのコマンドを実行するという意味です。
sudo抜きの「dscl」だけを打ち込んでも
dsclは起動しますが、管理者権限をもっていないため、
ホスト名を追加するという処理ができません。
なので、sudoを使います。
sudoはLinuxを日常的に使う人にとってはおなじみのコマンドでしょう。

インタラクティブモードで起動したら、
「hogehoge」というホスト名を「192.168.1.50」に対して設定するために、
以下のように入力してエンターを押します。

-create /Local/Default/Hosts/hogehoge IPAddress 192.168.1.50

これで、登録OKです。
次のように打つことで確認ができます。

-list /Local/Default/Hosts/  (これでファイルができてるか確認)
-readall /Local/Default/Hosts/ (これでそのフォルダ内のファイルの中身全てを見られる)

これできっと「http://hogehoge」とブラウザのアドレスバーに入力するだけで、
「192.168.1.50」にアクセスできるようになったでしょう。

ところで、何故「/Local/Default/Hosts/」に登録したのかは
自分でもあまりよくわかっていません。
試行錯誤したら、ここにしか登録できなかったからです。
dsclを起動して、「ls」と打ってみてください。
そうすると

BSD
Local

Search
Contact

という反応があると思います。
調べてみたところ、hostsファイルらしきものは

BSD/local/Hosts
Local/Default/Hosts

この内、データを書き込めたのはLocal/Default/Hostsのほうのみでした。

なので、

-create /Local/Default/Hosts/hogehoge IPAddress 192.168.1.50

としたのです。

このカテゴリの年別アーカイブ

プロフィール

月別アーカイブ

全アーカイブ

フェムトセカンド1.0


メールを送る(故障中)