Raspberry PiにFTPサーバーをインストールする方法

Raspberry PiでFTPサーバー(vsftpd)を運用する手順について。

インストール

$ sudo apt install vsftpd

設定

$ sudo vi /etc/vsftpd.conf

vsftpd.confで設定できる内容は以下のような感じです。

anonymous_enableAnonymousでのログインを許可する場合はYES
local_enableローカルユーザー(piやuseraddで作成したユーザー)でのログインを有効にする場合はYES
write_enableFTPサーバーへの書き込みを有効にする場合はYES
local_umaskumaskの設定(デフォルトは077)
chroot_local_userホームディレクトリより上の階層にアクセスできるようにする場合はYES
pasv_enableパッシブモードを有効にする場合はYES
vsftpd.confで設定できる主な内容

※パスワードを設定していない場合や忘れてしまった場合は、sudo passwd ユーザー名で設定できます。

FTPサーバーの起動

$ sudo service vsftpd restart

530 Login incorrect

FTPクライアントからユーザー名とパスワードを入力した際530 Login incorrectとなる場合はユーザー名かパスワードをミスタイプしているか可能性があるので再確認してみてください。

その他、該当ユーザーのログインシェルをnologingit-shellなどにしている場合も同様のエラーとなるようです。

$ sudo usermod -s /bin/bash ユーザー名

でログインシェルを変更できます。必要に応じて試してみてください。

Firefoxの動作が遅い時に試してみたいこと

最近、Firefoxの動作が遅い感じです(特にファイルの保存をする時など)。

調べてみるとプロファイルフォルダーのサイズが数GBを超えていて、その大半がcontent-prefs.sqliteというファイルでした。

サイト毎のズームレベルなどの情報が保存されているファイルみたいですが、削除してリセットすることもできるようなので試してみました。

content-prefs.sqliteを削除する方法

  1. [ヘルプ] » [トラブルシューティング情報] を実行
  2. プロファイルフォルダーディレクトリーの項目にあるフォルダーを開くのボタンをクリック
  3. Firefoxを終了
  4. プロファイルフォルダー内のcontent-prefs.sqliteを削除
    (心配な場合はリネームしておくこともできます。)

自分の環境では嘘みたいに軽くなりました。
最近重くなったなと感じる人は試してみてもいいかなと思います。

リンク

Firefox uses too much memory or CPU resources – How to fix | Firefox Help
https://support.mozilla.org/en-US/kb/firefox-uses-too-much-memory-or-cpu-resources

bashのスクリプトでif節やelif節を空にするとエラー

bashのスクリプトでifを使う時、thenfi間に何のコマンドも含んでいないスクリプトはエラーになってしまいます。

if [ $value = "abc" ]
then
  # 何もしない
fi

エラーの内容

bash: syntax error near unexpected token `fi'

何もしない分岐は削除すればいいだけですが、elif節やelse節での条件を簡略化したい場合など、何もしない分岐を作りたくなることもあるかなと思います。

そんな時はコロン:というBUILTIN COMMANDを使うと良いみたいです。

次のような感じで使います。

if [ $value = "abc" ]
then
  :
fi

elif節やelse節でも同様です。
困っている方は試してみてください。