
É possível no Linux conceder ao usuário acesso de leitura/gravação a todos os arquivos e diretórios como root?
EDITAREu tenho um caso especial. Preciso criar uma estrutura de pastas na qual possa conceder acesso total a um usuário especial, independentemente das permissões subjacentes. É semelhante a um usuário root em uma pasta e suas subpastas.
Não tenho certeza se isso é possível e como conseguir isso. Eu estava lendo sobre ACLs, mas não consegui encontrar uma solução.
Responder1
É verdade que não sou um especialista total em Linux, mas este é um pedido estranho.
Por que você gostaria de fazer isso? É para isso que servem as permissões Root... e também isso é muito perigoso, já que esse usuário pode causar danos muito sérios?
Dito isto, você poderia escrever um script de shell que usa o comando "chmod" para modificar conjuntos específicos de pastas. Desta forma você poderia reutilizar o script ...
Responder2
Criar novo usuário:
adduser -u 0 -o -g 0 -G 0,1,2,3,4,6,10 -M nameofuser
Explicação:
- adduser: comando para adicionar usuário no servidor Linux
- -u 0-o: um novo valor de usuário definido como 0
- -g 0: define o número do grupo de usuários como 0
- -G 0,1,2,3,4,6,10: define o acesso do usuário ao grupo 0 = root, 1 = bin, daemon = 2, 3 = sys, adm = 4, 6 = disk, 10 = wheel
- -M: não cria diretório inicial para novo usuário
- nameofuser: um novo nome de usuário
Verifique se o direito de acesso e novas informações do novo usuário como usuário root:
[root@centos ~]# id root
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
[root@centos ~]# id nameofuser
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
Responder3
Preciso criar uma estrutura de pastas na qual possa conceder acesso total a um usuário especialindependente das permissões subjacentes. É semelhante a um usuário root em uma pasta e suas subpastas.
Pela parte "independente das permissões subjacentes", parece que apenasfingindoter acesso root é suficiente. Nesse caso você pode usar o fakeroot:
$ mkdir direc
$ cd direc
$ fakeroot
# touch some-file
# touch common-file
# chown user:user common-file
# ls -l
-rw-r--r-- 1 user user 0 Jun 11 22:56 common-file
-rw-r--r-- 1 root root 0 Jun 11 22:55 some-file
Parece que você definiu o proprietário e os arquivos, por padrão, pertencem ao root. No entanto, se você sair do fakeroot, verá que eles realmente não têm propriedade de root.
# exit
$ ls -l
-rw-r--r-- 1 user user 0 Jun 11 22:56 common-file
-rw-r--r-- 1 user user 0 Jun 11 22:55 some-file