Respostas:
No OS X, seu grupo principal é sempre, a staff
menos que você ou seu gerente de diretório do usuário o altere.
O que é um grupo principal ? O grupo principal de um usuário é, por padrão, o proprietário de todos os arquivos criados por esse usuário.
Para os fins do chmod
seu computador, você pode usar seu ID numérico do usuário (por exemplo, 501) ou o nome da sua conta (por exemplo danielbeck
). Este último é diferente do nome de usuário que você costuma ver na interface do usuário (por exemplo, Daniel Beck ).
Você pode determinar o nome da sua conta usando qualquer um dos seguintes:
É o nome do seu diretório pessoal (a menos que você o tenha personalizado) no título ou na barra lateral do Finder
Execute whoami
no Terminal - portanto, um chown -R $(whoami):staff
deve ser suficiente. Você também pode obter seu grupo principal groups $(whoami) | cut -d' ' -f1
.
Abra Preferências do Sistema »Usuários e Grupos , desbloqueie o painel, se necessário, clique com o botão direito do mouse em seu nome de usuário (a entrada da lista única na seção Usuário Atual ) e selecione Opções Avançadas… . É o campo Nome da conta na janela de diálogo recém-aberta. Essa caixa de diálogo também mostra seu grupo principal.
Execute id
no Terminal para obter uma saída mais detalhada. Isso incluirá seu ID de usuário numérico. Ele também listará todos os grupos dos quais você é membro, não apenas o seu grupo principal. O primeiro grupo é o principal.
staff
. Não no meu trabalho Mac OS X de qualquer maneira.
Use o id
comando do terminal. Ele exibirá seu uid e os grupos aos quais você pertence. Por exemplo, aqui está minha saída mostrando minha identificação de usuário (534), identificação de grupo (20) e os grupos aos quais pertenço (também 20).
uid=534(galuga) gid=20(staff) groups=20(staff)
Isso mostrará seu ID do usuário.
$ id -u
502
Isso mostrará os nomes dos seus grupos. Os nomes dos grupos estão entre parênteses.
$ 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)
no Terminal, vá ~/Documents
e corra ls -la
. Seu nome de usuário e grupo serão listados ao lado de cada um dos arquivos / diretórios.
Deve ficar assim:
drwxr-xr-x 2 username usergroup 4096 Oct 17 2012 Templates
Só comentaria se eu pudesse. Não tenho karma suficiente neste site.
Não tenho idéia do motivo de alguém ter votado contra @callaginn, pois ele traz um ponto válido.
Os métodos a seguir são válidos (e provavelmente as melhores opções para scripts de shell):
id -u # returns UID
id -un # returns username
id -g # returns primary (a.k.a. effictive) GID
id -gn # returns primary Group Name
Veja man id
para mais opções.
Para responder a essa pergunta específica, se eu estivesse escrevendo um script que funcionasse em qualquer ambiente, não assumiria que o grupo padrão staff
está em uso. Em vez disso, faria o seguinte se estivesse escrevendo um script que poderia ser executado por qualquer usuário. (independentemente de terem modificado ou não o seu sistema):
chown "$(id -un):$(id -gn)" some_file
É sempre melhor ser independente da plataforma sempre que possível (se não for muito demorado), pois você terá menos dívidas técnicas mais tarde.
Observe que chown
a -R
bandeira deve ser usada com a máxima confiança. Você pode realmente atrapalhar seu sistema (embora valha a pena notar que a Apple dificultou a execução desde a implementação System Integrity Protection
).
Considere, por exemplo, se você fosse chown -R 755 /var
em vez de chown -R 755 /var/www
como root com System Integrity Protection
pessoas com deficiência Eu acredito que você estaria em para ele. Eu não posso te dizer o que quebraria primeiro, mas ele quebraria primeiro em um sistema Darwin, mas aceite minha palavra de que não seria bonito.
Felizmente, alguém acha isso útil.
whoami
, você pode usarid
em um oneliner compatível com posix shells e csh.chown -R `id -u`:`id -g` FOLDER