问题:DB2安装失败,报错DBI1288E The execution of the program /opt/ibm/db2/V11.5 failed. This
program failed because you do not have write permission on the directory or file.

分析:排查/tmp/db2_install.trc.** 看到缺少写入权限

原因:umask 查看当前权限掩码 0027 (Owner可读可写可执行,Group什么都不能做,Everyone什么都不能做)

改成:umask 0022 (Owner可读可写可执行,Group可读可执行不能写入,Everyone可读可执行不能写入)

再执行chmod -R 755 /opt/ibm 之后,问题解决,DB2安装顺利完成

注意:umask(用户文件创建掩码)还会限制新建文件和目录的默认权限

  1. umask 0022
    • 新建的文件权限为 rw-r--r--(644)
    • 新建的目录权限为 rwxr-xr-x(755)
  2. umask 0027:
    • 新建的文件权限为 rw-------(600)
    • 新建的目录权限为 rwx------(700)

总结:

umask 0022 允许组和其他用户对文件和目录有读取权限,而 umask 0027 则限制了组和其他用户的访问,只有文件拥有者可以读取和写入这些文件及目录。