Как Ubuntu работает без файла Wubi Root

Проблема была окончательно решена, полностью переустановив ubuntu 18.04 с помощью usb-ключа. Проблема замороженного закрытия снова появилась, но была решена с полным обновлением драйверов, выполняющих автоматическую установку sudo ubuntu-драйверов (в частности, nvdia geforce). В первый раз что-то не так в этом обновлении драйверов, проблема осталась, и появились другие. Будьте осторожны, чтобы обновить драйверы и следовать инструкциям по безопасному обновлению! Например, при необходимости перезагрузите пароль. Любопытно, что ни один из этих приоблемов не появился в установке 17.10 ни в 16.04 в прошлом ...

1
задан 16 March 2012 в 10:09

1 ответ

Установка Wubi использует петлевые петли. По существу он монтирует вашу файловую систему Windows, а затем обрабатывает файл в этой файловой системе (ваш корневой файл) в качестве блочного устройства. Это в основном означает, что вместо того, чтобы непосредственно считывать блоки файловой системы из раздела, он смотрит на макет файла в другой файловой системе, чтобы найти каждый отдельный блок. Он не запускает систему из ОЗУ.

Затем она выполняет некоторую гимнастику, чтобы сделать петлевую файловую систему в виде корня, а ваша файловая система Windows появляется где-то ниже корня.

Как правило, вы не должны изменять файл резервной копии для loopback mount, так как он может запутать драйвер файловой системы, относящийся к этому файлу. Казалось бы, действия, которые вы предприняли, были недостаточны, чтобы вызвать эти проблемы.

В системах UNIX, как только вы открываете файл для доступа, все еще можно прочитать его, не вызывая проблем. Рассмотрим следующий короткий пример Python:

import os

with open('oldname', 'w') as fp:
    fp.write('content')
with open('oldname', 'r') as fp:
    os.rename('oldname', 'newname')
    print(fp.read())

Как и в вашей файловой системе с петлевой петлей, мы все равно можем прочитать содержимое после перемещения файла. Аналогичный эффект можно увидеть при удалении файла:

with open('newname', 'r') as fp:
    os.remove('newname')
    print(fp.read())

Пока имя файла удалено, фактическое содержимое сохраняется до тех пор, пока не будет закрыт последний дескриптор открытого файла. Для этих целей контур loopback можно рассматривать как дескриптор файла.

Копирование файла также вряд ли приведет к запуску loopback mount (поскольку оно просто считывает оригинал), но не обязательно является хорошим способом для выполнения резервного копирования. Требуется некоторое время для чтения большого файла, поэтому к тому моменту, когда вы дойдете до конца файла, запуск может быть изменен. Поэтому, если вы попытаетесь использовать скопированный файл в качестве образа диска, он может быть поврежден (хотя это повреждение может быть исправлено при проверке файловой системы).

Если вы хотите создать резервную копию своей системы, Я бы предложил либо использовать инструмент резервного копирования, включенный в Ubuntu, либо загрузиться в Windows, и копировать образ диска там (поскольку Ubuntu не работает, нет возможности изменить образ диска во время его копирования).

1
ответ дан 25 May 2018 в 13:28
  • 1
    Спасибо, у меня никогда не было такого гигантского ответа !!!, Хорошо, как вы сказали, что он использует корневой файл, что бы я ни делал (кроме удаления), поэтому можно переименовать корневой файл 10.10 и скопировать файл 11.10 root и перезагрузить его до 11.10 , не так ли? – Prasad RD 16 March 2012 в 11:33

Другие вопросы по тегам:

Похожие вопросы: