不少时候咱们在搭建nginx服务的时候会出现这样那样的错误,下面这个错误就是其中之一:
# /etc/init.d/nginx restart
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
Stopping nginx: [ OK ]
Starting nginx: shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
[ OK ]
这是一个getcwd 错误,和你定义的web服务的root目录有关系,表示 getcwd 命令没法定位到当前root目录。
这样的状况ps -ef|grepn ginx查看的话,服务是已经正常启动的,可是为何会报这样的错误呢?
首先想到缘由有,当前用户没有当前目录的可执行权限
那就ls -la 依次查看你的root路径,是否是都是www可读可执行的;
检查完毕,保证都是www可读可执行,那还有什么缘由呢?
没缘由,试试进入到你root的实际目录下执行服务重启,帮助getcwd定位你的root目录
# /etc/init.d/nginx restart
Stopping nginx: [ OK ]
Starting nginx: [ OK ]
成功了。