Що змушує High Sierra забути, де мій домашній каталог?


22

Початкова проблема

У мене виникли спорадичні проблеми, коли мій Mac, здається, «забув», де мій домашній каталог.

Перша підказка (адже це дуже часто я роблю) - це те, що Google Chrome не може відкрити нову вкладку. Я отримую екран "помилка" про помилку. Це змушує мене вийти з Chrome і перезапустити його, що, в свою чергу, призводить до цього діалогового діалогового вікна, після якого Chrome не запускається:

Знімок екрана діалогового вікна: "Google Chrome не може читати та записувати у свій каталог даних: / var / empty / Бібліотека / Підтримка програм / Google / Chrome"

Інші симптоми

Багато інших речей, які потребують знання домашнього каталогу, також не вдається:

  • Коли я відкриваю деякі додатки Apple (наприклад, попередній перегляд, нотатки, повідомлення), мені з'явиться запит на діалогове вікно, в якому сказано, що воно потребує відновлення домашнього каталогу та вимагає від мене автентифікації. Введення мого пароля тут спричиняє /var/empty/Libraryзміну власника до мене (що погано в довгостроковій перспективі, але дозволяє деяким речам почати працювати).
    • Знімок екрана: "macOS потребує ремонту вашої бібліотеки для запуску програм."
  • Сафарі просто не відкривається при натисканні - він ненадовго з’являється на доці, а потім зникає, не маючи діалогового вікна "Звіт про аварійне завершення" (хоча я не можу сказати, чи знає система в такому стані про те, що я бажаю бачити ці діалоги).
  • Навіть після "ремонту моєї бібліотеки" багато програм не можна відкрити:
    • Попередній перегляд: з'являється діалогове вікно Finder: Програму "Попередній перегляд" неможливо відкрити.
    • Chrome: той самий діалог помилок, що і раніше, на фото вище
    • Примітки: з'являється піктограма дока, а потім зникає.
  • Після ремонту моєї бібліотеки деякі додатки, які раніше не можна було відкрити, і багато з них забули мої налаштування:
    • Сафарі (яким я зараз користуюся, щоб написати це питання, поки я досліджую)
    • BBEdit
    • Піксельматор
    • Примітки
  • Здається, деякі програми не впливають незалежно від дозволів бібліотеки:
    • Консоль
    • Налаштування системи
    • Доступ до брелоків
  • Я не можу робити знімки екрана, якщо не використаю Grab або утримую Control, щоб записати скріншот у буфер обміну (тому що він не має доступу до запису /var/empty/Desktop, яким належить корень).
  • У діалогових вікнах "Відкрити і зберегти" в ній не відображається мій домашній каталог на бічній панелі, ані будь-яке загальне призначення в межах (Настільний ПК, Документи тощо).
  • Коли вмикається заставка, замість мого звичайного з'являється системний замовник (Шквал) (Класичний вказав на каталог фотографій, який я вибрав).
  • Термінал використовує параметри за замовчуванням для кольору / шрифту / тощо замість моїх індивідуальних налаштувань.

Однак, схоже, інші речі працюють добре:

  • Машина часу
  • Прожектор
  • Гарячі куточки

Це траплялося тричі з моменту оновлення моєї робочої машини на Високій Сьєррі через пару днів після її звільнення.

Дослідження

Як видається, дослідження вказують на те, що macOS не вважає, що це мій домашній каталог/var/empty , а це те, що він не знає, що я маю домашній каталог , і десь є логіка резервного запасу, яка змушує систему використовувати / var / empty для будь-якого користувача, який не має домашнього каталогу. (Джерело: Чи можна створити користувача без домашнього каталогу? )

Подальше дослідження показує, що / var / empty існує як "в'язниця безпеки" для користувачів, які не повинні мати доступ до чого-небудь (саме тому погано змінювати дозволи або символізувати його в іншому місці). (Джерело: /server/116632/what-is-var-empty-and-why-is-this-directory-used-by-sshd )

На основі минулих подій перезавантаження виправляє проблему (до наступного разу, коли це станеться). Після того як я поставив це запитання, я спробую відключити / підключити свій мережевий кабель і вийти з системи, щоб побачити, чи допомагає хтось із них; Я повернусь і відредагую цей параграф відповідно. Оновлення: я відключив і знову підключив мережевий кабель, а потім перезапустив Finder. Chrome працює знову, і всі інші симптоми, як видається, також усунені! Це, безумовно, зменшує біль, коли виникає ця проблема, але я все-таки дуже хотів би зрозуміти та запобігти першопричині.

Нічого, що я бачу з Терміналу, схоже, не виявляє проблеми:

Last login: Mon Nov 13 13:21:18 on ttys000
jrobb@oke-jrobb-mb: ~ % pwd
/Users/jrobb
jrobb@oke-jrobb-mb: ~ % cd /var/empty
jrobb@oke-jrobb-mb: /var/empty % ls -la
total 24
drwxr-xr-x   8 jrobb  staff   256B Oct 20 16:32 ./
drwxr-xr-x  27 root   wheel   864B Oct 20 14:49 ../
-rw-r--r--@  1 root   staff    10K Oct 20 16:32 .DS_Store
drwx------   2 root   staff    64B Oct 14 05:52 .ssh/
drwx------   4 root   staff   128B Oct  9 13:22 Desktop/
drwx------   3 root   staff    96B Sep 25 15:46 Documents/
drwx------   3 root   staff    96B Sep 25 15:46 Downloads/
drwx------+ 28 root   staff   896B Nov 13 13:37 Library/
jrobb@oke-jrobb-mb: /var/empty % whoami
jrobb
jrobb@oke-jrobb-mb: /var/empty % echo $HOME
/Users/jrobb
jrobb@oke-jrobb-mb: /var/empty % 

Інтегрований журнал High Sierra робить Console.app кошмаром для перегляду, але я все-таки витратив велику кількість часу на пошук відповідних повідомлень. Я знайшов декілька, які, здається, є помилками, викликаними проблемою, але жодна, яка, здається, не є проблемою. Я підозрюю, що це викликано тим, що ви не можете прокручувати нескінченний потік усіх повідомлень з усіх підсистем назад раніше, ніж кожен раз, коли ви відкривали консоль, і немає очевидного способу пошуку за одним файлом одночасно, якщо тільки ви хочете здійснити пошук у вищезгаданому потоці, призначеному лише вперед. У мене не працювала консоль, коли справи йшли на південь, тож я гадаю, що мені не пощастило? (Я дуже вдячний за будь-яку допомогу / пораду тут.)

Я бачив ряд інших випадків, коли люди мають таку ж проблему, починаючи з 2014 року (10,9 Mavericks). Ось декілька посилань на інших людей, які відчувають ті самі або пов'язані з цим проблеми, для яких не існує жодного задовільного рішення:

  • https://www.jamf.com/jamf-nation/discussions/22851/active-directory-user-home-directory-set-to-var-empty
    • Принаймні один користувач Jamf знайшов там рішення (прапорець "вимагати підтвердження перед створенням мобільного облікового запису" у службовій програмі "Утиліта каталогів") встановлено, і користувач натиснув "Ні", коли з'явиться діалогове вікно підтвердження. Ці прапорці встановлені у моїй системі, але я ніколи не бачив (ні відхиляв) такого діалогового діалогового вікна підтвердження, тому не думаю, що це так. Тим не менш, це не є спільною машиною, тому ці скриньки тепер не знімаються.
  • https://arstechnica.com/civis/viewtopic.php?f=19&t=1239175
    • Ніколи не було відповідей на цю тему, тому я ризикнув і запитав цього користувача, чи знайшли вони колись проблему. Відповіді ще немає.
  • /superuser/721623/could-not-create-directory-var-empty-ssh

Здається, що для тих, у кого є "рішення", вони справді є стрічковими посібниками, які відкривають значні отвори в безпеці:

  • символьне посилання /var/emptyна правильний домашній каталог
  • chown _user_ /var/empty
  • і так далі

Контекст

Я використовую пізній 2013 iMac (Core i7 3,9 ГГц, 32 ГБ оперативної пам’яті, 1 ТБ SSD), що працює на високій Sierra (завжди остання версія виправленої версії; це починалося з 10.13.0 і зараз впливає на 10.13.1). Це пристрій, керований Jamf, і я підтверджую автентифікацію на домен Active Directory. Мій профіль у prefpane Користувачі та Групи позначений "Адміністратор, Керований, Мобільний".

Ми почали використовувати Jamf там, де я працюю одразу після того, як я перейшов до Високої Сьєрри, тож це може бути проблемою Jamf або проблемою High Sierra (або, справді, будь-що інше).

Є безліч інших користувачів Mac, численні інші користувачі High Sierra та численні інші користувачі Jamf; Наскільки мені відомо, жоден інший користувач не відчуває цієї проблеми. Я єдиний користувач iMac - усі інші Macs тут - ноутбуки. (Я намагаюся уявити, що проблема в моєму iMac - просто ретельна.)

Ця проблема починає відбуватися посеред сеансу користувача. Все добре, поки раптом це не так. Я вважаю, що це не має нічого спільного з логіном або Active Directory.

Що я шукаю

Я шукаю відповідь, яка заважає macOS в першу чергу потрапити в цей стан, і, сподіваюся, пояснює, коли і як це відбувається.


1
Дякуємо за деталі, що стосуються вашого оточення, це полегшує розуміння складності тут.
— nohillside

Сказавши це: Ви переконалися, що "все" добре виглядає в стороні Jamf (тобто порівняли ваш профіль з профілем іншого користувача)? Що станеться, якщо інший користувач (з профілем jamf) деякий час використовує ваш iMac?
— nohillside

@patrix Я вивчу далі та відредагую, оскільки більше деталей стане доступним на стороні Джамфа. У мене немає доступу до наших речей адміністратора Jamf, і я повинен працювати над нашим sysadmin, який є новинкою для Jamf і менш експертом для Mac, ніж я.
— JakeRobb

Я щойно бачився з нашим сисадміном протягом декількох хвилин, і ми переглянули мій профіль Jamf. Нічого не вискакує, але він збирається зробити додаткові дослідження.
— JakeRobb

3
Цікаво, що відключення / підключення мого кабелю Ethernet плюс перезапуск Finder усунули всі симптоми та відновили нормальну поведінку. Дивно! Я оновив питання, щоб це відобразити.
— JakeRobb

Відповіді:


5

Відкрийте помилку з Apple на цьому. У мене є відкрита справа, але вони повинні почути з цього приводу більше людей. Я бачу це рідко, але лише на моєму комп’ютері, підключеному до Active Directory, з моїм керованим мобільним обліковим записом (тому я здогадуюсь, що це просто ще одна з багатьох помилок AD в 10.13, які залишаються нефіксованими.)

Я вважаю, що якщо я генерую sysdiagnose (щоб оновити свій випадок), проблема зникає і під час генерації sysdiagnose.

Але я нічого не можу змусити це статися, тому я не знаю, що це спричиняє.


1
Спасибі! Я ніколи не подавав помилку в Apple; не впевнений, як це зробити. Чи потрібно мені зареєструватися як розробник? (Я дев, який використовує Mac, але я роблю webapps.)
— JakeRobb

1
Перш ніж запитати, я повинен переглядати речі Google. :) developer.apple.com/bug-reporting Зважаючи на те, що у мене немає кроків для відтворення, я не сподіваюся. Але я щось подаю.
— JakeRobb

2
Так, будь ласка, подайте щось, навіть якщо ви не можете його відтворити. Мені неодноразово говорили, що саме кількість помилок про проблему привертає увагу. Я можу відкрити помилку і сказати: "У 8000 Macs тут є ця проблема", але це не привертає такої ж уваги, як 8000 повідомлень про помилки з тієї ж проблеми.
— maser

3

Довгострокова відповідь полягає в тому, щоб не прив’язувати жоден Mac до AD та отримувати інструмент для вільної сполучення прав користувача та використання kerberos для автентифікації.

  • Apple Enterprise Connect - ви платите за професійні послуги з виявлення / налаштування та документування рішення для вашого оточення. https://www.apple.com/support/professional/
  • NoMAD та / або NoMAD Pro - https://nomad.menu - інструменти з відкритим кодом з платною підтримкою та консультаційними можливостями також від постачальника.

Пов'язування болісне, і біль збільшується, чим довше ви дозволяєте їй нагноєти і звузити. Ваше запитання є надійним, і я сподіваюся, що хтось швидко вирішить для вас, але я бачив, як кілька організацій відходять (або тікають) далеко від зобов’язань, як тільки вони пілотують NoMAD і приймуть участь в AEC або NoMAD в масштабі. Встановлення JAMF Pro дійсно допоможе вам розгорнути будь-який інструмент.


Чи є у вас конкретні причини вважати, що проблема пов’язана зі зв'язуванням AD? Я чув багато страшилок, але не хочу просто сприймати це як причину без доказів.
— JakeRobb

Лише мій досвід управління багатьма Mac @JakeRobb - Можливо, ви просто зіпсувались і вам потрібно буде витерти ОС - знову зробіть облікові записи користувачів, а потім відновіть свої дані. Важко пізнати без рук на машині.
— bmike

3

Я знайшов наступне, щоб "виправити" проблему.

  1. Відкрийте Налаштування системи> Користувачі та групи
  2. Розблокуйте панель
  3. Клацніть правою кнопкою миші обліковий запис користувача> Додаткові параметри ...
  4. Поруч із домашнім каталогом: натисніть кнопку Вибрати ...
  5. Клацніть Відкрити
  6. Натисніть кнопку ОК

Це, здається, переписало шлях до домашнього каталогу та дозволило функціоналу повернутися.

У моєму випадку вихід із системи та повернення в результаті призвели до появи чорного екрану з курсором - хоча після м'якого перезавантаження, який вдалося увійти в систему, довга смуга прогресу, тоді все повернулося до норми.

Сподіваюся, це допомагає! Удачі!


1
Це корисно, але не дає відповіді на фактичне запитання, яке я поставив. Дякую, хоча! :)
— JakeRobb

2

Ви, мапи, прив'язуєте UID до різних атрибутів? У минулому, коли я бачив це в OS X / MacOS, це тому, що ми внутрішньо відобразили UID на універсальний ідентифікатор (він був однаковий у UNIX та AD), і він замислювався, намагаючись зробити цей переклад. Користувачі втратили дозволи на домашні каталоги та показали симптоми, які ви бачите в Finder тощо.

В утиліті Directory ви можете побачити "Map UID to attribute:" на вкладці Mappings у розділі Active Directory.


Жодна з трьох прапорців не відображається в моїй системі.
— JakeRobb

1

Це трапляється на моєму робочому комп’ютері (додається AD), коли Chrome потребує оновлення, і я закриваю та перезавантажую програму. Я здогадуюсь, що це якась проблема із оновленням (який, в основному, беззвучний), намагаючись переписати в каталог користувачів, коли Uids та подібні не управляються локально.

Що для мене працювало - це просто скинути всі інтернет-з'єднання; наприклад, відключіть мережеву мережу та вимкніть WiFi


Цікава теорія! FWIW, це не повторилося зі мною, оскільки я опублікував це питання майже рік тому, і я, безумовно, оновлював Chrome не раз у той період.
— JakeRobb

0

FWIW, це не проблема Chrome. Коли ця проблема виникає, вона впливає і на інші програми. Не пропонувати це як виправлення, але якщо ви будете дотримуватися URL-адреси Jamf Nation, ви побачите мою публікацію внизу теми. Ми управляємо досить великим середовищем Macs. У нас є політика відмовляти Mac від Active Directory, а інша - прив’язувати Mac до Active Directory. З якоїсь дивної причини розв’язування та повторне перев’язування, здається, "усувають" проблему. Я ставлю "виправити" в лапках, тому що це, мабуть, не що інше, як град, який, мабуть, не має нічого спільного з кореневою проблемою. ¯ \ _ (ツ) _ / ¯


Зауважте, що моє запитання не відображає це як проблему Chrome. Chrome щойно став першим додатком, який став жертвою проблеми, коли траплялось зі мною. Але дякую за додатковий контекст!
— JakeRobb

Зрозумів, мої вибачення мій пост мав на увазі це. Відкриття квитка з підтримкою Apple Enterprise сьогодні.
— donmontalvo
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.