vine-users ML アーカイブ



[vine-users:073461] Re: /tmp -> /dev/shm での crontab

  • From: 山口 和人 <kazuto-y@xxxxxxxxxxxxxxxx>
  • Subject: [vine-users:073461] Re: /tmp -> /dev/shm での crontab
  • Date: Tue, 8 Nov 2005 01:09:16 +0900
山口と申します。

並さん、

> 作業領域をメモリ上に確保するのは、そんなに変わったことではないと思っていましたが……。

私も下記の環境で /tmp を tmpfs にしてますが、通常はそのようなエラーはでません。
[環境]===
 * Vine Linux 3.2 (通常インストールの 3.1 からアップデート)
 * /usr/bin/crontab (vixie-cron-3.0.1-87vl2)。エディタはデフォルト(vi)
 * vi の実体は /usr/X11R6/bin/vim.X11-huge (vim-X11-huge-6.3.82-0vl0.1)
 * /etc/fstab の /tmp エントリ
      tmpfs           /tmp            tmpfs   size=128M   0 0
 * df で見た /tmp 情報
      tmpfs                   131072        24    131048   1% /tmp
=========

> crontab: no changes made to crontab

ただし、エディタを gedit に変更した場合に同じエラーがでました。
(cron エントリを修正/保存しなくてもエラーになります)
=========
$ export VISUAL=gedit          # export EDITOR=gedit でも同じ
$ crontab -e
(gedit が起動する -> 終了させる)
crontab: no changes made to crontab
=========

原因は不明で、調査もしていません。
ただ、
(1) /tmp がメモリに取れればよいならば、上記方法で tmpfs マウントを試してみる
   参考: http://www-06.ibm.com/jp/developerworks/linux/011207/j_l-fs3.html
(2) エディタを vi にこだわらないならば、他のエディタを試してみる
   (最小インストールで vi の実体が何になるか、私は知りません)
のは如何でしょうか?

> 普通に vi を起動して編集作業をするときには、そういった現象は起こりません。

これは /var/spool/cron/<username> を直接編集する、という意味でしょうか?
(そうであればですが、)そのようなことは普通は行ないません。
crontab を使用したほうがよいと思います。

vi を使用したいのであれば、
=========
$ crontab -l >file      # cron エントリを file に書き出す
$ vi file               # vi で編集
(編集/保存する)
$ crontab < file        # cron に反映
=========
のようにしては如何でしょう。
この方法は、export VISUAL=gedit で件のエラーが出る状態でも有効でした。

以上、ご参考になれば。

-- 
山口 和人 (Kazuto YAMAGUCHI) <kazuto-y@xxxxxxxxxxxxxxxx>