ADC

升级 /etc 目录中自定义配置文件的注意事项

支持在 /etc 目录中修改以下配置文件:

  • inetd.conf
  • syslog.conf
  • newsyslog.conf
  • ntp.conf
  • crontab
  • host.conf
  • hosts
  • ttys
  • sshd_config
  • httpd.conf
  • monitrc
  • rc.conf
  • ssh_config
  • localtime
  • issue
  • issue.net
  • ldap.conf
  • motd

注意:

新文件可能会添加到上述列表中,具体取决于设备上运行的 NetScaler 版本。您可以通过在 NetScaler 命令行界面中运行以下 shell 命令来显示更新的文件列表:

grep NSETC= /etc/rc

如果您修改了 /etc 目录中的任何配置文件并将其复制到 /nsconfig 目录中,为了保持持久性,NetScaler 设备会在 /etc 中创建指向 /nsconfig 中的文件的符号链接。

例如: /etc/httpd.conf -> /nsconfig /httpd.conf

发布包可能在 /etc 目录中包含其自己的配置文件版本。这些配置文件包含 NetScaler 设备正常运行所需的重要更新。将 NetScaler 设备升级到发行版会将 /etc 目录中的配置文件替换为包含发行版更新的配置文件。

假设一个自定义配置文件 example.conf 的示例,该文件存在于 /etc 目录中。example.conf 文件被复制到 /nsconfig 目录以保持持久性。NetScaler 设备在 /etc 中创建指向 /nsconfig 中的文件的符号链接: /etc/example.conf -> / nsconfig /example.conf

此外,发布包还包括 example.conf 自己的版本,其中包含重要的更新。将 NetScaler 设备升级到发行版时会出现以下行为:

由于符号链接 /etc/example.conf 已经存在,因此 NetScaler 设备不会在升级过程中将 example.conf 的发布包副本放在 /etc 目录中。

由于 example.conf 的发布包副本包含重要更新,因此 /etc 目录中缺少该更新可能会导致 NetScaler 设备出现故障或无法正常运行。

保留升级更改和自定义的步骤

要确保版本更新和自定义项都不会丢失,请执行以下步骤:

升级前备份自定义文件

升级设备之前,请备份 /nsconfig 目录中存在的自定义文件。

创建一个 /var/nsconfig_backup 目录并将自定义文件移到此目录中。也就是说,通过在 shell 提示符下运行以下命令,移动您在 /etc 目录中修改并复制到 /nsconfig 的所有文件:

mv /nsconfig/<filename> /var/nsconfig_backup/
<!--NeedCopy-->

示例

mv /nsconfig/httpd.conf /var/nsconfig_backup/
<!--NeedCopy-->

升级前删除自定义文件的持久性

在升级设备之前,请删除指向 /nsconfig 文件的 /etc 符号链接。

  1. 在 shell 提示符下运行以下命令,检查 /etc 目录中现有的符号链接:

    ls -la /etc
    <!--NeedCopy-->
    
  2. 在 shell 提示符下运行以下命令,删除指向 /nsconfig 文件的 /etc 符号链接:

    unlink /etc/<filename>
    <!--NeedCopy-->
    

    示例:

    unlink /etc/httpd.conf
    <!--NeedCopy-->
    
  3. 在 shell 提示符下运行以下命令,验证是否删除了符号链接:

    cat /etc/<filename>
    <!--NeedCopy-->
    

    示例:

    cat /etc/httpd.conf
    <!--NeedCopy-->
    

    如果删除符号链接,此命令不会显示任何内容。

将自定义应用于已升级的文件并在升级后添加持久性

如果您已将任何修改的 /nsconfig 配置文件备份到 /var/nsconfig_backup 中,请在升级设备后执行以下操作:

  1. 比较存在于 /var/nsconfig_backup/etc 目录中的文件。手动将相应的更改添加到已包含发行更新的 /etc 文件中。

    重要:

    直接用 /etc 文件替换 /var/nsconfig_backup 文件会删除升级过程中添加到该文件的所有版本更新。删除更新可能会导致相关的 NetScaler 功能失败或无法正常运行。

  2. 要保持持久性,请在 shell 提示符下运行以下命令,将 /etc 目录中存在的更新文件复制到 /nsconfig 目录中:

    cp /etc/<filename> /nsconfig/
    <!--NeedCopy-->
    

    示例:

    cp /etc/httpd.conf /nsconfig/
    <!--NeedCopy-->
    
  3. /var/nsconfig_backup 目录中存在的每个自定义文件重复上述两个步骤。

  4. 重新启动设备以使更改生效。

升级 /etc 目录中自定义配置文件的注意事项