• Блог
  • За
  • Контакт
  • Архиви
  • Проекти
  • Подписвам

Джон е на 20-нещо Техническа живот ентусиаст в Линкълн Небраска и Google лято на Кодекса 2010 студента. Повече »

Джон Преглед на

Джон Стейси живот с технологията

Mac OS X: Смяна на кратко име без да се повредят машина на времето

22-ри Април, 2009 год. · 7 коментара

Днес имам желание да си сменя Mac OS X Леопард предвид краткото име (началната директория), така че ще трябва малко да въведете в терминал. Ето как си промених малко име, без да ми разбиват Машина на времето архивирания.

Предупреждение

Това ръководство има за цел да служи като отправна точка на тези, със системи за управление опит, или тези, с ненаситна жажда за бърникане. Има много неща, които биха могли да ужасно погрешно, вероятно дори и да направите резервни копия си неизползваем. Аз не правим никакви претенции, че този метод ще работи и не може да даде никаква подкрепа.

Аз не са дали окончателен сценарий Ruby по-долу. Той първоначално е бил два полезни скриптове, които съм написал по време на работа чрез неща, и аз ги комбинират за простота. Преглед на код, тестване, а след това се опитайте на свой собствен риск.

Подгответе машина на времето

Когато промените кратко име вашето потребителско име и вероятно групата ще се промени. В този случай, машина на времето ще започне нов резервен от нулата. Това може да се избегне, като отидете до всички архивирани машина на времето, и извършване на следните действия:

  1. Промяна на име на домашната директория на вашия нов кратко име (потребителско име)
  2. Актуализация на разрешения за нови вашето потребителско име и група

Първо, изключете Машина на времето резервни копия и се уверете, че резервният в момента не е в прогрес. След това изключите ACLs на вашата машина на времето обем се използва следната команда (като подходящи за замяна <tm_volume>). Без тази стъпка, ще ви бъде отказан достъп до файлове, дори и като корен.

1
/ Volumes / -d Sudo fsaclctl-P / Обеми / г-

След това копирайте скрипт Ruby долу, за да файл с име change_username_tm.rb и да промените това да отговарят на вашите промени.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#! / ЮЕсАр / хамбар / "Околна среда" рубин

dry_run = вярно # Тичане в сухо тече режим. Нищо няма да се промени.
# Промяна на "фалшиви", когато сте готови да поименно.

account_name = "на IMAC" Джон Стейси # Името на вашия Mac (намира се в Предпочитани системи -> Споделяне)
drive_name = "Macintosh HD" # Име на основната ви твърд диск
ново_потребителско_име = "Джон" # Вашето ново потребителско име, което искате
new_group = "Джон" # Новата група, която принадлежи към
старо_потребителско_име = "jonstacey" # Вашето потребителско име стари, които мразя
old_group = "jonstacey" # Старата група, която използва за принадлежат към

time_machine = "Машина на времето архивирания" # В името на вашата машина на времето Гръб шофиране

# Краят конфигурация

# Създаване на масив с всички резервни копия
( '/Volumes/' + time_machine + '/Backups.backupdb/' + account_name + '/*/' + drive_name + '/Users/' + old_username ) пътеки = Dir. Глоб ("/ Обеми /" + time_machine + "/ Backups.backupdb /" + + account_name'/*/' + drive_name + "/ Потребители /" + старо_потребителско_име)

# Преименуване
| old_path | пътеки. всеки да | old_path |
old_path == '/Volumes/' + time_machine + '/Backups.backupdb/' + account_name + '/Latest/' + drive_name + '/Users/' + old_username ) освен ако (old_path == "/ Обеми /" + time_machine + "/ Backups.backupdb /" + account_name + "/ Последни /" + drive_name + "/ Потребители /" + старо_потребителско_име)
( File . dirname ( old_path ) , new_username ) new_path = файл. присъединят (File. dirname (old_path), ново_потребителско_име)

# Преименуване на папка
to #{new_path} \n \n " поставя "Смяна на # () old_path \ N до # () new_path \ N \ N"
( old_path, new_path ) unless ( dry_run ) Файл. Преименуване (old_path, new_path), освен ако (dry_run)

# Разрешения Update
команда = "Sudo Чоун-R # () ново_потребителско_име: # () new_group \" # (new_path) \ ""
( dry_run ) система за командване, освен ако (dry_run)
край
край

Когато сте готови, изпълнение на скрипт в сухи план за вземане и всичко преразглеждане. Когато сте готови, определени dry_run с неверни и управляват като корен.

1
Sudo рубин change_username_tm.rb

Забележка: Има много файлове в библиотека, която би грешка, когато се опитва да назначат. Всичко изглежда да работи, така че предполагам, че ще разберете със сигурност следващия път, когато опита за възстановяване (може този ден никога не дойде). Най-лошия случай, аз трябва да възстанови файловете ми с ръка, която е това, което съм правил в продължение на години за Windows.

И накрая, отново даде възможност ACLs за обема TM се използва следната команда.

1
/ Volumes / -e Sudo fsaclctl-P / Обеми /-E

* Не давам възможност на резервни копия все още!

Промяна на кратко име

Следвайте инструкциите на нови Apple относно промяна вашето потребителско име кратко под Леопард: http://support.apple.com/kb/HT1428

Довърша

Казвам малка молитва и да Машина на времето един се опита да се уверете, че все още можете да видите всичките си резервни копия. Ако всичко изглежда да работи, иди с градушка се женят и опитайте да стартирате една машина на времето Гръб Сега (Съвет: не е опция, ако кликнете върху бутона машина на времето статус в менюто). Ако резервната работи, тогава може да се прибере безплатно и това е безопасно да се ре-давам възможност автоматично архивиране.

Дъх една въздишка на облекчение и обещание сами да планират бъдещето си следващия път, когато преинсталирате Mac OS X.

Вашият опит

Ако сте имали успех след този или друг начин, да ме уведомите по публикувате коментар! Не забравяйте обаче, не може да даде никаква сериозна техническа поддръжка ;-)

Маркирани като: леопард , Mac OS X , Ruby , Барс

comments… read them below or add one } (7 коментара ... ги прочетете по-долу или добавянето на един )

October 31, 2009 at 9:19 am 1 Мат 31ви октомври 2009 година в 9:19 ч.

Благодаря тон! Аз инсталиран Барс (чиста инсталация), но забравих да използвате същото потребителско име, както ми Леопард инсталирате. Тичах скрипта и сега Машина на времето работи прекрасно отново.

Отговор

October 31, 2009 at 11:55 pm 2 Джон Стейси 31ви Октомври, 2009 година в 11:55 ч.

@ Мат, Радвам се да чуя!

Бележка на всички: Имайте предвид, че не съм напълно изпитано това. Аз бях благословен с надеждна IMAC до този момент. Въпреки това, докато аз не се опитах пълно възстановяване, като част от преинсталирате съм възстановен отделни директории и файлове, без никакви проблеми.

Отговор

November 16, 2009 at 5:27 am 3 Стефан 16-ти ноември, 2009 год. в 5:27 ч.

Има ли път не започне от нулата, защото машината промените дома папка, а не защото смените кратко име (което може да направите wihtout промяна на дома папка)?
Чудя се, ще бъде възможно да промените папката дом на каталога, който е един hardlink към стария си дом папка. Бихте, които пречат на машина на времето за започване на нов гръб?

Отговор

November 18, 2009 at 10:55 am 4 Джон Стейси 18-ти Ноември 2009 година в 10:55 ч.

@ Стефан, Кратко име трябва да съответства на името на директорията посетители. Може да бъде в състояние да се измъкне с твърда връзка, но аз лично не бих искал да добавя, тъй като ненужни елементарно.

Отговор

November 18, 2009 at 11:15 am 5 Стефан 18-ти Ноември, 2009 година в 11:15 ч.

Вие сте прав, и единствената причина, заради която ще бъдат temped да опитате трик с твърда връзка е да остави старата папка дома си в място за машина на времето, след един кратък промяна на името. Аз просто мислех, може би това ще убеди машина на времето, че те всички са всъщност една и съща файлове. Но така или иначе, аз забравих, че не можете да създадете една твърда връзка към една папка. Или може ли?

Отговор

May 23, 2010 at 1:07 am 6 Евън 23-ти май 2010 в 1:07 ч.

Много благодаря човек, голяма помощ. За тези от вас, използване на OS X 10.6, които имат проблеми като се използва fsaclctl команда като бях, ето един лесен начин да го извади от старата 10,5 инсталирате диска:
http://porkrind.org/missives/how-to-get-fsaclctl-off-your-leopard-install-dvd/
В Барс, Apple отстранени fsaclctl с цел да се даде възможност постоянно ACL.

Отговор

June 29, 2010 at 9:17 am 7 Джон Стейси 29-ти юни 2010 в 09:17 ч.

@ Евън, Благодаря за върха. Смятам, че досадно, че тази полезна команда вече не е на разположение, когато е било просто добавя 10.4 съгласно Документи. Тогава пак, това е един много употреба ниша. Всеки, който се влива в този проблем може да искате да разгледа подаване на Mac OS X за доклада за грешка . Броят на дубликат доклади влияния как Apple приоритет, така че един определен праг, ще трябва да бъдат изпълнени дори да ги накарат да обсъди този въпрос.

Като алтернатива, други може да има късмет с TinkerTool система на издаване 2. Това ще допринесе за един интересен проект reimplementation да бъдат добавени към MacPorts. Но пак, доста малки използване случай.

Отговор

Отказ отговор

Оставете коментар

Предишна публикация: Google лято на Кодекса 2009

Следващ пост: Google лято на Кодекса Развитие на блога

  • Търсене

  • Последните публикации

    • Дали IPAD струва? Първите ми мисли
    • Върнете се в GitHub
    • Преглед на Десетилетието: Социалната 00 на
    • Анимирани Манделброт и приятели да обединят усилията си до вилицата Някои кодекс
    • Mac OS X за ресурса Forks
  • Аз съм четенето на тези

    Мъдростта на тълпите Джон Адамс Как да прочете една книга
  • Аз бях наскоро Прочети

    Интересни времена Little Brother В дързост на надеждата Операционни системи Какао Програмиране за Mac OS X C + + Програмиране Открадне този компютър Книга 3 Престъпление и наказание Изречение Корекция Пътеводител GMAT Подготовка, 4-то издание Прагматични за управление на версиите
  • Преводач

© 2007-2010 Джон Стейси · Защита · Условия за ползване