Як слід виправити власників та дозволів у папці користувача OS X?


9

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

Початковою причиною було те, що я перейменував користувача, дотримуючись інструкцій із підтримки Apple на веб-сайті http://support.apple.com/kb/HT1428

Після того, як новий користувач був створений, резервна копія Mozy більше не створюватиме резервну копію, і багато моїх програм не зможуть автоматично оновлюватися. Зазвичай програма знову почала працювати, якщо я видалив порушуючу програму та перевстановив її. Я подумав, що це було через те, що дозволи невірні, і я знайшов місця, де GetInfo вказав, що дозволи містять старого користувача. Іноді в діалоговому вікні просто сказано "Вибір" для імені користувача, і він ніколи не оновлювався ні до чого іншого.

Я запустив Onyx "виправити дозволи" та Disk Utility "Ремонт дозволів" без результатів. Завдяки "Дозволу на відновлення" він продовжує викидати деякі інформаційні попередження про несподівані ACL, але інформація, яку я могла знайти в Інтернеті, не вважала, що це може викликати подібні проблеми.

Я намагався рекурсивно запускати деякі сценарії командного рядка в папках користувача (як увійшли як root, так і використовуючи sudo). chmod отримав багато помилок, коли власник файлів помилився. Чаун після цього дав мені інші помилки (я не можу точно пригадати, що вони були). У паніці я клацнув правою кнопкою миші всю папку користувача і вирішив застосувати її дозволи до всіх дітей.

З того, що я можу сказати, коли я це зробив, я встановив усе, щоб читати і писати для цього користувача і лише для читання для " всіх " і " співробітників ". Зараз мені гірше, ніж раніше. Firefox вийшов з ладу, і він навіть не може оновити власні налаштування, тому він відкриває "Чи хочете відновити ці вкладки" кожного разу, коли він запускається, навіть після того, як неодноразово говорив "Почати новий сеанс".

В основному все в моїй папці користувача порушено щодо власника та дозволів, і мені потрібно знати, якими вони повинні бути. Хто є власником файлів у кожному каталозі (завантаження, програми тощо) та якими мають бути дозволи? Враховуючи ці дозволи та власників, який найкращий спосіб зробити налаштування цих прав?

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

Я не впевнений, що якщо перевстановити ОС над копією, яку я зараз маю, виправити щось, і я близький до виклику служби підтримки Apple, якщо я не можу нічого розібратися в найближчі кілька днів. Дякуємо за будь-яку допомогу.


Ви принаймні придумали, як це сталося? Що конкретно не так? ACL, метадані або традиційні дозволи UNIX. Важко охопити все однією відповіддю - особливо скидання непорушних бітів, якщо це потрібно.
bmike

А щоб полегшити усунення несправностей, я б встановив ОС на зовнішній диск, завантажувався з цього і монтував би ваш "проблемний" диск, щоб ігнорувати дозволи та бачити, чи rsync чи щось дозволить перевести файли в більш чистий стан. Тоді ви можете видалити користувача та скопіювати речі назад, поважаючи ACL та дозволи нового користувача у ~ - обережно переміщуючи вміст, ~/Library/а не ~/Libraryсебе.
bmike

Я не впевнений, крім того, що я набрав вище. Я ціную пропозиції, але я не дуже користувач енергії. Якщо це складніше, ніж кілька командних рядків або утиліт, я просто збираюся відмовитись і відновити з резервної копії Time Machine.
cisellis

Гарний план. Ви можете отримати допомогу у техніка після відновлення резервної копії - зазвичай ви можете мати короткий список речей, які застаріли або відсутні. Я радий, що у вас є резервна копія :-)
bmike

Відповіді:


10

Перший крок, який я рекомендую, - спробувати скинути дозволи домашньої папки за допомогою утиліти Reset Password у програмі Lion Recovery. (Незважаючи на назву утиліти, фактично не будете скидати паролі.)

Скидання дозволів домашньої папки за допомогою утиліти Скинути пароль призведе до скидання як власника, так і дозволів.

  1. Перезавантажте Mac, утримуючи +, Rщоб завантажитися у програму Lion Recovery, яка перейде до екрана Repair Utilities.

  2. Відкрийте термінал у меню Утиліти.

  3. У Терміналі введіть, resetpasswordщоб відкрити утиліту Скидання пароля.

  4. Виберіть значок вашого жорсткого диска вгорі, а потім виберіть свого користувача зі спадного меню внизу. Тут не скидайте пароль.

  5. У нижній частині вікна під «Скидання дозволів домашнього каталогу та ACL-файлів» натисніть кнопку «Скинути». Це може зайняти деякий час, якщо у вашій домашній папці багато файлів.

Це має вирішити ваші проблеми з дозволом для більшості програм. Однак можливо, у вас можуть бути кілька додатків, які зберігали файли зі спеціальними дозволами, які відрізняються від дозволів користувача за замовчуванням (наприклад, налаштування або файли підтримки програм). Для цих програм вам може знадобитися видалити їхні налаштування або перевстановити програму.

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


Я зараз це намагаюся. Поки що він працює близько 12 годин. У мене дуже багато файлів: P
cisellis

Це не вийшло. Операція тривала понад 48 годин, перш ніж я відмовився і вимкнув її. Це можливо закінчилося в якийсь момент, але сказати не було ніякого способу.
cisellis

3

Виконати це

cd $HOME
{ sudo chflags -R nouchg,nouappnd ~ $TMPDIR.. ; \
sudo chown -R $UID:staff ~ $_ ; \
sudo chmod -R -N ~ $_ ; \
sudo chmod -R 755 ~ $_ ; \
sudo chmod 700 Desktop Documents Downloads Dropbox Library Movies Music Pictures Sites $_ ; \
sudo chmod 777 Public ; \
sudo chmod 733 Public/Drop\ Box ; \
} 2> /dev/null

Саме те, що я шукав! Працює, якщо ви можете увійти до відповідного користувача, і він також є адміністратором. Як щодо ремонту домашнього каталогу іншого користувача з іншого облікового запису? (Користувач з питаннями дозволу може або не може бути адмін)
Unom

Перезавантажте комп’ютер, використовуючи комбінацію клавіш запуску Cmd + R, щоб відкрити утиліту відновлення, відкрити термінал у меню Утиліти, скористатися командою resetpassword, виберіть жорсткий диск та відповідний обліковий запис користувача зі спадного меню, яке відкриється, виберіть скидання на скинути дозволи домашнього каталогу та ACL вибраного облікового запису користувача.
davidcondrey

2

В основному ваші питання однакові. Немає стандарту дозволів на файли у вашому домашньому каталозі, всі вони залежать від їх використання.

Виправлення програм та сценаріїв дозволів та встановлення ОС не повинно впливати на область користувача, за винятком, можливо, змінити дозволи на домашній каталог. Встановлення ОС та більшість сценаріїв дозволів на виправлення порівнюють дозволи та власники з необхідними для чистої установки, і це не нормальні користувачі. Якби вони це зробили, я вважав би це головною помилкою.

Виправлення полягає в тому, щоб змінити власника файлів, тобто використання chown у вашому домашньому каталозі. Власник має бути прізвищем нового власника.

Немає загального способу повернення дозволів, оскільки окремі файли залежать від програми, і всі програми можуть бути різними.

Таким чином, єдиним способом є відновлення з резервної копії перед зміною - виконайте зміни згідно з примітками Apple, а потім зафіксуйте всі файли. Або перегляньте кожен окремий файл і опрацюйте, які дозволи він повинен мати - для більшості файлів домашнього каталогу це має читати / писати власник, а нічого (або лише для читання) для інших. Каталоги також потребують дозволу на виконання, щоб вони могли бути перелічені. Програми потребують інших дозволів.


Добре. Я щойно перевірив свій домашній каталог та дуже багато 777каталогів і переживав.
nyxee

@nyxee це дивно, я б очікував 755 або 700
користувач151019

дуже .... я почну редагувати дозволи один за одним дуже повільно ..
nyxee

1

Ми зіткнулися з тими ж проблемами з кількома користувачами. Невдало спробувавши все, що стосується виправлення дозволів, ми знайшли рішення. Для наочності проблемним користувачем є Джон Доу, а обліковий запис користувача (та домашній каталог) називається "johndoe".

  1. Переконайтеся, що ваш користувач root включений. Вийти
  2. Увійдіть як root і зробіть резервну копію домашньої папки johndoe (створення резервної копії домашньої папки необов’язково, але настійно рекомендується, якщо щось піде не так)
  3. Відкрийте Налаштування системи / Користувачі та групи
  4. Видаліть користувача johndoe - вам буде запропоновано, що робити з домашнім каталогом johndoe
  5. ВАЖЛИВО: Виберіть НЕ, щоб видалити каталог
  6. Перейдіть до / Користувачі та зазначте, що папку johndoe було перейменовано на "john doe (видалено)"; перейменуйте домашній каталог назад у "johndoe"
  7. Поверніться до системних налаштувань / користувачів та груп та відтворіть обліковий запис Джона Доу
  8. ВАЖЛИВО. Переконайтесь, що ім'я облікового запису користувача - це "john doe", або саме те, що ви назвали домашній каталог на кроці 6
  9. Вам буде запропоновано, що домашній каталог з цим іменем вже існує, і якщо ви хочете використовувати існуючий домашній каталог
  10. Виберіть так
  11. Перезапустіть і увійдіть як John Doe

Я просто хочу подякувати вам. Це спрацювало у Snow Lion (комп’ютер моєї дружини) після набагато більш детальних спроб не вдалося, наприклад, macisissue.com/2014/04/11/…
Стів Самуельс

0

Я додаю єдину відповідь, щоб вирішити все. Що б я не робив з дозволами, це було цілком обтяжене. Я спробував першу відповідь, завантажившись у режим відновлення та скинувши дозволи через метод скидання пароля, але це тривало протягом 48 годин, перш ніж я вбив його, і не мав помітного ефекту. Я спробував відновити з Time Machine, і це насправді підірвало і не вдалося відновити резервну копію.

Я закінчив резервне копіювання всього вручну на зовнішній диск, відформатувавши весь диск і перевстановивши Lion, перевстановивши все вручну, а також скопіював мої особисті дані, такі як бібліотека iPhoto та бібліотеки iTunes, вручну. iPhoto довелося ремонтувати бібліотеку, але працював чудово, і у мене не було проблем. iTunes не зміг додати музику до бібліотеки, поки я знову не застосував Disk Utility для відновлення дозволів. Оскільки я лише скопіював каталог iTunes Media, а не батьківський каталог, здавалося, все виправлено.

Мораль історії: Забудьте Apple, не перейменуйте користувачів.


0

Це взагалі не проблема дозволу! Ніщо, що ви робите з дозволами, не виправить це, оскільки дозволи вже встановлені для читання / запису, що настільки ж дозвільно, наскільки вони можуть бути.

Це проблема власника; система плутається з приводу того, хто є власником файлу, і не може вирішити складність. Додайте себе як нового власника, дайте собі права на читання / запис, а потім видаліть непристойного користувача, який ображає.


0

Функція скидання утиліти Disk Utility не впливає на ваш домашній каталог, тому тут він не працюватиме. Але він також має другий прихований інструмент для скидання дозволів для вашого домашнього каталогу. Ви використовуєте його з терміналу, наприклад:

diskutil resetUserPermissions / $(id -u)

(Джерело: https://support.apple.com/en-us/HT203538 )

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