follow us in feedly

Mac

duコマンドを使ってMacのハードディスク容量の内訳を調べる

Macのハードディスク容量の内訳を調べる方法です。
使用量がいつのまにか大きくなっていたので調べてみました。
アプリか何かを探していたらduコマンドで確認ができるということなので使ってみました。
オプションを指定すれば表示もわかるし、これで十分という感じでした。

duコマンドでハードディスクの内訳を確認する

ターミナルを起動して、下記のコマンドを実行します。

「-h」オプションは、K(キロ)やM(メガ)などわかりやすい表示にしてくれます。
使用量はわかりやすくなりますが、きれいにソートされなくなります。

「-d」オプションは、指定した深さまでのディレクトリやファイルを表示します。

「-x」オプションは、指定したディレクトリなどがあるファイルシステムとは別のファイルシステム上の集計を含めません。

$ sudo du -h -x -d 1 / | sort -nr
Password:
944M  /.Spotlight-V100
124M  /opt
 88G  /
 55G  /Users
 23M  /Developer
 13M  /.DocumentRevisions-V100
 13G  /Applications

あとは使用量が大きいものを同じように調べていきます。
僕の場合は、Usersディレクトリですね。
結果として音楽や写真が積み上がったことで使用量が大きくなっていたみたいです。

MacのMySQLでrootパスワードを再設定する方法

今回はMacのMySQLでもrootパスワードを再設定することになりました。
前回のときにメモしといたから簡単にできるかなと思ったのですが、
あまり関係ないところでちょっとハマりました。

ちなみに、MacのMySQLはHomebrewを使ってインストールしています。
MySQLのバージョンは5.5です。

my.cnfを設定する

my.cnfに「skip-grant-tables」を追加します。
まずは、デフォルトの設定ファイルをコピーします。
自分用の環境だからどれでもいいかな、ということでmy-large.cnfにしています。

$ cp /usr/local/Cellar/mysql/5.5.19/support-files/my-large.cnf /usr/local/var/mysql/my.cnf

設定ファイルについては下記が参考になります。
my.cnfのデフォルト設定ファイル – Liquidfuncの日記

/usr/local/var/mysql/my.cnfに「skip-grant-tables」を追加します。

[mysqld]

skip-grant-tables

MySQLを再起動します。
自動起動がONなっている場合は「mysql.server stop」だけでいけます。
自動起動をOFFにする方法は下記補足を参照してください。

$ mysql.server stop
$ mysql.server start

新しいrootパスワードを設定する

MySQLサーバに接続して、新しいrootパスワードを設定します。

$ mysql -u root mysql
Enter password:

mysql> UPDATE user SET Password=PASSWORD('mynewpassword') WHERE User='root';
mysql> FLUSH PRIVILEGES;

/usr/local/var/mysql/my.cnfに記述した「skip-grant-tables」を削除して、
MySQLを再起動します。

$ mysql.server stop
$ mysql.server start

MySQLに接続できるか確認して完了です。

$ mysql -u root -p
Enter password:

補足: MySQLの自動起動をOFFにする

MySQLの自動起動はデフォルトではONになっているので自動起動をしない設定します。
自動機能の設定は起動スクリプトに記述します。
~/Library/LaunchAgents/homebrew.mxcl.mysql.plistの「KeepAlive」を「false」に変更します。

変更前:
<key>KeepAlive</key>
<true/>

変更後:
<key>KeepAlive</key>
<false/>

launchctlコマンドを実行してスクリプトを再読み込みすれば、自動起動がOFFになります。

$ launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
$ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

tmuxで lanchctl load を実行するとエラーになる

launchctlコマンドを実行しするところでエラーが出ました。
Bugとか言ってる。

$ launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Bug: launchctl.c:2425 (25957):13: (dbfd = open(g_job_overrides_db_path, O_RDONLY | O_EXLOCK | O_CREAT, S_IRUSR | S_IWUSR)) != -1
launchctl: Error unloading: homebrew.mxcl.mysql

loadでやってみても同じ。

$ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Bug: launchctl.c:2425 (25957):13: (dbfd = open(g_job_overrides_db_path, O_RDONLY | O_EXLOCK | O_CREAT, S_IRUSR | S_IWUSR)) != -1
launch_msg(): Socket is not connected

調べてみると下記を見つけました。
Mac OS Xのtmux内でlaunchctl load -w したらBug: launchctl.c:2406 (25182):13:って怒られるよねって話: 麦汁三昧

tmuxを使っていると上手く動かないみたいです。
tmuxの外で実行したらできました。

HomebrewでRuby 1.9.3をインストールする

新しい職場では Ruby を使うことになりそうなので、勉強のために Ruby をインストールしました。
Mac にはデフォルトで Ruby が入っているようですが、バージョンが 1.8 と古いものなので最新版の Ruby をインストールします。

Homebrew で Ruby をインストールする

Homebrew で Ruby 1.9.3 をインストールします。
まずは、Ruby のバージョン管理ツールの rbenv と readline をインストールします。

$ brew install rbenv
$ brew install ruby-build
$ brew install readline
$ brew link readline

.bash_profile や .bashrc あたりに下記を追加します。

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

Ruby をインストールします。
rbenv install とするとインストールできる候補の一覧が表示されます。

$ rbenv install
$ CONFIGURE_OPTS="--with-readline-dir=/usr/local" rbenv install 1.9.3-p125
$ rbenv rehash
$ rbenv global 1.9.3-p125
$ ruby -v
ruby 1.9.3p125 (2012-02-16 revision 34643) [x86_64-darwin11.3.0]

Ruby をインストールするところで GCC がないと下記のようなエラーが出るので、その場合は kennethreitz/osx-gcc-installer から GCC をダウンロードしてインストールします。
Homebrew で GCC をインストールする場合はこちら

$ rbenv install 1.9.3-p125

ERROR: This package must be compiled with GCC, and we
couldn't find a suitable `gcc' binary on your system.
Please install GCC and try again.

As of version 4.2, Xcode is LLVM-only and no longer
includes GCC. You can install GCC with these binary
packages on Mac OS X:

https://github.com/kennethreitz/osx-gcc-installer/downloads

BUILD FAILED

以上で完了です。

Command Line Tools for Xcodeへの切り替えとHomebrewでGCC 4.7をインストールする方法

Rubyをインストールしようと思ったら、GCCがないと言われてインストールできなかった。
いろいろ調べてみたら、Xcode 4.2以降ではGCCからLLVM GCCに代わっているというのでHomebrewでGCCをインストールしました。

ついでにXcodeをCommand Line Tools for Xcodeに切り替えました。
自分の場合、Xcodeを使うのはHomebrewぐらいだからCommand Line Tools for Xcodeで十分だし、HDDの容量の削減にもなるので。
ちなみに、Command Line Tools for XcodeはLionのみ使えます。

Command Line Tools for Xcodeをインストールする

まずは下記コマンドを実行してXcodeをアンインストールします。

$ sudo /Developer/Library/uninstall-devtools --mode=all

Downloads for Apple DevelopersからCommand Line Tools for Xcodeをダウンロードしてインストールします。
インストーラーを起動して進めていけばインストール完了です。

Command Line Tools for Xcodeに含まれるソフトは下記コマンドで確認できます。

$ cd /Volumes/Command Line Tools/Packages/
$ pkgutil --payload-files DeveloperToolsCLI.pkg

HomebrewでGCC 4.7をインストールする

HomebrewでGCCをインストールする場合には、homebrew-altからインストールします。
下記コマンドを実行してGCC 4.7をインストールします。
make bootstrapのところは時間がかかります。

$ brew install https://raw.github.com/Homebrew/homebrew-dupes/master/gcc.rb --enable-all-languages --use-llvm

以上で完了です。

Macのローカル環境に構築したWordPressでパーマリンク設定をおこなう

ローカル環境でも WordPress のパーマリンク設定をしてみました。
あまり必要ないかもしれないですが、VPS と同じかたちにしとこうと思ったので。
Apache での設定をためしてみるという意味も少しあります。

.htaccess ファイルを作成する

WordPress のルートディレクトリ に .htaccess ファイルを作成します。
ターミナルを起動して下記コマンドを実行します。

$ touch .htaccess

パーマリンクの設定を行う

WordPress ページにアクセスしてダッシュボードの [設定] – [パーマリンク設定] から設定します。
VPS での設定と同じにするので下記のようにします。

/archives/%post_id%

変更を保存すると .htaccess に下記のコードが記入されます。
書き込み権限の設定などで自動記入されないときは手動でコピーします。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /~hoge/wordpress/
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /~hoge/wordpress/index.php [L]
</IfModule>

# END WordPress

Apache で .htaccess を使用可能にする。

作成した .htaccess ファイルの設定が有効になるように設定します。
/etc/apache2/users/hoge.confを下記のように変更します。

<Directory "/Users/hoge/Sites/">
    Options Indexes MultiViews SymLinksIfOwnerMatch
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

Apache を再起動します。

$ sudo apachectl restart

ブラウザから自分のページにアクセスするとパーマリンクが反映されていると思います。

MacでWordPressのローカル環境を構築する

Mac で WordPress のローカル環境を構築します。
WordPress のテーマやプラグインなどカスタマイズするとして、最初からサーバ上で作るわけにもいかないしローカルであれば手軽に試すこともできるので。
MAMP ならインストールして完了なんですが、ちょっと面倒なことになったこともあるので個別に準備します。
Homebrew もインストールしたことだし。

Webサーバ を起動する

Mac には標準で Apache がインストールされているので起動するだけで使えるようになります。
[システム環境設定] – [共有] にある [Web 共有] にチェックを入れれば完了です。
ブラウザを立ち上げて、下記にアクセスするとページが表示されます。
http://localhost/~username

Homebrew で PHP をインストールする

Homebrew で PHP をインストールします。
Mac には PHP も標準で入っているようですがインストールします。
まず、Formula を落として Homebrew のディレクトリに移動します。

$ curl -O https://raw.github.com/ampt/homebrew/php/Library/Formula/php.rb
$ mv php.rb `brew --prefix`/Library/Formula

brew コマンドを実行してインストールします。オプションは Apache と MySQL を指定します。
MySQL が入っていない場合はインストールされます。

$ brew install php --with-mysql --with-apache

インストールが完了したら、パスをとおすため .bash_profile に下記を追加します。

export PATH="`brew --prefix`/bin:$PATH"

確認して、下記のようになれば OK です。

$ which php
/usr/local/bin/php

Apache の設定をします。/etc/apache2/d.conf に下記を追加します。

#LoadModule php5_module libexec/apache2/libphp5.so ← こちらは標準でインストールされているほうの設定
LoadModule php5_module /usr/local/Cellar/php/5.3.10/libexec/apache2/libphp5.so

Homebrew で MySQL をインストールする

Homebrew で MySQL をインストールします。
brew コマンドを実行してインストールします。
PHP のときにインストールされてると思うが念のために書いておく。

$ brew install mysql

インストール時にメッセージが表示されるので、それに従って設定します。
現在のユーザアカウントでデータベースをセットアップします。

$ unset TMPDIR
$ mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

MySQL を起動します。

$ mysql.server start

ログイン時に自動起動するように設定します。

$ mkdir -p ~/Library/LaunchAgents
$ cp /usr/local/Cellar/mysql/5.5.19/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/

MySQL の root パスワードを設定します。

$ /usr/local/Cellar/mysql/5.5.19/bin/mysqladmin -u root password 'password'

MySQL サーバに root で接続する。

$ mysql -u root -p
Enter password: password

MySQL に WordPress 用のデータベースを作成する

MySQLサーバに接続して、データベースを作成します。

mysql> CREATE DATABASE wordpress DEFAULT charset utf8;

データベースのユーザを作成します。

mysql> GRANT ALL ON wordpress.* TO wpuser@localhost IDENTIFIED BY 'password'

WordPress をインストールする

WordPress をダウンロードして、/Users/username/Sites に展開します。
Finder だと [Macintosh HD] → [ユーザ] → [username] → [サイト] です。

$ cd /Users/username/Sites
$ curl -O https://ja.wordpress.org/latest-ja.zip
$ unzip latest-ja.zip

wp-config.php を作成して、WordPress の設定をします。

$ cp wp-config-sample.php wp-config.php
$ vi wp-config.php

下記の部分を修正します。FS_METHOD は追加します。

define('DB_NAME', 'wordpress');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', 'password');
define('FS_METHOD', 'direct');

ブラウザから http://localhost/~username/wordpress/wp-admin/ にアクセスして設定を行えば、ローカル環境で WordPress が使えます。

HomebrewでMacのパッケージ管理を行う

Macのパッケージ管理にはHomebrewを使っています。
MacPortsを使っていたんですが、MacPortsは依存関係のあるソフトウェアがすでにMacに入っていても、
新しくインストールしてしまうのでHomebrewに移行してみました。

MacPortsをアンインストールする

MacPortsを使っている場合はアンインストールします。
MacPortsでインストールしたパッケージも消えてしまうので注意です。

$ sudo port -f uninstall installed
$ sudo rm -rf /opt/local

Homebrewをインストールする

Homebrewをインストールします。
インストールには以下が必要です。自分は特に問題なし。

下記を実行してインストールします。

$ /usr/bin/ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)"

Homebrewのコマンド

Homebrewで使用する基本的なコマンドです。
HomebrewではパッケージのことをFormula(フォーミュラ)と呼びます。

Homebrewのバージョンを表示する。

$ brew --version

Homebrewと管理しているFomulaをアップデートする。

$ brew update

Fomulaを検索する。

$ brew search hoge

Fomulaの情報を表示する。

$ brew info hoge

Fomulaをインストールする。

$ brew install hoge

Fomulaをアンインストールする。

$ brew uninstall hoge

インストールしたFomula一覧を表示する。

$ brew list

参考サイト

Homebrew — MacPorts driving you to drink? Try Homebrew!
Installation · mxcl/homebrew Wiki · GitHub