Посібники/Яка програма використовує файл
Як знайти, яка програма використовує файл на Mac
Коротка відповідь
Щоб знайти, яка програма відкрила файл на Mac, введіть lsof і пробіл у Терміналі, перетягніть файл у вікно й натисніть Return. Перший стовпець називає процес. Для папки lsof +D показує все, що відкрито в ній. У Моніторі активності двічі клацніть процес і відкрийте «Відкриті файли й порти»; це допомагає, коли ви вже підозрюєте якусь програму. Завершіть цю програму, і файл звільниться. Vitals, монітор активності й інспектор процесів для Mac, шукає серед усіх відкритих файлів одразу: введіть частину назви в «Відкритих файлах», і ви побачите програми, що його тримають.
Як знайти в Терміналі програму, що використовує файл
- 01 Відкрийте Термінал у папці Програми → Утиліти.
- 02 Введіть
lsofі пробіл, перетягніть файл із Finder у вікно й натисніть Return. - 03 Подивіться на перші два стовпці: назву процесу та його PID. Якщо виводу немає, жоден ваш процес не відкрив цей файл.
- 04 Запустіть команду ще раз із
sudoна початку, щоб охопити процеси macOS та інших користувачів. - 05 Завершіть програму, яку вона називає. Для процесу без вікна виконайте
kill <PID>з його PID.
Процес може бути помічником, а не програмою: QuickLookUIService належить Швидкому перегляду, а назва, що закінчується на Helper, належить програмі, названій перед цим словом.
macOS вважає файл зайнятим, поки програма тримає його відкритим, тому Смітник його не приймає, перейменування не вдається, а диск не вилучається. Процес легко знайти, коли знаєте, де шукати. У таблиці нижче кожне повідомлення подано з його звичайною причиною.
Файл використовується: що ви бачите і яка ймовірна причина
| Що ви бачите | Імовірна причина | Що робити |
|---|---|---|
| «Неможливо завершити операцію, оскільки елемент використовується» | Програма відкрила файл, або Швидкий перегляд показує його | Закрийте документ або перегляд і спробуйте ще раз |
| Смітник не очищується | Файл у Смітнику досі відкритий у програмі | Завершіть програму або перезапустіть Mac і очистьте Смітник |
| Файл не вдається перейменувати чи перемістити | Програма записує в нього | Дочекайтеся завершення збереження чи експорту |
| Диск не вилучається | На ньому відкрито файл чи папку | Див. Mac не вилучає диск |
| Файл замкнено | У вікні «Досьє» позначено «Замкнено», а це не те саме, що «використовується» | Зніміть позначку «Замкнено» у вікні «Досьє» |
Пошук у Моніторі активності
Монітор активності не вміє шукати серед файлів. Якщо ви підозрюєте якусь програму, двічі клацніть її, відкрийте вкладку «Відкриті файли й порти» і знайдіть у списку шлях до файлу. Для зайнятої програми список довгий, і він охоплює лише один процес за раз.
Як читати вивід lsof
Кожен рядок — один відкритий файл. COMMAND — процес, PID — його номер, FD — як відкрито файл, а NAME — шлях. У FD число з r означає читання, з w — запис, а з u — обидва; cwd — папка, у якій працює процес, а txt — програма та бібліотеки, які вона завантажила.
Усе, що відкрив один процес
Щоб піти у зворотному напрямку, від процесу до його файлів, виконайте lsof -p <PID> з його PID. lsof -c Preview показує файли кожного процесу, назва якого починається з указаних вами літер.
Коли файл у Смітнику
Смітник не очищується, поки будь-який файл у ньому відкритий. Завершіть програму, яка його відкрила. Якщо не знаєте, яка саме, lsof +D ~/.Trash покаже, що там відкрито; для цього Терміналу може знадобитися «Повний доступ до диска». Перезапуск Mac закриває все, і після нього Смітник очищується.
Коли файл ніщо не відкрило
Якщо lsof нічого не виводить навіть із sudo, файл не використовується. Файл, який усе одно не вдається змінити, замкнено, він належить іншому користувачу або лежить на диску, підʼєднаному лише для читання. Вікно «Досьє» показує прапорець «Замкнено» і дозволи.
Що додає Vitals
Vitals шукає серед усіх відкритих файлів на Mac за назвою.
- «Відкриті файли» на вкладці «Розробка»: натисніть ⌘F, введіть частину назви чи шляху файлу, і ви побачите кожну програму, що тримає відповідний файл
- За програмами, а не за процесами: помічник рахується під програмою, якій він належить
- Файли кожної програми на диску і скільки з них відкрито для запису
- Завершення програми з того самого рядка після підтвердження
Варто знати
- Без «Повних системних показників» файли процесів самої macOS не враховуються, і Vitals каже, скільки їх.
- Vitals показує, хто відкрив файл. Він не знімає замок із файлу й не змінює його дозволи.
- «Відкриті файли» є у вікні, а не в спадній панелі смуги меню.
Що питають люди
Як дізнатися, який процес використовує файл на Mac?
Виконайте в Терміналі lsof зі шляхом до файлу. Перший стовпець — процес, а другий — його PID.
Чому Mac каже, що елемент використовується?
Програма або перегляд досі тримає файл відкритим. Закрийте документ, завершіть програму або закрийте Швидкий перегляд і спробуйте ще раз.
Як видалити файл, що використовується, на Mac?
Знайдіть програму за допомогою lsof і завершіть її, а потім перемістіть файл у Смітник. Якщо нічого не знайшлося, перезапустіть Mac і видаліть файл після цього.
Чи показує Монітор активності відкриті файли?
Так, по одному процесу: двічі клацніть процес і відкрийте «Відкриті файли й порти». Шукати файл серед усіх процесів він не вміє.
Чи потрібен lsof sudo?
Без sudo вона показує лише ваші власні процеси. Із sudo — також процеси самої macOS, як-от Spotlight.
Чи є програма, яка показує, яка програма відкрила файл?
Так, Vitals. Введіть частину назви файлу в його розділі «Відкриті файли», і ви побачите програми, що його тримають, на будь-якому диску.
У глосарії
Інші посібники
- Чому мій Mac такий повільний
- Що розряджає акумулятор Mac
- Яка програма використовує процесор чи памʼять
- Чому Mac не засинає
- Chrome використовує забагато памʼяті
- Чому вентилятори Mac такі гучні
- Як керувати швидкістю вентиляторів на Mac
- Як звільнити оперативну памʼять на Mac
- Docker використовує забагато памʼяті
- Як зупинити контейнери Docker
- Мікшер гучності для Mac
- Cursor сильно навантажує процесор
- Claude Code використовує забагато памʼяті
- Ліміти використання Claude Code і Codex
- Програма Claude навантажує процесор
- Codex навантажує процесор
- Ollama використовує забагато памʼяті
- Vitals через SSH
- Диск не вилучається
- Альтернативи Монітору активності
- iStat Menus: альтернативи
- Stats: альтернативи
- Диспетчер завдань для Mac
- Найкращі системні монітори для Mac
- Найкращі монітори для смуги меню Mac
- Найкращі мікшери гучності для Mac
- htop для Mac
- Process Explorer для Mac
- Найкращі монітори процесів для Mac
- Найкращі монітори температури для Mac