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

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

Subject: Strace of cfagent - where does the actual mount of new fstab entires happen?
From: "Rob Martin"
Date: Thu, 23 Jun 2005 08:56:29 -0400
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

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