Ошибка «недостаточно свободного места на диске» в Titanium Backup


44

Из-за проблемы с внешней SD-картой я подумал, что должен сбросить настройки телефона до заводских, а затем переустановить прошивку на нем. Однако прежде чем я сделаю это, мне нужно будет сделать резервную копию своих приложений и их данных, чтобы потом можно было их восстановить. Для этого я полагался на Titanium Backup Pro, поэтому я вошел в приложение, изменил каталог резервного копирования на /storage/emulated/legacy/TitaniumBackup(поскольку внешняя SD-карта была недоступна) и попытался выполнить резервное копирование всех пользовательских приложений и системных данных. Появилось диалоговое окно с прогрессом, которое застревало на 0% в течение примерно 30 секунд, пока оно не закрылось, и Titanium Backup отобразил уведомление «Пакетное резервное копирование прервано: недостаточно свободного места для хранения», несмотря на то, что осталось 7 гигабайт /storage/emulated/legacy.

Я попытался найти решение в Google - единственное, что было найдено, это удалить, /data/app/com.keramidas.TitaniumBackup-1.odexно файл не существовал с моей стороны. Как я могу исправить эту проблему?

Пояснение : Моя копия Titanium Backup - это версия Pro, активируемая ключом Pro, полученным из магазина Google Play. Нет необходимости в каких-либо внешних патчерах, трещинах или кейгенах.


Это может звучать тривиально, не говоря уже о странности, но вы рассматривали возможность извлечения SD-карты из устройства и перезапуска последнего? Ваша проблема с SD-картой не была простой, карта была видна пользователю root (что означает приложения, работающие как root), но не другим.
— Повелитель огня

этот файл odex не может существовать в этом пути, только если вы сами odexed этот титан, этот файл находится в /data/dalvic-cache/arm/data@app@com.keramidas.TitaniumBackup-1.dex
— lord-ralf -адольф

@Firelord Я попытался перезагрузить устройство с удаленной картой, но это не решило проблему. Я получаю ту же ошибку от Titanium Backup.
— Ариэль

@Arielle Вы пытались удалить, а затем переустановить?
— Лорд-Ральф-Адольф

@ lord-ralf-adolf Я только что попробовал, и это все еще не работает.
— Ариэль

Ответы:


53

Это связано с тем, что в SuperSU включена настройка «Разделение пространства имен» (по умолчанию). Снимите флажок с этого, перезагрузите компьютер и попробуйте снова выполнить операцию резервного копирования Titanium.

Это происходит потому, что я считаю, что разрешения для папок, созданных приложением, ограничены в новых версиях Android. По иронии судьбы, у меня не было этой проблемы с CM13 на основе Marshmallow, но я столкнулся с ней в OxygenOS на основе Lollipop для OnePlus One.


Это работает как шарм на моем DU ROM на базе Lollipop 5.1.1 для HTC One m7, спасибо!
— №5

У меня тоже сработало. Я неделями пропускал резервные копии, думая, что мне действительно не хватает места.
— Киран Джонналагадда

Большое спасибо! Это работает для меня на Kitkat 4.4.2. Это глупо, когда SuperSU молча представляет это, поскольку полностью отключает некоторые другие приложения без предупреждения и без подсказки о причине. Или это действительно вина Титаниума?
— Цербер

@Cerberus Это вина Google :-)
— aalaap

1
Где можно отключить разделение пространства имен? CM 12.1 не использует SuperSU.
— Celeritas

6

Это происходит из-за некоторого изменения сервиса в kitkat. Некоторые исследования в Google показали, что есть приложение, которое может изменить файл platform.xml. После запуска приложение предлагает пользователю разрешить ему продолжить и внести изменения в вышеуказанный файл. После этого все работает нормально.

NextApp SDFix


5

При запуске TB всегда отображалось предупреждение о том, что функция разделения пространства имен SuperSU «может не работать надежно на некоторых платформах».

Ну, я никогда не сталкивался с какими-либо проблемами до недавнего обновления SuperSU ...

Таким образом, отключение этой опции в SuperSU и перезагрузка решили «недостаточно места» на моем OnePlus One / CM12.1.

Это было очевидное решение, прежде чем возиться с разрешениями и т. Д.


3

(Titanium Backup) пакетное резервное копирование прервано: недостаточно места для хранения, это решение работает для меня, любой может попробовать проверить, работает ли оно. У меня есть исправление. Я провел небольшое исследование и обнаружил, что вы можете отредактировать /etc/permissions/platform.xml и добавить группу в WRITE_EXTERNAL_STORAGE.

Оригинал:

Добавьте группу media_rw:

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

Предложите, чтобы вы сделали adb pull файла для сохранности перед этим. Если вы извлекаете файл, редактируете его и возвращаете обратно, убедитесь, что права доступа установлены на 644.


У меня не было этой группы на Android 6, но она была на Android 5. Простое добавление исправило сообщение о недостаточном объеме памяти. Поэтому добавьте это выше записи «WRITE_MEDIA_STORAGE»: <разрешение имени = "android.permission.WRITE_EXTERNAL_STORAGE"> <group gid = "sdcard_r" /> <group gid = "sdcard_rw" /> <group gid = "media_rw" /> < / разрешение>
— Беренд де Бур

2

В последних версиях Android пути под /storage/emulated/legacyработают только для приложений, которые их создали. Если ОС не знает, что туберкулез создан /storage/emulated/legacy/TitaniumBackup, вы получите эту ошибку.

Попробуйте использовать TB для создания каталога, затем используйте его для резервного копирования. В качестве альтернативы, используйте путь, который не начинается с /storage/emulated/legacy, как /data/media/0/TitaniumBackup. Либо должно работать.


Либо должно работать ... но ни один не сделал. Я попытался создать другой каталог /storage/emulated/legacyи использовать его для резервного копирования - не сработало. Я попытался использовать путь, который не начинался с /storage/emulated/legacy- /mnt/sdcard( вообще не /dataбыл доступен для Titanium Backup), и он все еще не работал должным образом.
— Ариэль

Хм, я знаю, что решил эту проблему на моем TF700T после установки нового ПЗУ. Но у меня были похожие проблемы в ряде приложений. Должно быть, я использовал /dataтрюк в другом. Я предполагаю, что вы использовали TB для создания другого каталога в /storage/emulated/legacy? Иначе не получится.
— Требор Руд

1

просто зайдите в супер-user-settings-untick "разделить пространство имен монтирования" и перезагрузите готово !!


4
И причины этого?
— Повелитель огня

Тот же ответ, что и самый высокий рейтинг. Titanium Backup теперь выдает предупреждение, если включено разделение пространства имен, что каким-то образом разделяет команды суперпользователя. Резервная копия Titanium не может получить доступ к нужным вещам, если пространства имен разделены.
— mix3d

0

Как сказал @Izzy , это была проблема XY - я мог бы искать другое решение для резервного копирования вместо того, чтобы настаивать на использовании Titanium Backup. И я сделал - я использовал adb backupфункцию (которая работала, когда я перезагрузил свой телефон). В конце концов мне не пришлось восстанавливать резервную копию вообще, но это совсем другая история.


0

Откройте настройки вашей резервной копии Titanium. Тогда ищите вариант под названием Резервное приложение внешние данные в Настройки резервного копирования . Убедитесь, что он НЕ включен. Вместо этого установите значение «Включено, если размер меньше выбранного размера» и установите размер 35 МБ.

(Нажмите на изображение, чтобы увеличить)

IMG: резервное копирование внешних данных

Некоторые приложения имеют огромное количество внешних данных (хранящихся в /sdcard/Android/ data), особенно игры, которые могут занимать несколько концертов. Эта опция отключает резервное копирование их, поскольку они могут быть загружены снова.


Извините, но это решение не сработало с моей стороны. Для параметра «Внешние данные приложения резервного копирования» уже задано значение «Включено, если он меньше выбранного размера», а для размера было установлено значение 32 МБ, поэтому я попытался установить для него значение «Отключено (всегда)» и повторить попытку резервного копирования ... не работает
— Ариэль

@Arielle Попробуйте включить сжатие (установив BZIP2). Убедитесь, что вы просто создаете резервные копии пользовательских приложений, а НЕ системных приложений.
— Вишал Бисвас

Я попытался изменить сжатие с GZIP на BZIP2 и создать резервную копию только пользовательских приложений. Все еще не работает. Хотя у меня осталось 7 ГБ свободного места.
— Ариэль

В крайнем случае: запустите logcat от имени пользователя root . Это даст вам идею по крайней мере.
— Вишал Бисвас

0

Если вы используете Magisk в качестве администратора суперпользователя, перейдите к settings> mount namespace modeи выберите isolated namespace. Надеюсь, это поможет кому-то!


-2

Я также столкнулся с этой странной ситуацией. Я не знаю, будет ли это работать или нет. Но для меня это работает.

Установите счастливый патчер . Он автоматически удалит файл odex, и вы сможете установить Titanium Backup.


Но там, похоже, нет файла .odex. И это не кажется скрытым, учитывая его учебники в Интернете. // А TitaniumBackup уже установлен!
— Повелитель огня

В моем случае такой же сценарий есть. Я также не могу просмотреть файл. Пожалуйста, установите этот APK и откройте. просто подождите 5-10 секунд, он будет автоматически сканироваться и удаляться. Вы увидите уведомление, когда это будет сделано
— Dalvik


там нет odex-файла, только если вы odex-приложение самостоятельно, как, например, применение патча от lucky patcher, если вы делаете lucky patcher, примените патч к odex-файлу и поместите его в тот же каталог, что и apk (я думаю, что использование счастливый патчер незаконен - ​​просто говорю
— лорд-ральф-адольф

1
@Dalvik Спасибо за помощь, но вы упускаете основной момент. Похоже, мы не можем найти этот файл odex и этот патчер - не волшебная штука, которая создаст этот файл самостоятельно, удалит его и скажет нам, что он сделал свою работу! Правильно!
— Повелитель огня
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.