個人メモ用にRaspberry PiにSSH接続してからやることをまとめておきます。SSH接続するまでは以下の記事にまとめています。
流れ
useradd
まずはpi
でログインする。このユーザーは新しくsudoグループに所属しているユーザーを追加するまで使用する。
任意のユーザー名でユーザーを作成する。デフォルトで追加されているpi
ユーザーはセキュリティ強化のために後程削除する。
$ sudo useradd taneyats
途中にユーザーに関する情報(名前など)を登録するプロンプトが出てくるがエンター連打で問題ない。
この辺は直接Raspberry Piに接続して設定しているときにやっておいてもいいかもしれない。
usermod -aG
先ほど追加したユーザーをメインで使用するために、pi
の所属しているグループをそのまま使用する。groups ([username])
コマンドで現在のユーザーの所属するグループ(usernameを指定した場合はそのユーザーの所属するグループ)を表示することができる。
(piでログイン) $ groups pi adm dialout cdrom sudo audio video plugdev games users input netdev gpio i2c spi
-G
オプションでグループを変更することができる。この時-a
オプションを指定しないと変更前に所属しているグループから外されてしまうのでユーザーにグループを追加するときには-aG
を使用する。
書式はusermod -aG group1,group2,.... username
で複数のグループを追加できる。
$ sudo usermod adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,gpio,i2c,spi taneyats $ groups taneyats taneyats adm dialout cdrom sudo audio video plugdev games users input netdev gpio i2c spi
sudo
グループを追加することによってsudo
コマンドを実行することができるようになる。権限を必要としない場合にはこのグループは外しておく。
passwd root
root
ユーザーのパスワードを設定する。
$ sudo passwd root
userdel pi
先ほど追加したユーザーでsudo
コマンドが実行できることを確認してからpi
を削除する。sudoできるかどうかの確認もかねて一旦ターミナルの接続を切って、先ほど追加したユーザーでログインしなおす。削除対象のユーザーのプロセスが残っていると削除できない(ターミナルでpiにログインしたままではpiは削除できない)ので注意。
$ exit ... > ターミナルで追加したユーザーでログイン実行 $ whoami taneyats $ sudo userdel pi [sudo] password for taneyats: $ su - pi No passwd entry for user 'pi'
これでユーザー関係の初期設定は完了。
apt-get update / upgrade
各パッケージのアップデートを行う。
$ sudo apt-get update ... $ sudo apt-get -y upgrade
たまに大きな変更があった場合のnoticeや設定を選択するためのプロンプトで止まっていることがあるのでたまにチェックする。
apt-get install
とりあえずvim git screen vsftpdぐらいは入れておく。
$ sudo apt-get install vim git screen vsftpd
デフォルトのエディタをvimに変更する
Linux側から開かれるデフォルトのエディタを変更する。sudo visudo
やgitのコミット時にコメントが未設定の時に表示される。update-alternatives
コマンドを使用する。初期セットアップ時以外にほぼほぼ使用することがないので結構構文を忘れる。。。どんなコマンドでも使い方を何となく忘れてしまったときには-h
や--help
オプションを指定して確認しよう。
$ sudo update-alternatives --config editor There are 4 choices for the alternative editor (providing /usr/bin/editor). Selection Path Priority Status ------------------------------------------------------------ * 0 /bin/nano 40 auto mode 1 /bin/ed -100 manual mode 2 /bin/nano 40 manual mode 3 /usr/bin/vim.basic 30 manual mode 4 /usr/bin/vim.tiny 15 manual mode Press <enter> to keep the current choice[*], or type selection number: 3 update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/editor (editor) in manual mode
バックスペース時のベル音を消す
ターミナルで接続しているときにこれ以上消す文字が無いときにバックスペースを押すと、ビープ音が鳴るのが個人的には結構鬱陶しいので消す。/etc/inputrc
内の10行目あたりにset bell-style none
という設定がコメントアウトされているので#を消して有効化する。次回ログイン時から有効になる。
ここで設定してもless
やvim
内では有効になっているのでそれも各自設定してあげる必要がある。これに関しては別記事でまとめてある。
Node.js
外部からスクリプトを取得してきてそれを使用してインストールする。aptで管理されているものではバージョンが古いので注意。自分はサーバーサイドの処理を可能な限りNode.jsで書くようにしています。
以下のドキュメントを参考。
Raspberry Pi Zeroの場合はCPUのアーキテクチャがarmv6l
というものなので上のスクリプトでは導入できない。
以下の記事に切り分けたのでそちらを参照。
導入が完了したらとりあえずforever
あたりを入れておく。