GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS/RHEL :Windows 共有のアンマウントに失敗 – 「デバイスがビジーです」

問題

umount コマンドを使用して Windows 共有マウント ポイントをアンマウントできません。この Windows 共有は、最近どのプロセスでも使用されていません。 umount コマンドを実行すると、次のエラーが表示されます。

umount: /data01: device is busy.
  (In some cases useful info about processes that use
  the device is found by lsof(8) or fuser(1))

解決策

エラー「umount:デバイスがビジーです」 ' は、マウント ポイントが何らかの理由でサーバーによって停止されていることを意味します。開いているファイル記述子を見つけるために、lsof コマンドが実行されます。

# lsof /data01/
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
rsync 39176 oracle cwd DIR 0,25 0 54427649 /data01/primdb/rman
rsync 39176 oracle 1r REG 0,25 6678585344 54428135 /data01/primdb/rman/.RMDBPRD_LVL0_20170910_s145161_p1.WxJoHy (deleted)
rsync 39176 oracle 3u REG 0,25 5449449472 54428147 /data01/primdb/rman/.RMDBPRD_LVL0_20170910_s145161_p1.uqhidN

kill コマンドを使用しても、この PID を強制終了できませんでした。

# kill -9 39176
# lsof /data01/
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
rsync 39176 oracle cwd DIR 0,25 0 54427649 /data01/primdb/rman
rsync 39176 oracle 1r REG 0,25 6678585344 54428135 /data01/primdb/rman/.RMDBPRD_LVL0_20170910_s145161_p1.WxJoHy (deleted)
rsync 39176 oracle 3u REG 0,25 5449449472 54428147 /data01/primdb/rman/.RMDBPRD_LVL0_20170910_s145161_p1.uqhidN

このマウント ポイントに書き込む rsync プロセスは、しばらく前に発生した IO ブロックのため、まだ D 状態です。

# ps aux |grep rsync
root 30103 0.0 0.0 103304 804 pts/0 S+ 10:24 0:00 grep rsync
oracle 39176 0.0 0.0 110956 96 ? D Sep10 17:48 rsync -av --delete /eva/primdb/rman/ /data01/primdb/rman/

このプロセスは中断できないスリープ状態にあるため、このプロセスを強制終了できませんでした。これが、サーバーから Windows 共有をアンマウントできない理由です。

D 状態 プロセスは、親のないプロセス リスト内の孤立したエントリのようなものであるため、kill コマンドを使用して強制終了できませんでした。そのため、そのような D 状態のプロセスを強制終了するためにサーバーを再起動することをお勧めします。

運用サーバーの場合のように、現時点で再起動できない場合は、プロセスが起動して完了するまで、IO が再び使用可能になるまで待ちます。ただし、サーバーにこのような D 状態のプロセスが増えると、サーバーの負荷が徐々に上昇する可能性があるため、1 か月以上待つことはお勧めしません。


Cent OS
  1. CentOS 5 /RHEL5にVirtualBox4.1をインストールする方法

  2. CentOS/RHEL 7 で udev を使用してカスタム デバイス名を設定する方法

  3. CentOS/RHEL 6,7 に Device Mapper Multipath をインストールして構成する方法

  1. CentOS/RHEL でマルチパス デバイスを削除する際の「map in use」エラー

  2. CentOS / RHEL :LUKS 暗号化デバイスを削除する方法

  3. Linux で Windows 共有のアンマウントが失敗する

  1. CentOS 6 /RHEL6にVirtualBox4.2をインストールします

  2. CentOS / RHEL 6 で NIC デバイス名を変更する方法

  3. CentOS/RHEL でマルチパス デバイス上の ASM ディスクを削除する方法