Two problems with configuring ColdFusion 8.01 on Mac OS X for startup on system boot when using the the utility {cf_root}/bin/cf-init.sh. The first issue is that cf-init.sh cannot be used again to configure CF for startup on boot after the cf-init.sh script is used to unconfigure the service. The second issue is that for Multiserver configuration the script cf-init.sh cannot be used to unconfigure CF as a startup service and the items under /Library/StartupItems/ColdFusion8Multi must be removed manually. The ColdFusion Engineering team is actively seeking to correct these issues, but I'm posting for your convenience in case you run into this beforehand.

Issue 1 logged as ColdFusion bug 73548
On Mac, running cf-init.sh to install system startup script cannot be done a second time after running cf-init.sh uninstall.

The cf-init.sh function install_mac() permanently moves the file {cf_root}/bin/cf-standalone-startup to /Library/StartupItems/ under the new name ColdFusion8 as shown here:

view plain print about
1mv -f $CF_DIR/bin/cf-standalone-startup /Library/StartupItems/ColdFusion8/ColdFusion8


Then the uninstall_mac() function in cf-init.sh permanently removes that file ColdFusion8 as shown here:

view plain print about
1rm -rf /Library/StartupItems/ColdFusion8


There are no longer any copies of {cf_root}/bin/cf-standalone-startup under any name on the system, so another attempt to configure ColdFusion to start on System Boot cannot be performed.

More details:



1) Install CF801 on Mac, but do NOT choose option to start on system boot at this time
2) Run cf-init.sh install, then cf-init.sh uninstall, then again cf-init.sh install
3) Observe second usage of cf-init.sh fails



-----------------------------
* Initial directory listing after installing without option to start on boot
* Notice StartupParameters.plist and cf-standalone-startup are present
-----------------------------


view plain print about
1my-powerbook:/opt/ColdFusion8/bin cfqauser$ ls -l
2total 4296
3-rwxr-xr-x 1 cfqauser admin 504 Nov 6 10:13 SMSClient.sh
4-rwxrwxr-x 1 cfqauser admin 260 Jan 19 2008 StartupParameters.plist
5-rwxr-xr-x 1 cfqauser admin 7241 Nov 6 10:13 cf-init.sh
6-rwxrwxr-x 1 cfqauser admin 409 Nov 6 10:13 cf-standalone-startup
7-rwxr-xr-x 1 cfqauser admin 6671 Nov 6 10:13 cfcompile.sh
8-rwxr-xr-x 1 cfqauser admin 1501420 Jan 19 2008 cfencode.exe
9-rwxr-xr-x 1 cfqauser admin 110264 Jan 19 2008 cfencode.linux
10-rwxr-xr-x 1 cfqauser admin 527624 Jan 19 2008 cfencode.solaris
11-rwxr-xr-x 1 cfqauser admin 252 Nov 6 10:13 cfinfo
12-rwxr-xr-x 1 cfqauser admin 414 Nov 6 10:13 cfscan.sh
13-rwxr-xr-x 1 cfqauser admin 265 Nov 6 10:13 cfstat
14-rwxr-xr-x 1 cfqauser admin 7025 Nov 6 10:13 coldfusion
15drwxr-xr-x 7 cfqauser admin 238 Nov 6 10:13 connectors
16-rwxr-xr-x 1 cfqauser admin 860 Jan 23 2008 findjava.sh
17lrwxr-xr-x 1 cfqauser admin 39 Nov 6 10:13 jvm.config ->
/opt/ColdFusion8/runtime/bin/jvm.config



-----------------------------
* Run cf-init.sh to install startup service
* Notice cf-standalone-startup is not in bin/ directory listing
-----------------------------


view plain print about
1my-powerbook:/opt/ColdFusion8/bin cfqauser$ sudo ./cf-init.sh install
2Password:
3Creating the Coldfusion 8 start script /Library/StartupItems/ColdFusion8/ColdFusion8
4Install complete
5my-powerbook:/opt/ColdFusion8/bin cfqauser$ ls /Library/StartupItems/ColdFusion8/
6ColdFusion8 StartupParameters.plist
7my-powerbook:/opt/ColdFusion8/bin cfqauser$ ls -l
8total 4288
9-rwxr-xr-x 1 cfqauser admin 504 Nov 6 10:13 SMSClient.sh
10-rwxrwxr-x 1 cfqauser admin 260 Jan 19 2008 StartupParameters.plist
11-rwxr-xr-x 1 cfqauser admin 7241 Nov 6 10:13 cf-init.sh
12-rwxr-xr-x 1 cfqauser admin 6671 Nov 6 10:13 cfcompile.sh
13-rwxr-xr-x 1 cfqauser admin 1501420 Jan 19 2008 cfencode.exe
14-rwxr-xr-x 1 cfqauser admin 110264 Jan 19 2008 cfencode.linux
15-rwxr-xr-x 1 cfqauser admin 527624 Jan 19 2008 cfencode.solaris
16-rwxr-xr-x 1 cfqauser admin 252 Nov 6 10:13 cfinfo
17-rwxr-xr-x 1 cfqauser admin 414 Nov 6 10:13 cfscan.sh
18-rwxr-xr-x 1 cfqauser admin 265 Nov 6 10:13 cfstat
19-rwxr-xr-x 1 cfqauser admin 7025 Nov 6 10:13 coldfusion
20drwxr-xr-x 7 cfqauser admin 238 Nov 6 10:13 connectors
21-rwxr-xr-x 1 cfqauser admin 860 Jan 23 2008 findjava.sh
22lrwxr-xr-x 1 cfqauser admin 39 Nov 6 10:13 jvm.config ->
/opt/ColdFusion8/runtime/bin/jvm.config

-----------------------------
* Uninstall startup service with cf-init.sh
-----------------------------


view plain print about
1my-powerbook:/opt/ColdFusion8/bin cfqauser$ sudo ./cf-init.sh uninstall
2Uninstall complete
3my-powerbook:/opt/ColdFusion8/bin cfqauser$ ls /Library/StartupItems/ColdFusion8/
4ls: /Library/StartupItems/ColdFusion8/: No such file or directory

-----------------------------
* Again, run cf-init.sh to re-install startup service
* Notice failure on mv cf-standalone-startup to /Library/StartupItems
-----------------------------


view plain print about
1my-powerbook:/opt/ColdFusion8/bin cfqauser$ sudo ./cf-init.sh install
2Creating the Coldfusion 8 start script /Library/StartupItems/ColdFusion8/ColdFusion8
3mv: rename /opt/ColdFusion8/bin/cf-standalone-startup to /Library/StartupItems/ColdFusion8/ColdFusion8: No such file or directory
4Install complete
5my-powerbook:/opt/ColdFusion8/bin cfqauser$ ls /Library/StartupItems/ColdFusion8/
6StartupParameters.plist
7my-powerbook:/opt/ColdFusion8/bin cfqauser$


Issue 2 logged as bug ColdFusion 73178

The cf-init.sh function for install_mac() has a section for server configuration and a section for multiserver config, but the uninstall_mac () function only has a Server Config section looking for /Library/StartupItems/ColdFusion8, but not a Multiserver section to remove /Library/StartupItems/ColdFusion8Multi.

Notice that there is an option to configure CF for system startup with "Standalone" (a.k.a. Server Config) and an option for Multiserver Config.

view plain print about
1install_mac() {<br/><br/> if [ -f /Library/StartupItems/ColdFusion8 ]; then
2 echo "Coldfusion 8 appears to already be set up to start on boot"
3 exit 2
4 fi<br/><br/> if [ "$MULTI_SERVER" = "false" ]; then
5 echo "Creating the Coldfusion 8 start script /Library/StartupItems/ColdFusion8/ColdFusion8"
6 mkdir /Library/StartupItems/ColdFusion8
7 mv -f $CF_DIR/bin/cf-standalone-startup /Library/StartupItems/ColdFusion8/ColdFusion8
8 cp -f $CF_DIR/bin/StartupParameters.plist /Library/StartupItems/ColdFusion8/StartupParameters.plist
9 chmod 544 /Library/StartupItems/ColdFusion8/*
10 chown root:wheel /Library/StartupItems/ColdFusion8/*
11 else
12 echo "Creating the Coldfusion 8 Multi-server start script /Library/StartupItems/ColdFusion8Multi/ColdFusion8Multi"
13 mkdir /Library/StartupItems/ColdFusion8Multi
14 mv -f $CF_DIR/bin/cf-multi-startup /Library/StartupItems/ColdFusion8Multi/ColdFusion8Multi
15 cp -f $CF_DIR/bin/StartupParameters.plist /Library/StartupItems/ColdFusion8Multi/StartupParameters.plist
16 chmod 544 /Library/StartupItems/ColdFusion8Multi/*
17 chown root:wheel /Library/StartupItems/ColdFusion8Multi/*
18 fi
19 echo "Install complete"
20}



Notice that there is no option to remove ColdFusion8Multi from /Library/StartupItems
view plain print about
1uninstall_mac() {<br/><br/> if [ -f /Library/StartupItems/ColdFusion8 ]; then
2 echo "Coldfusion 8 does not appear to be added to your init system"
3 exit 2
4 fi<br/><br/> rm -rf /Library/StartupItems/ColdFusion8 <br/><br/> echo "Uninstall complete"
5}<br/><br/>