Блог
Назад к статьям

Личный диск Bitrix24 не открывается и не загружаются файлы: восстановление Storage пользователя

Разбираем реальный кейс Bitrix24: у администратора не открывался личный диск, вместо него отображалась лента, а вложения в почте не загружались. Причина оказалась неожиданной — отсутствующее персональное хранилище Disk Storage.

15 июня 2026 г.
602
BackendDevOpsSystem Administrationbitrixphpcrmcmsd7bitrixvm
Личный диск Bitrix24 не открывается и не загружаются файлы: восстановление Storage пользователя

Симптомы

На одном из порталов Bitrix24 возникла странная ситуация.

У администратора перестал открываться личный диск:

/company/personal/user/14254/disk/path/

Вместо интерфейса диска отображалась обычная лента активности.

Дополнительно появилась ошибка при загрузке файлов через модуль Почта:

Недостаточно прав доступа для загрузки файла на сервер

При этом:

  • пользователь являлся администратором;
  • права доступа были корректны;
  • свободное место на сервере присутствовало;
  • другие сотрудники работали без проблем.

Первичная диагностика

Первое подозрение падает на модуль Disk.

Проверяем наличие пользовательского Storage:

$userId = 14254;

$storage = \Bitrix\Disk\Driver::getInstance()
    ->getStorageByUserId($userId);

var_dump($storage);

Результат:

NULL

Для сравнения проверяем рабочего пользователя:

$userId = 5;

$storage = \Bitrix\Disk\Driver::getInstance()
    ->getStorageByUserId($userId);

var_dump($storage);

Результат:

object(Bitrix\Disk\Storage)

Что означает NULL

Каждый пользователь Bitrix24 имеет собственное хранилище файлов.

Оно хранится в таблице:

b_disk_storage

Через него работают:

  • Личный диск;
  • Почта;
  • Чат;
  • Комментарии;
  • Задачи;
  • Прикрепление файлов.

Если Storage отсутствует, пользователь теряет возможность работать с файлами.


Проверка базы данных

Проверяем наличие записи:

SELECT *
FROM b_disk_storage
WHERE ENTITY_ID = 14254;

Результат:

0 rows

Запись отсутствовала.


Решение

Для восстановления хранилища используем штатный API Bitrix.

$userId = 14254;

$user = \Bitrix\Main\UserTable::getById($userId)->fetch();

$storage = \Bitrix\Disk\Driver::getInstance()
    ->addUserStorage($userId);

var_dump($storage);

После выполнения метода Bitrix автоматически:

  • создал Storage;
  • создал корневую папку;
  • зарегистрировал права доступа;
  • восстановил структуру пользовательского диска.

Результат

После создания Storage:

✅ открылся личный диск

✅ заработала загрузка файлов

✅ исчезла ошибка доступа

✅ восстановилась работа почтовых вложений


Как найти других пользователей без Storage

Полезный скрипт для аудита портала:

$rsUsers = \Bitrix\Main\UserTable::getList([
    'select' => ['ID', 'LOGIN']
]);

while ($user = $rsUsers->fetch())
{
    $storage = \Bitrix\Disk\Driver::getInstance()
        ->getStorageByUserId($user['ID']);

    if (!$storage)
    {
        echo $user['ID'] . ' | ' . $user['LOGIN'] . PHP_EOL;
    }
}

Почему это происходит

На практике такое встречается после:

  • восстановления резервной копии;
  • миграции портала;
  • ошибок обновления;
  • некорректного импорта пользователей;
  • ручного изменения таблиц базы данных.

Вывод

Если в Bitrix24 одновременно:

  • не открывается личный диск;
  • не прикрепляются файлы;
  • появляются ошибки доступа;

то первым делом проверьте наличие пользовательского Storage через:

\Bitrix\Disk\Driver::getInstance()
    ->getStorageByUserId($userId);

Возвращаемый NULL почти всегда указывает на отсутствие персонального хранилища пользователя.

В большинстве случаев проблема решается штатным методом:

\Bitrix\Disk\Driver::getInstance()
    ->addUserStorage($userId);

без вмешательства в базу данных и без переустановки модуля Disk.

Личный диск Bitrix24 не работает: восстановление Disk Storage пользователя