вторник, 9 апреля 2013 г.

Oracle Linux Server: удалил файл, но место не освободилось

Пожаловался админ Оракла, что удалил файл, а место-то и не добавилось!

«Ты, — говорит, — сисадмин, ты и разбирайся».

Пришлось опять объяснять, что перед тем как удалить файл надо же проверить, не занят ли он каким-либо процессом, и если занят, то сначала освободить…

# fuser /path/filename

Что же теперь делать, когда открытый файл уже удален?

В # man lsof написано как найти такой файл:

‘‘+aL1 <file_system>’’ will select unlinked open files on the specified file system.

# lsof +aL1 /oracle/oradata
COMMAND   PID   USER   FD   TYPE DEVICE        SIZE NLINK     NODE NAME
oracle  11047 oracle  266u   REG  253,7 15032393728     0 17465353 /oracle/oradata/IMUX/temp.dbf (deleted)

Получается, что файл разлинкован, но открыт, и его держит процесс:

# ps -f -p 11047
UID        PID  PPID  C STIME TTY          TIME CMD
oracle   11047     1  0 Jan16 ?        00:00:01 oracleIMUX (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

Комментариев нет:

Отправить комментарий