Moving CellServDB files (once again)
Jeffrey Altman <[email protected]> Fri, 01 Feb 2008 12:10:06 -0800
| Newsgroups | gmane.comp.file-systems.openafs.devel.win32 |
|---|---|
| Organization | Secure Endpoints Inc. |
| Message-ID | <[email protected]> |
With the deployment of 64-bit Windows becoming more widespread it has become clear to me that once again the CellServDB files are going to have to be moved to a new location. The CellServDB file was originally stored in the the %windir% directory as afsdcell.ini. This was a problem for three reasons. First, the file is not a INI file. Second, applications should not be writing to the %windir% directory. Third, the name was different from that used on UNIX and therefore maintaining a common file for distribution was annoying at best. As part of the removal of all configuration files from the %windir% directory and the transition to the use of the Windows registry for OpenAFS configuration, the afsdcell.ini file was renamed to CellServDB and moved to the "\Program Files\OpenAFS\Client" directory. Unfortunately, storing configuration data in the \Program Files tree does not work for applications that provide both 64-bit and 32-bit libraries. The 64-bit libraries access "\Program Files" as "\Program Files" but for the 32-bit applications "\Program Files" is shadowed to "\Program Files (x86)". As a result, dual copies of the CellServDB file must be kept in sync. For this reason Microsoft recommends that applications store their configuration data files in "\Documents and Settings\All Users\Application Data\" which on Vista and 2008 Server is shadowed from "\Users\All Users\Application Data". For those who wish to preserve the existing location, there are two methods available for configuring where the CellServDB file should be accessed from that could be used to preserve the existing behavior. First there is the "HKLM\SOFTWARE\OpenAFS\Client" key's "CellServDBDir" value which specifies the directory in which the "CellServDB" file should be found. For the WOW64 environment this value needs to be replicated in "HKLM\SOFTWARE\Wow6432Node\OpenAFS\Client" in order for the 32-bit executables to find it. The second method is the "AFSCONF" environment variable which also specifies the directory in which the "CellServDB" file should be located in. The environment variable takes precedence over the registry setting. Does anyone foresee a problem with this transition? Jeffrey Altman Secure Endpoints Inc.
smime.p7s
(application/x-pkcs7-signature, 3.3 KB) - not displayed