help-cfengine@gnu.org
[Top] [All Lists]

Re: Strace of cfagent - where does the actual mount of new fstab entires

Subject: Re: Strace of cfagent - where does the actual mount of new fstab entires happen?
From: Mark Burgess
Date: Thu, 23 Jun 2005 16:16:34 +0200
Cfagent mounts by calling "Mountall" command. This should appear as an
"exec" command somewhere, and an associated read/open pipe. Have you
tried
using cfagent -d2 for a less verbose trace?

M

PS - send me your thesis when it is finished!!

On Thu, 2005-06-23 at 08:56 -0400, Rob Martin wrote:
> Hello, I am researching cfengine for a masters thesis. (Exercising a set of 
> test cases on cfengine isconf,lcfg,a few others to compare how they do 
> things).
> A snippet below is the end of the strace I ran on a very simple test of 
> cfagent running a simple mount of three directories on a server.(What you 
> need to run adobe acrobat reader from a server). I am trying to figure out 
> where in the strace cfagent actually causes the edited fstab file to be used 
> to actually mount the filesytem directories from the server which were added 
> to fstab. I can see the strace output where the new entries are added to the 
> fstab file - but not the system trace of the actual mount of the directires. 
> (Are they mounted autmatically when fstab is closed?)
> 
> Can anyone point out the lines in the strace that actually trace this action 
> taking place that makes the server directories available on the client? I 
> apologize if I am too newbie in linux to get this. When I run the cfagent 
> with this cf file the filesystems are indeed mounted and immediately 
> avalable on the client running the cfagent.
> Thanks for any clues,
> rob martin,
> MS Candidate in Computer Science
> East Tennessee State University
> 
> "server" cfgserver   "client" cfgclient3
> I am runningn cfagent directly on the client - so there is no cfservd 
> "connection" between the client and the server - cfagent is working to add 
> and mount directories on the server, put not pull any configuration files or 
> data from the server in the cfagent execution of this cf file. The command 
> line sytnax used to call strace and cfagent are in the beginning of the 
> snippet below, along with the results towards the end.
> 
> -------The test-----------
> the cf file is mountfiles6-7.cf and the contents of that cf file is simply:
> 
> control:
>     actionsequence =
>       (
>       mountall
>       mountinfo
>       addmounts
>       mountall
>        )
> 
> binservers:
> 
>       cfgserver
> 
> homeservers:
> 
>       cfgserver
> 
> mountables:
> 
>       cfgserver:/opt/adobe
>       cfgserver:/usr/lib/acrobat
>       cfgserver:/usr/share
> 
> ---end of cf file ---
> 
> --snippet of strace of cfagent- near the end where the fstab work is being 
> done ----
> actual strace command line call -
> 
> [root@cfgclient3 bin]# strace -o traceMountFileCFafter-fstab-comment-out 
> ./cfagent -f /var/cfengine/inputs/mountfiles6-7.cf
> 
> ---begin snippet - no edits to this snippet from start of this clip to end 
> of output ---
> 
> 
> open("/etc/fstab", O_WRONLY|O_APPEND|O_CREAT|O_LARGEFILE, 0666) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=850, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0x40017000
> fstat64(3, {st_mode=S_IFREG|0644, st_size=850, ...}) = 0
> _llseek(3, 850, [850], SEEK_SET)        = 0
> write(3, "cfgserver:/opt/adobe \t /opt/adob"..., 54) = 54
> close(3)                                = 0
> munmap(0x40017000, 4096)                = 0
> chmod("/etc/fstab", 0644)               = 0
> open("/etc/fstab", O_RDONLY|O_LARGEFILE) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=904, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0x40017000
> read(3, "LABEL=/                 /       "..., 4096) = 904
> read(3, "", 4096)                       = 0
> close(3)                                = 0
> munmap(0x40017000, 4096)                = 0
> open("/etc/fstab", O_WRONLY|O_APPEND|O_CREAT|O_LARGEFILE, 0666) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=904, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0x40017000
> fstat64(3, {st_mode=S_IFREG|0644, st_size=904, ...}) = 0
> _llseek(3, 904, [904], SEEK_SET)        = 0
> write(3, "cfgserver:/usr/lib/acrobat \t /us"..., 66) = 66
> close(3)                                = 0
> munmap(0x40017000, 4096)                = 0
> chmod("/etc/fstab", 0644)               = 0
> open("/etc/fstab", O_RDONLY|O_LARGEFILE) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=970, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0x40017000
> read(3, "LABEL=/                 /       "..., 4096) = 970
> read(3, "", 4096)                       = 0
> close(3)                                = 0
> munmap(0x40017000, 4096)                = 0
> open("/etc/fstab", O_WRONLY|O_APPEND|O_CREAT|O_LARGEFILE, 0666) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=970, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0x40017000
> fstat64(3, {st_mode=S_IFREG|0644, st_size=970, ...}) = 0
> _llseek(3, 970, [970], SEEK_SET)        = 0
> write(3, "cfgserver:/usr/share \t /usr/shar"..., 54) = 54
> close(3)                                = 0
> munmap(0x40017000, 4096)                = 0
> chmod("/etc/fstab", 0644)               = 0
> getuid32()                              = 0
> open("/var/cfengine/cfengine_lock_db", O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 
> 0644) = -1 EEXIST (File exists)
> open("/var/cfengine/cfengine_lock_db", O_RDWR|O_LARGEFILE) = 3
> fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
> fstat64(3, {st_mode=S_IFREG|0644, st_size=8192, ...}) = 0
> _llseek(3, 0, [0], SEEK_SET)            = 0
> read(3, "\0\0\0\0\1\0\0\0\0\0\0\0b1\5\0\10\0\0\0\0\20\0\0\0\t\0"..., 256) = 
> 256
> close(3)                                = 0
> stat64("/var/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=4096, ...}) = 0
> mmap2(NULL, 274432, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) 
> = 0x402aa000
> open("/var/cfengine/cfengine_lock_db", O_RDWR|O_LARGEFILE) = 3
> fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
> fstat64(3, {st_mode=S_IFREG|0644, st_size=8192, ...}) = 0
> pread(3, "\0\0\0\0\1\0\0\0\0\0\0\0b1\5\0\10\0\0\0\0\20\0\0\0\t\0"..., 4096, 
> 0) = 4096
> pread(3, "\0\0\0\0\1\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\10\0\260\16\1"..., 4096, 
> 4096) = 4096
> pwrite(3, "\0\0\0\0\1\0\0\0\0\0\0\0b1\5\0\10\0\0\0\0\20\0\0\0\t\0"..., 4096, 
> 0) = 4096
> fsync(3)                                = 0
> close(3)                                = 0
> munmap(0x402aa000, 274432)              = 0
> open("/var/cfengine/cfengine_lock_db", O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 
> 0644) = -1 EEXIST (File exists)
> open("/var/cfengine/cfengine_lock_db", O_RDWR|O_LARGEFILE) = 3
> fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
> fstat64(3, {st_mode=S_IFREG|0644, st_size=8192, ...}) = 0
> _llseek(3, 0, [0], SEEK_SET)            = 0
> read(3, "\0\0\0\0\1\0\0\0\0\0\0\0b1\5\0\10\0\0\0\0\20\0\0\0\t\0"..., 256) = 
> 256
> close(3)                                = 0
> stat64("/var/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=4096, ...}) = 0
> mmap2(NULL, 274432, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) 
> = 0x402aa000
> open("/var/cfengine/cfengine_lock_db", O_RDWR|O_LARGEFILE) = 3
> fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
> fstat64(3, {st_mode=S_IFREG|0644, st_size=8192, ...}) = 0
> pread(3, "\0\0\0\0\1\0\0\0\0\0\0\0b1\5\0\10\0\0\0\0\20\0\0\0\t\0"..., 4096, 
> 0) = 4096
> pread(3, "\0\0\0\0\1\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\10\0\260\16\1"..., 4096, 
> 4096) = 4096
> getpid()                                = 8494
> time(NULL)                              = 1119493752
> pwrite(3, "\0\0\0\0\1\0\0\0\0\0\0\0b1\5\0\10\0\0\0\0\20\0\0\0\t\0"..., 4096, 
> 0) = 4096
> pwrite(3, "\0\0\0\0\1\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\10\0\260\16\1"..., 4096, 
> 4096) = 4096
> fsync(3)                                = 0
> close(3)                                = 0
> munmap(0x402aa000, 274432)              = 0
> getpid()                                = 8494
> open("/var/cfengine/cfengine..runlog", 
> O_WRONLY|O_APPEND|O_CREAT|O_LARGEFILE, 0666) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=3263, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0x40017000
> fstat64(3, {st_mode=S_IFREG|0644, st_size=3263, ...}) = 0
> _llseek(3, 3263, [3263], SEEK_SET)      = 0
> time(NULL)                              = 1119493752
> write(3, "Wed Jun 22 22:29:12 2005:Lock re"..., 73) = 73
> close(3)                                = 0
> munmap(0x40017000, 4096)                = 0
> stat64("/var/cfengine/cfengine..runlog", {st_mode=S_IFREG|0644, 
> st_size=3336, ...}) = 0
> time(NULL)                              = 1119493752
> getuid32()                              = 0
> open("/var/cfengine/state/allclasses", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 
> 0666) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0x40017000
> write(3, "192_168_1\n192_168_1_3\n32_bit\nDay"..., 407) = 407
> close(3)                                = 0
> munmap(0x40017000, 4096)                = 0
> getuid32()                              = 0
> open("/var/cfengine/cfengine_lock_db", O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 
> 0644) = -1 EEXIST (File exists)
> open("/var/cfengine/cfengine_lock_db", O_RDWR|O_LARGEFILE) = 3
> fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
> fstat64(3, {st_mode=S_IFREG|0644, st_size=8192, ...}) = 0
> _llseek(3, 0, [0], SEEK_SET)            = 0
> read(3, "\0\0\0\0\1\0\0\0\0\0\0\0b1\5\0\10\0\0\0\0\20\0\0\0\t\0"..., 256) = 
> 256
> close(3)                                = 0
> stat64("/var/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=4096, ...}) = 0
> mmap2(NULL, 274432, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) 
> = 0x402aa000
> open("/var/cfengine/cfengine_lock_db", O_RDWR|O_LARGEFILE) = 3
> fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
> fstat64(3, {st_mode=S_IFREG|0644, st_size=8192, ...}) = 0
> pread(3, "\0\0\0\0\1\0\0\0\0\0\0\0b1\5\0\10\0\0\0\0\20\0\0\0\t\0"..., 4096, 
> 0) = 4096
> pread(3, "\0\0\0\0\1\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\10\0\260\16\1"..., 4096, 
> 4096) = 4096
> pwrite(3, "\0\0\0\0\1\0\0\0\0\0\0\0b1\5\0\10\0\0\0\0\20\0\0\0\t\0"..., 4096, 
> 0) = 4096
> fsync(3)                                = 0
> close(3)                                = 0
> munmap(0x402aa000, 274432)              = 0
> time(NULL)                              = 1119493752
> time(NULL)                              = 1119493752
> time(NULL)                              = 1119493752
> time(NULL)                              = 1119493752
> exit_group(0)                           = ?
> [root@cfgclient3 bin]#
> 
> 
> 
> 
> _______________________________________________
> Help-cfengine mailing list
> Help-cfengine@xxxxxxx
> http://lists.gnu.org/mailman/listinfo/help-cfengine



_______________________________________________
Help-cfengine mailing list
Help-cfengine@xxxxxxx
http://lists.gnu.org/mailman/listinfo/help-cfengine

<Prev in Thread] Current Thread [Next in Thread>