今さら、Mavericks インストールメディア作成の備忘録

さて、もぉYasemite が行き渡り始めている昨今、Yosemite のインストールディスクならまだしも、Mavericks かぃっ! と言われそうですが、同じっぽかったので、とりあえず、Mavericks で、と思った次第。
まぁ、すでに先人がおられるので、リンクは張っておきますが、そのページが無くならないとは限らないので、自分でやってみたのを、備忘録で。

用意するのは、8GB 以上のUSBメモリか、SDカードでも可能と思われる、が、SDカードの方が寿命が短いと思われるのと、Class10 以上の読み書き速度が必要だろう、ということも考えられるため、あくまでも、安価に予備のインストールメディアを確保しておこう、という観点で、8GB のUSBメモリ としておきます。

次に、まぁ当たり前ですが、Mavericks をインストールできるMac が必要です。

また、現時点においては、Mavericks を、一度以上ダウンロードしたことがある、Apple ID も必要と思われます。

App Store を起動し、OS X Mavericks を探し、ダウンロード ができないのか…。

んー、Mavericks をダウンロードしたけど、インストールしないで、一旦終らせたから、OS X Mavericks インストール.app
が手元にある人、前提で…。

なお、日本語環境だと、ローカライズされて、上記のようなアプリ名となっているが、実態は「Install OS X Mavericks.app」です。

この先は、実は、アップルのサポートでも用意されている手法です。
ただ、このサポート情報が、なぜか日本語約されていない(怒)。

Create a bootable installer for OS X Mavericks or Yosemite
Google翻訳を↑ページに適用すると、何となくはわかるかも。。。

まずは、用意した8GB USBメモリを、Install OS X Mavericks.app が存在するMac へ挿し、マウントします。
ディスクユーティリティ.app を起動します。
マウントしているボリュームではなく、1つ上にある、8.33 GB Flash Disk Media だとか、そんな感じで表示される、メディア名称を選択します。
すると、右側で、「パーティション」というタブが出現します。
パーティションのレイアウト で、「1パーティション」を選択し、下の方にある「オプション」をクリックします。
3つ選択肢があると思うので、「GUID パーティションテーブル」を選択し「OK」をクリックします。
名前 は、後で消えるので適当で良いのですが、私はとりあえず、MavericksRestore としました。

フォーマットは、「Mac OS 拡張(ジャーナリング)」を選択し、右下の「適用」をクリックすると、パーティションが生成され、フォーマット済みとなります。

次に、ターミナル.app を起動します。

sudo su

と入力し、リターン をすると、Password: と出るので、現在ログインしているMac のパスワードを入力し、リターン します。

たいてい、sh-3.2#
という文字列が、行頭に表示されます。

念のため、sudo で始め
次に、「OS X Mavericks インストール.app」を↑のターミナルの画面へ、ドラッグ&ドロップします。
すると、/Applications/Install\ OS\ X\ Mavericks.app
と表示されるハズなので、最後の半角スペースを消し、

/Contents/Resources/createinstallmedia --volume 

と入力します。

半角スペースを空けて、先ほどフォーマットした「MavericksRestore」を、デスクトップから、ターミナルの画面へ、ドラッグ&ドロップします。
「MavericksRestore」でない名称にしている場合は、フォーマット時に指定した名前の、USBメモリのマウントしている、白いディスクアイコン、です。
また半角スペースを空けて、

--applicationpath 

と入力します。

そして、再度、「OS X Mavericks インストール.app」を↑のターミナルの画面へ、ドラッグ&ドロップします。
半角スペースを空けて、

--nointeraction

と入力します。

ここまでの入力で、

/Applications/Install\ OS\ X\ Mavericks.app/Contents/Resources/createinstallmedia --volume /Volumes/MavericksRestore/ --applicationpath /Applications/Install\ OS\ X\ Mavericks.app --nointeraction

となっていることを確認しましょう。それぞれのパラメータが、ハイフン2つつなぎなのですが、なぜかうまく適用されない場合があるようです。
“You must specify both the volume and install application path.”
なんつーエラーが出る時は、面倒ですが

/Applications/Install\ OS\ X\ Mavericks.app/Contents/Resources/createinstallmedia

--volume 

/Volumes/MavericksRestore/

--applicationpath 

/Applications/Install\ OS\ X\ Mavericks.app

--nointeraction

と、パラメータ部分は、手動で打ってみましょう。WordPress 等で余計なお世話をしていることがあるようです。

入力が確認できれば、リターン します。

Erasing Disk: 0%… 10%… 20%…100%…
Copying installer files to disk…

という表示で、しばらく止まります。適当に、Facebook を見るなり、時間をつぶしましょう。

Copy complete.
Making disk bootable…
Copying boot files…
Copy complete.
Done.
sh-3.2#

という最初の行頭文字列表示に戻れば、完了です。
USBメモリの名称が、Install OS X Mavericks と変わっているハズです。

以上で、起動可能なMavericks インストールメディアが完成しました。

確認するには、システム環境設定 を起動して、起動ディスク を選択した時に、「Install OS X Mavericks OS X 10.9」というディスクが見えていれば、起動ディスクとして認識されています。
そのままインストールに進みたい場合は、そのUSBメモリを選択し、再起動、で、インストールに進めます。

他のMacで使いたい場合は、起動していないMacなら、作成したUSBメモリを挿して、パワーキーを押し起動音がしたらすぐに、option キーを押し続けます。
画面に、USBメモリのアイコンで、10.9 となっているモノがあれば、それを選択して、インストールに進めます。

覚書 Basic認証

OSX の Server.app を使っても、Basic認証などは、結局ターミナルだの、手作業が必要となる。自分の覚書を兼ねて、たまにはサーバー関連のことを書いておく。

先日来、お仕事就業先で、“htaccess は使えるようにしてるけど、非公開ディレクトリは使えないから、Web root 以下で、htaccess で、適当にdeny してくれ”という、めんどくさいというか、中途半端なサーバをハード的にしか管理してくれないところに、Webを置くことになっている。

そこで、Basic 認証を安全に動作させるために、無い頭を捻って考えた。

まず、htpasswd を置くディレクトリを、root 直下に作成する。
_dir とか、セキュリティ的に気になるなら、ランダム16桁ぐらい生成してみて、ディレクトリにしても良いだろう。
そこに、まずは htaccess.txt などで htaccess用ファイルを生成。

order deny,allow
deny from all
allow from localhost

が最小限で、もし、自宅サーバなどで192.168~ で入れる、などあるなら、
allow from 192.168.0.0/8
など、適宜設定。
htaccess.txt を、.htaccess へ書き換えて設置完了。
これで、このディレクトリ以下は、同一サーバ内からのアクセス(と、追加したIPやドメインがあれば、そこから)だけが許可されるようになる、ハズ。
スマートフォンなど、確実に外部環境になるモノから、アクセスして確認してみよう。

次に、同じディレクトリに、htpasswd.txt を生成。
パスワードの生成だが、Macを使ってるなら、Apache が動作中なので、ターミナルを起動して、いきなり
htpasswd -c /Users/Shared/passwd.txt [UserName]
とか打って大丈夫。[UseName] は、各自、設定したいユーザー名を入れること。
Password の設定行になるので、適宜設定。
再入力して、パスワード生成完了。
/Users/Shared/passwd.txt を開いたら、1行ユーザー名:パスワード が生成されているので、それをコピー。
htpasswd.txt
へペーストして、保存。

htpasswd.txt を、上記htaccess制限したディレクトリへ移動。.htpasswd へ書き換えて設置完了。

続いて、Basic認証させたいディレクトリへ移動。
ここでも、htaccess.txt を生成。
今度は、
AuthUserFile /root/web/user/_dir/.htpasswd
AuthName ” sec.area ”
AuthType Basic
require valid-user
などという、最低限の設定を書く。

見て予想が付く人も居るかと思うが、AuthUserFile に続く
/root/web/user/_dir/
などは、URLではなく、サーバでのフルパスが必要となる。

これが、不明な場合は、_dir 内などで、phpinfo を置いて、PHPの情報を確認すると、フルパスが判明する。このphpinfo ファイルがある位置がわかりやすいだろうから、
SCRIPT_FILENAME
あたりを見れば、フルパスが表示されているだろう。

htaccess.txt を、.htaccess へ書き換えて設置完了。

なお、設置完了と同時に、.htaccess は効くため、すでに公開中のディレクトリへ設置したい時は、一旦、上記4行の頭に # を付けて、コメントアウトとしておいて、設置。
認証エリアとなることを周知してから、 # を削除して保存、という手順を踏む必要がある。

と、別に習ったわけではないので、どっかに穴があるかもしれませんが、Basic認証自体は、これで動作しているのを確認。
.htpasswd を、どうやって安全に隠すのか、を、サーバ屋さんでそういう情報を出してくれている人が居ないか、検索してみようと思う。

NASなどの接続不良にも、効果有り!

とある所で、「AFPサーバーとの接続に問題のある人は、
自分のホーム/Library/Preferences/.GlobalPreferences.plist
を消して、再起動すると良いらしい。」
という記述を発見。

ちょうど先日、地元のダチから、自宅のNASへSMB接続が、前日まで動いていたはずなのに、次の日からなぜかできなくなった、というヘルプをもらっていた。
ユーザを変えるとつながる、ということから、ユーザごとの設定ファイルには違いない、とはわかっていたのだが、ファイルの特定に至っていなかった。
まさか、隠しファイルとは、思い至らなかったわけで。。。

前述ファイルを削除して、無事、つながったとのこと。みなさんも、NASなどで接続ができなくなった! という時には、お試しください。