Os x lion timemachine сервер на debian

Решта в основному повторюють названі і посилаються на них. Всі вони різного ступеня давності, а останній я взагалі знайшов в самий останній момент (і він щось мені і допоміг більше всіх). Але ви тільки подивіться на розмір. Це охуеть, народ радить збирати з вихідних, Компільо якісь ліві бібліотеки, танцювати на вухах, затиснувши в анус вувузелу і награє тему з Battlefield 2. Колись це було потрібно, але не зараз.

Нам потрібно два сервісу: avahi - така хрень, яка в OS X називається Bonjour, вміє сканувати локальну мережу на предмет різних кулю і з метою підключення до них, ну і навпаки - розповідати про нову кулі в мережі. Нас цікавить саме останній її функціонал. netatalk - опенсорсний реалізація еппловскій протоколу AppleTalk. Постійно оновлюється і розробники істерії, мовляв «от наступного разу сраний АППЛ точно все зламає і ми нічого не зможемо зробити». Але в підсумку вміють і можуть.

Читачу стає зрозуміло, що вся робота, власне, реалізується демоном netatalk, а avahi допомагає маку швиденько побачити його в мережі і не питати постійно на який диск мені бекапи. Існує так само казка про те, що комусь вдавалося бекап на samba-кулі (хто не пробував, може спробувати сам), проте в реальному житті такі спроби зазвичай закінчуються веселою помилкою про те, що даний диск не підтримує функції протоколу AFP і йдіть в пизду, спасибі, будь ласка.

Насамперед розповімо маку про те, що крім АППЛ є ще життя на землі і не добре так не визнавати інших поцонов. Коротше дозволимо бекапи на «підтримуються» носії (звичайно, непідтримуваними вважаються всі, які виробництва не Apple). Робиться це чарівної рядком:

Тепер на час забуваємо про мак, логіном по ssh на сервер (або як ви там отримуєте до нього доступ) і починаємо. Але не кидаємося на міни відразу, а включаємо мозок (на відміну від мене). Ми пам'ятаємо, що у нас стоїть Debian Squeeze і якщо подивитися яка версія netatalk в репозиторіях, ми побачимо 2.1.x - що дуже погано. Ні, колись це було добре, але з OS X Lion це погано. Нам треба не менше 2.2, а це тільки в Wheezy і Sid. Якщо ставити Sid, він потягне за собою ще 500 нових glibc і іншого шлаку, так що краще спробувати Wheezy. Ні, ще можна спробувати завантажити якийсь бекпорт типу цього. однак у мене і він не заробив постійно висірая дивні «Syntax error:") "unexpected», так що довелося ризикувати і робити спробу кровозмішення дебаянов. Ця спроба виправдала себе і після зміни в /etc/apt/sources.list squeeze на wheezy він стягнув всього-лише пару лівих залежностей і поставив версію 2.2.2, яка нас цілком влаштує. Не забудемо тільки повернути потім все назад.

На все погоджуємося, якщо стояло раніше - зносимо до біса. Я не жартую, там половина конфігов тупо стало не потрібна після оновлення версії, в них тільки плутатися.

Тепер у нас два шляхи: або створити нового користувача, або бекап від існуючого, просто додавши його в групу. Я вважав за краще створити користувача timemachine с / home / timemachine і бекап туди.

Для самих маленьких і тупих: перша команда - створює користувача, друга - задає йому пароль, третя створює групу, четверта - додає користувача в цю групу. Можна ще додати користувачів до групи tmachine, тоді їм буде веселіше.

Якщо passwd видає щось типу «passwd: Невідомий модуль passwd: пароль не змінений», значить при такому кровозмішення squeeze + wheezy у вас побився cracklib і треба його теж встановити заново.

Для приколу можна ще зробити ось це, але я не знаю чи реально воно потрібно:

Тепер найцікавіше: налаштовуємо netatalk і afp.

Якщо хтось вам каже, що треба писати якийсь XML в файл /etc/avahi/services/afpd.service - харкніте йому в обличчя. Знесіть нахер цей файл і не згадуйте його, з версії якийсь там він більше не потрібен і afp визначає всі свої кулі сам через dbus.

А що нам дійсно треба, так це:

Відмотати в саааамий низ за допомогою Ctrl + V і додати рядок:

По ідеї це все одна строчка, просто довелося розбити, чи не влазило. Розберемо по-порядку: / home / timemachine - папка, куди будемо бекапи. "TimeMachine" - назва кулі, воно і буде видно в вашому маці. cnidscheme: dbd - тип бази для зберігання. забув уже, похуй, головне, що там dbd, а не cbd як раніше радили. options: tm, upriv, usedots - головне тут - опція tm. Вона з'явилася якраз в останній версії і робить все красиво. Не забудьте її. ea: ad - так як OS X любить зберігати деяку інформацію в так званих розширених правах (xattr), а наша ext3 їх не підтримує, ми говоримо зберігати цю інфу в окремій прихованої таткові (ЕМНІП, воно саме може визначити це і включити цю опцію, але хіба мало що). dperm: 0776 fperm: 0666 - права на створювані директорії і файли відповідно. allow: @tmachine - кому надавати доступ, якщо починається з @ - це група, якщо просто - ім'я користувача. Можна розділяти комами, наприклад: allow: user1, user2.

Зберігаємо і виходимо. Йдемо в:

І так, вона починається з двох дефісів, це не помилка. Головна відмінність від строчки default виділено жирним. Рестартуем обидва сервісу:

У файлі / etc / default / avahi-daemon міняємо рядок AVAHI_DAEMON_DETECT_LOCAL = 1 на AVAHI_DAEMON_DETECT_LOCAL = 0 і перезавантажуємо машину.

І дивимося syslog:

Якщо там все чисто і в рядках з afp лише розповіді про те як все круто і охуенно - вам пощастило. Якщо немає - йдемо в гугл і дивимося чому срана afp не відкривається.

Якщо в сіслоге все заєбісь - велика ймовірність, що ви везунчик. Кидайте нахуй ці Лінукс йдіть заробляти на скачках і в казино, вам пре удача. Якщо немає - гугл і чиним, гугл і чиним. Я впорався за годину.

Йдемо в налаштування маку -> TimeMachine, тиснемо ВКЛ. і вибираємо диск. Якщо все видно, то має бути щось типу того:

Os x lion timemachine сервер на debian
Ого, наша кулі видно

До речі, раджу увіткнути свій мак проводом в сітку, по вайфай це буде дуже довго. Далі він запитає пароль від створеного вами користувача і якщо він підійшов - ви знову везунчик. А якщо мак всіляко чинить опір, вам потрібно витратити пів години на гугленіе причини і як я дізнатися, що в сраним дебаяне зламалася ще одна Ліба через яку він не може забезпечити розшифровку пароля. Треба її оновити, для чого знову ж на сервері:

Після цього проблеми з логіном зникають і мак починає думати про створення бекапа. Ну а далі ви уявляєте як довго буде заливатися 300 гігабайт свіжого бекапу (благо інші інкрементальні) по погано обтиснутими вашими кривими руками патчкорду через старий роутер ДЕ-ЛІНК, який давно пора викинути нахуй. Удачі, це буде дооолго ніч.

Os x lion timemachine сервер на debian
Ну ось, працює, навіть на ext3

Картинку з «принадами TimeMachine» додам пізніше, коли мій бекап нарешті закінчиться. Але там буде щось типу того:

Os x lion timemachine сервер на debian
Мопед не мій я просто розмістив скріншот