Syntes lige jeg ville dele den her.
Vixie's cron pakke i Redhat indlæser filer fra bl.a. /etc/cron.d/ hvert
minut. Fint - jeg oprettede et job "backup" i /etc/cron.d/ med Midnight
Commander (MC) og regnede med at alt var fint. Det anbefales, så vidt
jeg husker fra LinuxStandardBase at man ikke retter /etc/crontab
direkte, men opretter nye cron jobs i form af filer i /etc/cron.d - så
jeg gjorde det så godt jeg kunne
Det virkede bare ikke. Problemet viste sig at være at cron checker
/etc/cron.d/ bibliotekets timestamps - hvis modify (eller change) ikke
er ændret undersøges biblioteket ikke. MC opdaterer desværre ikke
timestamps på /etc/cron.d's inode - kun på de filer den har editeret ...
hmmm.
En løsning er at køre "touch /etc/cron.d" efter rettelser på cron.d
filer med MC. Jeg eksperimenterede lidt - se uddrag fra min history fil
nedenfor. Kommentarer udbedes! Er det MC eller emacs der opfører sig
korrekt - og hvorfor ? Kan man få MC til at opdatere directory-inoden's
timestamps på en smart måde så brugeren ikke behøver at huske diverse
ekstra kommandoer ?
Mvh Michael
**************************************
inodes: mc and cron
**************************************
Test scenario.
testdir ---- test
|
|__ test2
File "test" is edited by emacs first, then inodes are checked.
Next, mc is used to edit "test2" and inodes are again checked.
First the inodes are as follows:
[mj@thor testdir]$ stat .
File: "."
Size: 4096 Filetype: Directory
Mode: (0775/drwxrwxr-x) Uid: ( 500/ mj) Gid: (
500/ mj)
Device: 3,6 Inode: 338267 Links: 2
Access: Sat Nov 25 12:18:59 2000(00000.00:05:50)
Modify: Sat Nov 25 12:16:35 2000(00000.00:08:14)
Change: Sat Nov 25 12:16:35 2000(00000.00:08:14)
[mj@thor testdir]$ stat test
File: "test"
Size: 0 Filetype: Regular File
Mode: (0664/-rw-rw-r--) Uid: ( 500/ mj) Gid: (
500/ mj)
Device: 3,6 Inode: 226071 Links: 1
Access: Sat Nov 25 12:15:54 2000(00000.00:09:10)
Modify: Sat Nov 25 12:15:54 2000(00000.00:09:10)
Change: Sat Nov 25 12:16:35 2000(00000.00:08:29)
[mj@thor testdir]$ stat test2
File: "test2"
Size: 0 Filetype: Regular File
Mode: (0664/-rw-rw-r--) Uid: ( 500/ mj) Gid: (
500/ mj)
Device: 3,6 Inode: 226162 Links: 1
Access: Sat Nov 25 12:16:13 2000(00000.00:09:03)
Modify: Sat Nov 25 12:16:13 2000(00000.00:09:03)
Change: Sat Nov 25 12:16:35 2000(00000.00:08:41)
______________________________
Now test is changed using emacs (version 20.5.1):
[mj@thor testdir]$ stat .
File: "."
Size: 4096 Filetype: Directory
Mode: (0775/drwxrwxr-x) Uid: ( 500/ mj) Gid: (
500/ mj)
Device: 3,6 Inode: 338267 Links: 2
Access: Sat Nov 25 12:26:20 2000(00000.00:00:05)
Modify: Sat Nov 25 12:26:20 2000(00000.00:00:05)
Change: Sat Nov 25 12:26:20 2000(00000.00:00:05)
[mj@thor testdir]$ stat test
File: "test"
Size: 7 Filetype: Regular File
Mode: (0664/-rw-rw-r--) Uid: ( 500/ mj) Gid: (
500/ mj)
Device: 3,6 Inode: 338269 Links: 1
Access: Sat Nov 25 12:26:20 2000(00000.00:00:22)
Modify: Sat Nov 25 12:26:20 2000(00000.00:00:22)
Change: Sat Nov 25 12:26:20 2000(00000.00:00:22)
[mj@thor testdir]$ stat test2
File: "test2"
Size: 0 Filetype: Regular File
Mode: (0664/-rw-rw-r--) Uid: ( 500/ mj) Gid: (
500/ mj)
Device: 3,6 Inode: 226162 Links: 1
Access: Sat Nov 25 12:16:13 2000(00000.00:10:40)
Modify: Sat Nov 25 12:16:13 2000(00000.00:10:40)
Change: Sat Nov 25 12:16:35 2000(00000.00:10:18)
______________________________
Now test2 is changed using mc (version 4.5.42):
[mj@thor testdir]$ stat .
File: "."
Size: 4096 Filetype: Directory
Mode: (0775/drwxrwxr-x) Uid: ( 500/ mj) Gid: (
500/ mj)
Device: 3,6 Inode: 338267