阿里云云盘在卸载时关联到PHP进程,如何在不影响PHP进程情况下卸载磁盘

时间:2024-10-16 15:58:35
1.问题:

在使用umount /dev/vdc1 卸载磁盘时,提示如下,导致无法在Linux系统下卸载磁盘

umount /dev/vdc1
umount: /var/www/html/*/eshop/IFile3: target is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))
2.尝试:

查看磁盘挂载情况:

查看PHP-fpm 和NGINX运行状态:

查看Apache运行情况

查看文件占用情况:

lsof(List Open Files)是一个用于显示系统当前打开文件的工具,可以查看系统中哪些文件被打开,哪些进程打开了这些文件,以及这些文件被使用的情况等。lsof可以帮助系统管理员和程序员及时发现问题,比如查看系统中占用磁盘空间较多的文件,找出哪些文件正在被某个进程占用等。

端口占用情况:

3.结论:

经过找阿里云排查,是php-fpm 假死状态,重启php-fpm 服务即可。

systemctl restart php-fpm

再执行,即可卸载磁盘

lsof /var/www/html/e*go/eshop/IFile3

======以下为阿里云给出的卸载文档---可忽略== start=====

4.阿里云给出的卸载文档
Linux系统
  1. 远程连接ECS实例。

    具体操作,请参见通过密码或密钥认证登录Linux实例

  2. 运行以下命令查看数据盘挂载信息。

    df -h

    结果如下所示,数据盘分区(/dev/vdb1)仅为示例,您需要根据实际情况查询对应数据盘分区。

    查询挂载

  3. 运行以下命令卸载(umount)数据盘文件系统。

    以卸载数据盘分区(/dev/vdb1)文件系统为例:

    umount /dev/vdb1
  4. 运行以下命令查看数据盘分区的UUID信息。

    blkid
    结果如下所示,数据盘分区(/dev/vdb1)仅为示例。

    blkid

  5. 查询/etc/fstab中是否配置数据盘文件系统自动挂载信息。

     
    cat /etc/fstab

    结果如下所示,找到上一步骤中查询到的UUID信息,示例中显示/etc/fstab已配置数据盘分区(/dev/vdb1)文件系统。

    fstab

  6. 删除/etc/fstab中数据盘分区文件系统的自动挂载信息。

    说明

    如果不删除/etc/fstab中数据盘分区文件系统的自动挂载信息,在控制台卸载数据盘后,您重启ECS实例时将无法正常启动系统。

    1. 运行以下命令,编辑/etc/fstab。

      vim /etc/fstab
    2. 输入i,进入编辑模式。

    3. 删除或注释掉数据盘分区文件系统相关的自动挂载信息。

      以下示例中,在自动挂载信息前面添加#,表示注释掉自动挂载信息。

      注释

    4. 按Esc键,输入:wq后按回车键,保存并退出。

======以上为阿里云给出的卸载文档---可忽略== =END=====

参考:查看文件占用的利器lsof_lsof查看文件占用-****博客