From: pjama <pj...@us...> - 2008-10-30 11:00:26
|
Laszlo (Laca) Peter wrote: > Actually, I don't think those pre and postinstall/remove scripts are > needed. Adding the manifest file to the manifest class should take > care of importing it. You are indeed correct. I've been hacking around customising and adding svcs to SFEsquid.spec and discovered the below mentioned problem after borrowing inspiration from SFEdovecot.spec. I've removed the pre/post/un-install from the spec, there's none created in the package but the svc is still created. That's great!. It sure beats stuffing around with scripts. > > If you need to uninstall a package with a broken preremove script, the > only way I know is to delete /var/sadm/pkg/<pkg>/install/preremove and manually remove the svc with: svccfg delete -f svc:/site:dovecot >> ## Executing preremove script. >> svcs: Pattern 'svc:/site/dovecot:default' doesn't match any instances >> /var/sadm/pkg/SFEdovecot-root/install/preremove: test: argument expected >> pkgrm: ERROR: preremove script did not complete successfully >> >> Removal of <SFEdovecot-root> failed. >> ----- >> >> preremove is looking for: >> svc:/site/dovecot:default >> but svcs -a says it's: >> # svcs -a | grep dovecot >> disabled 11:56:00 svc:/site:dovecot >> # >> To fix the package the dovecot.xml file needs fixing. I *THINK* it needs changing from: <service_bundle type='manifest' name='dovecot'> <service name='site' type='service' version='1'> <instance name='dovecot' enabled='false'> to: <service_bundle type='manifest' name='SFEdovecot:dovecot'> <service name='site/dovecot' type='service' version='1'> <instance name='default' enabled='false'> Cheers Peter -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. |