PDA

View Full Version : solaris 10 smf and amanda



DrAgon64
April 5th, 2007, 11:57 PM
Hi,

Installation (build) in make and make install failed at the end of man pages something with oasis parser warning dbhierx.mod and etc..

But I figured ..man pages were after all binaries and config files created..

amanda config is all done..

when I run amcheck, it crashes inetd start of amanda service and puts it in maintenance mode!

bash-3.00# svcs | grep aman
online 1:15:45 svc:/network/amandaidx/tcp:default
maintenance 1:18:15 svc:/network/amanda/udp:default

and here is what on /var/adm/messages
Apr 6 01:12:22 itc1 inetd[495]: [ID 702911 daemon.error] The inetd_start method of instance svc:/network/amandaidx/tcp:default isn't a regular file
Apr 6 01:18:15 itc1 inetd[495]: [ID 702911 daemon.error] The inetd_start method of instance svc:/network/amanda/udp:default isn't a regular file

Here is what inetadm shows:

bash-3.00# inetadm -l svc:/network/amanda/udp
SCOPE NAME=VALUE
name="amanda"
endpoint_type="dgram"
proto="udp"
isrpc=FALSE
wait=TRUE
exec="/usr/local/libexec/"
arg0="amandad"
user="amanda"
default bind_addr=""
default bind_fail_max=-1
default bind_fail_interval=-1
default max_con_rate=-1
default max_copies=-1
default con_rate_offline=-1
default failrate_cnt=40
default failrate_interval=60
default inherit_env=TRUE
default tcp_trace=FALSE
default tcp_wrappers=FALSE


and lookin at SMF inetd code, error seems to be with regular file issue!

/*
2611 * Check if the file is a regular file and has at least one execute
2612 * bit set.
2613 */
2614 if ((sbuf.st_mode & S_IFMT) != S_IFREG) {
2615 error_msg(gettext(
2616 "The %s method of instance %s isn't a regular file"),
2617 method, instance);
2618 return (B_FALSE);
2619 } else if ((sbuf.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)) == 0) {
2620 error_msg(gettext("The %s method instance %s doesn't have "
2621 "any execute permissions set"), method, instance);
2622 return (B_FALSE);
2623 }


all permissions look okay, services, inetd.conf all look okay!!

and have these files

bash-3.00# cd /var/svc/manifest/network/
bash-3.00# ls -l am*
-rw-r--r-- 1 root root 2521 Mar 15 02:33 amanda-udp.xml
-rw-r--r-- 1 root root 2336 Mar 15 02:33 amandaidx-tcp.xml
-rw-r--r-- 1 root root 2340 Mar 15 02:33 amidxtape-tcp.xml


any ideas?
Thank you in advance

Biff98
April 6th, 2007, 11:55 AM
Weird indeed. Perhaps you've already tried this, but howabout deleting:

/var/svc/manifest/network/amanda*.xml

Then running the inetconv again?

-Steve

DrAgon64
April 6th, 2007, 12:17 PM
Great suggestionn, thank you
I Just tried it and still the same..

svcs | grep am
legacy_run Mar_15 lrc:/etc/rc3_d/S90samba
online Mar_15 svc:/system/name-service-cache:default
online Mar_15 svc:/milestone/name-services:default
online Mar_15 svc:/network/rpc/metamed:default
online Mar_15 svc:/network/rpc/metamh:default
online 14:02:17 svc:/network/amandaidx/tcp:default
online 14:02:19 svc:/network/amidxtape/tcp:default
maintenance 14:03:29 svc:/network/amanda/udp:default

Apr 6 14:03:29 itc1 inetd[495]: [ID 702911 daemon.error] The inetd_start method of instance svc:/network/amanda/udp:default isn't a regular file


I'm going to look at turning off smf maintenance status mode flag and get the whole alert dump....if I can't figure out what's freaking out start of the services..

I also should look into legacy inet startup perhaps for amanda services

but I am also thinking...if something got missed during build ( end of make/makeinstall ) erroring out during book/man pages xml parsing..

I'm still not quite confident in either the build process, my amanda post install config files, smf inetd interactions, or either uid/gid ownership of amanda operations as a whole.....or what it is worth, it all could be good to go and something stupid is causing it...I can't quite tell at this time.. :)

I still appreciate other suggestions and feedback/comments..

Thank you

DrAgon64
April 6th, 2007, 12:23 PM
interesting..

bash-3.00# netstat -an | grep 1008
*.10083 *.* 0 0 49152 0 LISTEN
*.10082 *.* 0 0 49152 0 LISTEN


bash-3.00# telnet localhost 10083
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection to localhost closed by foreign host.
bash-3.00# telnet localhost 10082
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection to localhost closed by foreign host.
bash-3.00#
bash-3.00# telnett 10082
bash-3.00# netstat -an | grep 1008
127.0.0.1.10083 127.0.0.1.51689 49152 0 49152 0 TIME_WAIT
127.0.0.1.10082 127.0.0.1.51690 49152 0 49152 0 TIME_WAIT
bash-3.00# netstat -an | grep 1008
127.0.0.1.10083 127.0.0.1.51689 49152 0 49152 0 TIME_WAIT
127.0.0.1.10082 127.0.0.1.51690 49152 0 49152 0 TIME_WAIT
bash-3.00# netstat -an | grep 1008
127.0.0.1.10082 127.0.0.1.51690 49152 0 49152 0 TIME_WAIT
bash-3.00# netstat -an | grep 1008
bash-3.00# netstat -an | grep 1008


seems like they get killed..

hm..I keep looking.. I should know my system config/dns/firewall/routing localhost and etc..better...let me see few things first..and isolate this thing..

DrAgon64
April 6th, 2007, 01:10 PM
got a comment from other forum

seems like
excec in inetadm is not correct and should be

exec="/usr/local/libexec/amandad"

I'll check..

DrAgon64
April 6th, 2007, 01:19 PM
I just read this from inetd man page

Each method specified for a service will have its configura-
tion stored in the SMF repository, within a property group
of the same name as the method. The set of properties allow-
able for these methods includes those specified for the ser-
vices managed by svc.startd(1M). (See svc.startd(1M) for
further details.) Additionally, for the inetd_start method,
you can set the arg0 property.

The arg0 property allows external wrapper programs to be
used with inetd services. Specifically, it allows the first
argument, argv[0], of the service's start method to be some-
thing other than the path of the server program.

In the case where you want to use an external wrapper pro-
gram and pass arguments to the service's daemon, the
arguments should be incorporated as arguments to the wrapper
program in the exec property. For example:

exec='/path/to/wrapper/prog service_daemon_args'
arg0='/path/to/service/daemon'


I donno if it means arg0 which is amandad is okay or not !!??

DrAgon64
April 6th, 2007, 01:55 PM
yea..got comment from sun forum that it is referring to tcp wrapper sort of program..so I do need to fix inetadm output should be amadand in exec

i keep going :)

DrAgon64
April 6th, 2007, 07:07 PM
fixed inetd.conf entries for all three entries

ie. /usr/local/libexec/amandad

deleted all three amanda var svc manifest xml files

rerun inetconv and amcheck successfully passed the server check after fussing with .amandhost file

now I ran into client issue

Amanda Backup Client Hosts Check
--------------------------------
ERROR: itc3: [reading conffile: /usr/local/etc/amanda/amanda-client.conf]
Client check: 1 host checked in 0.240 seconds, 1 problem found

i have a simple client.conf file

conf "DailySet1" # your config name
index_server "itc3" your amindexd server
tape_server "itc3" # your amidxtaped server
tapedev "/dev/rmt/0bn" # your tape device
auth "bsdtcp"


I even tried auth "bsd"..

any ideas?

DrAgon64
April 6th, 2007, 07:29 PM
client check fixed..