Raspberry PI 2 : SDカードのパーティション拡張設定とEmacsビルド

Raspberry PiはOSをインストールすると、そのSDカードの容量によらずパーティションサイズが3GB になってしまうようで、Emacsビルドなど作業領域を確保をするためには、パーティション拡張が必要です。

というか何かしようと思ったらほぼ必須な気がするので、初期設定の一環ですね。HDMIでモニタ出している人はGUIでできるのかもしれないです。

sshからパーティションの拡張を行うには、下記を参考にさせていただきました。

サイズ拡張

ほとんど参考サイトそのままでできます。

  • df -h/dev/mmcblk0p1を確認する(デバイス名はp1手前まで)
  • fdiskでパーティションを作り直す
  • resize2fsでサイズ変更

自分のメモとして書いておくと、

まず、100%近くまで使われているディスク状況を確認して、mmcblk0があることを確認。

1
2
3
4
5
$ df -h
Filesystem     Size Used Avail Use% Mounted on
rootfs
...
/dev/mmcblk0p1  xxx  xxx   xxx xxx% xxxxxxxx

続いてfdisk

1
$ sudo fdisk /dev/mmcblk0

で、以下fdisk操作:

  • p : パーティションのアドレス情報などを表示(p2の隠しパーティションの情報を確認)
  • d : 隠し部分のパーティション削除
  • 2 : 2番目のパーティションなので、2を指定。
  • p : 結果確認
  • n : 新しいパーティション作成
  • p : primaryを指定
  • 2 : 2番目のパーティションを指定
  • 数字 : 最初のpで表示した2番めのパーティションのstartアドレスを指定
  • `` : 何も入力しない。(デフォルトでOK)
  • w : 変更を書き込み。

そして、一旦再起動して

1
$ sudo resize2fs /dev/mmcblk0p2

これで、完了。df -hなどで既存のパーティションが拡張されているか確認します。 非常にわかりやすい記事で助かりました。

Emacsビルド

Raspberryはやはりというかなんというか、Emacsは入っていません。pythonでもNode.jsでもコード書くのにEmacsは書かせません。入れます。

こちらの記事を参考にしました。

RaspberryPi - Raspberry PiでEmacs 24.5とCaskを使う - Qiita

GNUからEmacsの最新コードをとってきてビルドすればOKです。(僕はCaskは使っていません) 端末利用なので、–without-x付きでビルドするのがポイントです。

1
2
3
4
5
6
7
$ sudo apt-get install build-essential automake texinfo libncurses5-dev
$ wget http://ftp.gnu.org/pub/gnu/emacs/emacs-24.5.tar.xz
$ tar -Jxvf emacs-24.5.tar.xz
$ cd emacs-24.5
$ ./configure --without-x
$ make
$ sudo make install

作業領域を確保していないと、ビルドに失敗するので、上述のパーティション操作を行ってからビルドをすれば問題ないです。

ちなみに、emacsclientをX Systemでないところで使うには、まず下記を使ってEmacsの退避と復帰を覚えます。

  • Ctrl + Z : 一旦退避
  • fg : プロセス復帰

Serverさえ起動していれば、emacsclientで既に起動しているEmacsでファイルを開けます。毎回Emacsを起動していると、人によっては時間かかるので端末上でもemacsclientがオススメです。

Built with Hugo
テーマ StackJimmy によって設計されています。