Раздел Mac OS X вводит проблему

Наиболее распространенный способ создать патч состоит в том, чтобы работать diff команда или некоторое встроенное управление версиями diff- как команда. Иногда, Вы просто сравниваете два файла, и Вы работаете diff как это:

diff -u version_by_alice.txt version_by_bob.txt >alice_to_bob.patch

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

patch <alice_to_bob.patch version2_by_alice.txt

Часто, Вы сравниваете две версии целого многофайлового проекта, содержавшегося в каталоге. Типичный вызов diff похож на это:

diff -ru old_version new_version >some.patch

Затем патч содержит имена файлов, данные в строках заголовка как diff -ru old_version/dir/file new_version/dir/file. Необходимо сказать patch разделять префикс (old_version или new_version) от имени файла. Это что -p1 средства: лишите один уровень каталога.

Иногда, строки заголовка в патче содержат имя файла непосредственно без подхода. Это распространено с системами управления версиями; например, cvs diff продолжает линии заголовка, которые похожи diff -r1.42 foo. Затем нет никакого префикса для разделения, таким образом, необходимо указать -p0.

В особом случае, когда нет никаких подкаталогов в деревьях, которые Вы сравниваете, нет -p опция необходима: patch отбросит всю часть каталога имен файлов. Но большую часть времени, Вам действительно нужно также -p0 или -p1В зависимости от того, как был произведен патч.

5
27.01.2014, 13:04
2 ответа

Можно попытаться использовать недокументированное adjust функция asr команда. Это может изменить маркировку типа файловой системы, на самом деле не изменяя данные.

В Вашем случае соответствующая команда была бы:

sudo asr adjust --target /dev/disk0s2 --settype "Apple_HFS"

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

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

9
27.01.2020, 20:36
  • 1
    Просто быстрое примечание: первоначально я по ошибке вошел disk0s4 как цель, это должно, конечно, быть disk0s2. –  robmathers 18.12.2012, 16:09
  • 2
    После изменения раздела окон на BootCamp (чтобы уменьшить раздел установки в размере и создать другой), загрузчик моего MacBook прекратил распознавать разделы HFS. Эта команда зафиксировала тот :D –  Bruno Lopes 04.11.2013, 02:45
  • 3
    !! Это недокументированное корректируется, функция убралась подобру-поздорову, после недокументированной функциональности OS X установщик Йосемити сделал мой Mac незагрузочным (но оставил Победу 8,1 bootcamp загрузочными.) –  Jared Thirsk 19.12.2014, 10:07

Just a little thing I'd like to add. The command above worked perfectly for me, but it couldn't see my name of the partition and wouldn't mount with Disk Utility, so I had to mount the drive in Terminal first: (my disk is disk0s3)

diskutil mount /dev/disk0s3

(in case someone else runs into the same thing I did, just always remember to check which partition is yours)

and TADA, my partition popped up with correct name and all.

I am still on Snow Leopard, btw, and everyting is in order now. You've made my day! You helped me so, so much! Thank you!

0
27.01.2020, 20:36

Теги

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