Відповіді:
У ОС X ваша основна група завжди є, staff
якщо ви або ваш менеджер директорій користувачів не змінили її.
Що таке первинна група ? Основна група користувача за замовчуванням є власником усіх файлів, створених цим користувачем.
Для цілей chmod
на своєму комп’ютері ви можете використовувати або свій цифровий ідентифікатор користувача (наприклад, 501), або ім’я свого акаунта (наприклад danielbeck
). Останнє відрізняється від імені користувача, яке ви зазвичай бачите в інтерфейсі (наприклад, Даніель Бек ).
Ви можете визначити ім'я свого акаунта, скориставшись одним із наведеного нижче:
Це назва вашого домашнього каталогу (якщо ви його не налаштовували) у заголовку або бічній панелі Finder
Бігати whoami
в терміналі - так, що chown -R $(whoami):staff
повинно вистачити. Ви також можете отримати свою основну групу groups $(whoami) | cut -d' ' -f1
.
Відкрийте Налаштування системи »Користувачі та групи , при необхідності розблокуйте панель, клацніть правою кнопкою миші своє ім’я користувача (запис одного списку в розділі Поточний користувач ) та виберіть Додаткові параметри… . Це поле Ім'я облікового запису у щойно відкритому діалоговому вікні. Це діалогове вікно також показує вашу основну групу.
Запустіть id
у Terminal для більш детального виводу. Сюди буде включено ваш числовий ідентифікатор користувача. У ньому також будуть перераховані всі групи, до яких ви входите, а не лише ваша основна група. Перша група - первинна.
staff
. Ні в якому разі не на моїй роботі Mac OS X.
Використовуйте id
команду з терміналу. Він відобразить ваш uid та групи, до яких ви належите. Наприклад, ось мій висновок із зазначенням мого ідентифікатора користувача (534), ідентифікатора групи (20) та груп, до яких я належу (також 20).
uid=534(galuga) gid=20(staff) groups=20(staff)
Це покаже ваш userid.
$ id -u
502
Це покаже назви вашої групи. Назви груп знаходяться всередині дужок.
$ id
uid=502(whoami) gid=20(staff) groups=20(staff),702(com.apple.sharepoint.group.2),12(everyone),61(localaccounts),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),33(_appstore),100(_lpoperator),204(_developer),395(com.apple.access_ftp),398(com.apple.access_screensharing),399(com.apple.access_ssh)
Я б прокоментував лише те, що зможу. У мене немає достатньої кількості карми на цьому сайті.
Я поняття не маю, чому хтось порушив @callaginn, коли він підкреслює дійсну точку.
Наступні методи є дійсними (і, мабуть, найкращі варіанти сценаріїв оболонки):
id -u # returns UID
id -un # returns username
id -g # returns primary (a.k.a. effictive) GID
id -gn # returns primary Group Name
Див. man id
Додаткові варіанти.
Щоб відповісти на це конкретне запитання, якби я писав сценарій, який би працював у будь-якому середовищі, я не вважав би, що використовується група за замовчуванням, staff
і замість цього я зробив би наступне, якби писав сценарій, який можна було б запустити для будь-якого користувача (чи змінили вони свою систему чи ні):
chown "$(id -un):$(id -gn)" some_file
Завжди краще бути платформою агностиком, коли це можливо (якщо це не занадто багато часу в розкоші), оскільки ви будете мати менше технічної заборгованості пізніше.
Будь ласка , зверніть увагу , що chown
«S -R
прапор повинен бути використаний з максимальною впевненістю. Ви дійсно можете зіпсувати свою систему (Хоча варто зазначити, що Apple зробила це важко з моменту їх впровадження System Integrity Protection
).
Розглянемо, наприклад, якби ти chown -R 755 /var
замість цього chown -R 755 /var/www
корінця з System Integrity Protection
інвалідом вважав, я вважаю, що ти би за це працював. Я не можу сказати тобі, що би зламалося спочатку, але воно зламається спочатку в системі Дарвіна, але будь ласка, прийміть моє слово, що це було б не дуже.
Сподіваємось, хтось вважає це корисним.
whoami
ви можете використовуватиid
в онлайні сумісний з оболонкою posix та csh.chown -R `id -u`:`id -g` FOLDER