MAC OS. Траблы с освобождением места на диске.

  • Автор темы Автор темы bug
  • Дата начала Дата начала
  • Теги Теги
    mac os
Облако на базе VMware

bug

Почетный гость
06.05.2026
5
0
1
Москва
Коллеги, приветствую.

Имеем:
OS 10.15.8
HD 3TB APFS

После удаления файлов, свободное место на диске не особо увеличивается. При удалении файла примерно 10Гб, прирост свободного пространства меньше 1Гб.

Time Machine не запущена, снапшотов так-же нет. Комп перегружал, 48 часов ждал.
tmutil listlocalsnapshots / использовал - ничего нет.

Что не так?
 
Облако на базе VMware
Это классическое поведение APFS (Apple File System) на macOS. Суть в том, что система не спешит физически стирать данные, пока они могут быть нужны для резервного копирования.

### 🧐 Почему это происходит (Краткий ликбез)

Вы столкнулись с работой механизма **APFS-снимков (APFS Snapshots)**. Time Machine или подобные программы (например, Carbon Copy Cloner) создают их, чтобы вы могли вернуться к старым версиям файлов.

* Когда вы удаляете файл, система просто говорит: «Это место теперь свободно».
* **НО:** Если существует снимок (снапшот), который ссылается на этот файл, физически данные остаются на диске.
* В результате: `df` (утилита в Терминале) видит реальную занятость (данные + снимки), а Finder видит только живые файлы. Отсюда и кажущаяся пропажа места.

### 🛠️ Как вернуть место (Пошаговое решение)

Самый надежный способ — вручную удалить старые снимки через «Терминал».

**Шаг 1: Проверьте, есть ли снимки**
Откройте «Терминал» (находится в `Программы -> Утилиты`) и вставьте команду:
```bash
diskutil apfs listSnapshots /
```
(Если у вас внешний диск, замените `/` на путь к нему, например `/Volumes/MacHD`).

Если в ответе вы видите список с датами (`com.apple.TimeMachine...`) — вы нашли «виновника» пропажи места.

**Шаг 2: Удалите «лишние» снимки (2 способа)**

* **Способ А (Массовая чистка — рекомендую):** Просто «проредите» все снимки, заставив систему освободить место.
sudo tmutil thinlocalsnapshots / 9999999999999999 1
Введите пароль (он не будет отображаться на экране) и нажмите Enter. Сработает почти мгновенно.

* **Способ Б (Точечное удаление):** Если хотите удалить что-то конкретное (например, снимок за вчерашний день).
* Сначала посмотрите список: `tmutil listlocalsnapshots /`
* Скопируйте имя снимка (выглядит как `com.apple.TimeMachine.2026-04-12-092347`) и удалите его:

sudo tmutil deletelocalsnapshots com.apple.TimeMachine.[дата-и-время]

* **Не бойтесь удалять старые снимки.** Если у вас включен Time Machine, система создаст новый снимок при следующем резервном копировании.
* **Осторожно с «Самостоятельной фермой».** Если вы используете не Time Machine, а только Carbon Copy Cloner для бэкапов, удалять снимки через терминал можно, но правильнее сделать это в интерфейсе самой программы CCC.
* **Что не поможет:** Очистка корзины, перезагрузка или проверка диска «Дисковой утилитой» (First Aid) **не удаляют** эти снимки.

Это безопасная операция, которая напрямую влияет только на служебные данные резервного копирования. После выполнения команды вы должны увидеть, что пропавшие гигабайты вернулись.

Если после этих действий проблема сохранится, сообщите, пожалуйста, результат команды `diskutil apfs listSnapshots /` — это поможет уточнить ситуацию.
 
Это классическое поведение APFS (Apple File System) на macOS. Суть в том, что система не спешит физически стирать данные, пока они могут быть нужны для резервного копирования.

### 🧐 Почему это происходит (Краткий ликбез)

Вы столкнулись с работой механизма **APFS-снимков (APFS Snapshots)**. Time Machine или подобные программы (например, Carbon Copy Cloner) создают их, чтобы вы могли вернуться к старым версиям файлов.

* Когда вы удаляете файл, система просто говорит: «Это место теперь свободно».
* **НО:** Если существует снимок (снапшот), который ссылается на этот файл, физически данные остаются на диске.
* В результате: `df` (утилита в Терминале) видит реальную занятость (данные + снимки), а Finder видит только живые файлы. Отсюда и кажущаяся пропажа места.

### 🛠️ Как вернуть место (Пошаговое решение)

Самый надежный способ — вручную удалить старые снимки через «Терминал».

**Шаг 1: Проверьте, есть ли снимки**
Откройте «Терминал» (находится в `Программы -> Утилиты`) и вставьте команду:
```bash
diskutil apfs listSnapshots /
```
(Если у вас внешний диск, замените `/` на путь к нему, например `/Volumes/MacHD`).

Если в ответе вы видите список с датами (`com.apple.TimeMachine...`) — вы нашли «виновника» пропажи места.

**Шаг 2: Удалите «лишние» снимки (2 способа)**

* **Способ А (Массовая чистка — рекомендую):** Просто «проредите» все снимки, заставив систему освободить место.
sudo tmutil thinlocalsnapshots / 9999999999999999 1
Введите пароль (он не будет отображаться на экране) и нажмите Enter. Сработает почти мгновенно.

* **Способ Б (Точечное удаление):** Если хотите удалить что-то конкретное (например, снимок за вчерашний день).
* Сначала посмотрите список: `tmutil listlocalsnapshots /`
* Скопируйте имя снимка (выглядит как `com.apple.TimeMachine.2026-04-12-092347`) и удалите его:

sudo tmutil deletelocalsnapshots com.apple.TimeMachine.[дата-и-время]

* **Не бойтесь удалять старые снимки.** Если у вас включен Time Machine, система создаст новый снимок при следующем резервном копировании.
* **Осторожно с «Самостоятельной фермой».** Если вы используете не Time Machine, а только Carbon Copy Cloner для бэкапов, удалять снимки через терминал можно, но правильнее сделать это в интерфейсе самой программы CCC.
* **Что не поможет:** Очистка корзины, перезагрузка или проверка диска «Дисковой утилитой» (First Aid) **не удаляют** эти снимки.

Это безопасная операция, которая напрямую влияет только на служебные данные резервного копирования. После выполнения команды вы должны увидеть, что пропавшие гигабайты вернулись.

Если после этих действий проблема сохранится, сообщите, пожалуйста, результат команды `diskutil apfs listSnapshots /` — это поможет уточнить ситуацию.
Благодарю за обратную связь, но в своём обращении я указал, что снапшотов на диске нет.
на всякий случай вновь использовал diskutil - ответ "No snapshots for disk2s5"
 
Облако на базе VMware
Попробуйте в безопасном режиме загрузиться
Иногда удалённые файлы остаются занятыми процессом. Перезагрузка не всегда помогает полностью (из-за кэшей).
  1. Загрузитесь в безопасном режиме:
    • Выключите Mac.
    • Включите и сразу зажмите ⇧ Shift, пока не увидите окно входа.
    • Войдите в систему. Безопасный режим принудительно чистит кэши и сбрасывает файловые блокировки APFS.
    • Перезагрузитесь в обычный режим и проверьте место.
 
Облако на базе VMware
Хм интересно. А Режим восстановления и проверка диска уилитой First Aid что нибудь дает ?
Может есть ошибки на диске или ошибки файловой системы

Проверка файловой системы.
Не удалось отключить том.
Использование «живого» режима.
Выполняется fsck_apfs -n -l -x /dev/rdisk2s1
Checking the container superblock.
Checking the fusion superblock.
Checking the EFI jumpstart record.
Checking the space manager.
Checking the space manager free queue trees.
Checking the object map.
Checking the Fusion data structures.
Checking volume.
Checking the APFS volume superblock.
The volume Macintosh HD — данные was formatted by hfs_convert (945.200.129) and last modified by apfs_kext (1412.141.3.7.2).
Checking the object map.
Checking the snapshot metadata tree.
Checking the snapshot metadata.
Checking snapshot 1 of 1 (com.apple.apfs.purgatory.b0f5d4)
error: object (oid 0x4000007870c00): Bad size for physical extent record val, len: 532
Snapshot is invalid.
The volume /dev/rdisk2s1 could not be verified completely.
Код ответа проверки файловой системы: 0.
Исходное состояние: подключено (выявлено при восстановлении)

Операция выполнена успешно.
 

Шаг 1: Загрузитесь в режиме восстановления (Recovery Mode)​

Это самый важный шаг. Вы не сможете правильно исправить загрузочный диск, пока macOS загружена с него. Режим восстановления позволяет запустить компьютер с отдельного раздела и безопасно работать с основным диском.

  1. Выключите Mac.
  2. Включите его и сразу же зажмите и держите клавиши Command (⌘) + R.
  3. Отпустите клавиши, когда увидите логотип Apple или вращающийся земной шар.

Шаг 2: Откройте Терминал и найдите поврежденный снимок​

Когда загрузится окно «Утилиты macOS», следуйте инструкции:

  1. В строке меню выберите Утилиты -> Терминал.
  2. Чтобы увидеть все снимки на вашем основном томе, выполните команду:

    bash
    tmutil listlocalsnapshots /
    Система может показать снимок, похожий на com.apple.apfs.purgatory.XXXXXXXX — именно его нам и нужно удалить.

Шаг 3: Удалите поврежденный снимок​

Теперь, когда вы знаете имя проблемного снимка, его нужно удалить. Это действие безопасно и не затронет ваши личные файлы, так как вы удаляете только «застрявшую» временную копию.

  • Выполните команду, заменив НАЗВАНИЕ_СНИМКА на точное имя из предыдущего шага:

    bash
    tmutil deletelocalsnapshots НАЗВАНИЕ_СНИМКА
    (Например: tmutable deletelocalsnapshots com.apple.apfs.purgatory.b0f5d4)
  • Если команда завершится с ошибкой, не отчаивайтесь. Это также известная ситуация. В таком случае попробуйте другой, более мощный подход:
    1. Откройте Дисковую утилиту (Disk Utility) из окна «Утилиты macOS».
    2. В меню Вид выберите Показывать все устройства.
    3. Выберите в левом меню сам диск (например, Apple SSD AP0256 Media), а не том (Macintosh HD).
    4. Нажмите кнопку Первая помощь (First Aid) и подтвердите действие. В какой-то момент сканирования утилита может автоматически обнаружить и удалить неверный снимок.

Шаг 4: Перезагрузитесь и проверьте результат​

После того как вы удалили снимок одним из способов:

  1. Закройте все окна утилит.
  2. Выберите Перезагрузить в меню Apple.
  3. Когда система загрузится, вы можете снова запустить Дисковую утилиту и проверить диск. Ошибка, связанная со снимком, должна исчезнуть.
 
Облако на базе VMware

Шаг 1: Загрузитесь в режиме восстановления (Recovery Mode)​

Это самый важный шаг. Вы не сможете правильно исправить загрузочный диск, пока macOS загружена с него. Режим восстановления позволяет запустить компьютер с отдельного раздела и безопасно работать с основным диском.

  1. Выключите Mac.
  2. Включите его и сразу же зажмите и держите клавиши Command (⌘) + R.
  3. Отпустите клавиши, когда увидите логотип Apple или вращающийся земной шар.

Шаг 2: Откройте Терминал и найдите поврежденный снимок​

Когда загрузится окно «Утилиты macOS», следуйте инструкции:

  1. В строке меню выберите Утилиты -> Терминал.
  2. Чтобы увидеть все снимки на вашем основном томе, выполните команду:

    bash
    tmutil listlocalsnapshots /
    Система может показать снимок, похожий на com.apple.apfs.purgatory.XXXXXXXX — именно его нам и нужно удалить.

Шаг 3: Удалите поврежденный снимок​

Теперь, когда вы знаете имя проблемного снимка, его нужно удалить. Это действие безопасно и не затронет ваши личные файлы, так как вы удаляете только «застрявшую» временную копию.

  • Выполните команду, заменив НАЗВАНИЕ_СНИМКА на точное имя из предыдущего шага:

    bash
    tmutil deletelocalsnapshots НАЗВАНИЕ_СНИМКА
    (Например: tmutable deletelocalsnapshots com.apple.apfs.purgatory.b0f5d4)
  • Если команда завершится с ошибкой, не отчаивайтесь. Это также известная ситуация. В таком случае попробуйте другой, более мощный подход:
    1. Откройте Дисковую утилиту (Disk Utility) из окна «Утилиты macOS».
    2. В меню Вид выберите Показывать все устройства.
    3. Выберите в левом меню сам диск (например, Apple SSD AP0256 Media), а не том (Macintosh HD).
    4. Нажмите кнопку Первая помощь (First Aid) и подтвердите действие. В какой-то момент сканирования утилита может автоматически обнаружить и удалить неверный снимок.

Шаг 4: Перезагрузитесь и проверьте результат​

После того как вы удалили снимок одним из способов:

  1. Закройте все окна утилит.
  2. Выберите Перезагрузить в меню Apple.
  3. Когда система загрузится, вы можете снова запустить Дисковую утилиту и проверить диск. Ошибка, связанная со снимком, должна исчезнуть.
В режиме восстановления, tmutil недоступна.