B
B
baltun2015-09-20 01:37:33
linux
baltun, 2015-09-20 01:37:33

Linux - how to give access to a folder to users from the folder's group?

I create a folder that is owned by root and has a group of rvm and permissions of 775, i.e. full for the group
and I want users who are in the rvm group to have access to this folder
, but for some reason they do not have - they cannot write there.
What am I doing wrong? How to enable other users, not the owner, but belonging to this group, to write to the folder?
Created a bash script to test which is below,
here's a simple one:

#создаем
su -c "mkdir /testfolder123"

su -c "addgroup testgroup123"

su -c "chmod 775 /testfolder123"
su -c "chown root:testgroup123 /testfolder"

su -c "usermod -aG testgroup $USER"

#проверяем права

mkdir /testfolder123/testfolder

#----------------------------подчищаем за собой -------------------
    
su -c "rmdir /testfolder123"
su -c "delgroup testgroup"

and here's a more generic one:
#!/bin/bash

if [ $USER == 'root' ]
then
    echo "этот скрипт бессмысленно выполнять от пользователя root, он предназначен для выявления прав пользователя с ограниченными правами"
    exit
fi

    echo Ваш пользователь: $USER

release=$(lsb_release -a)

echo $release

if 
then
    echo "Вы выполняете скрипт под Ubuntu"


echo "создаем папку в корне диска"
echo "как назовём папку?:"
read NEWDIR
sudo mkdir /$NEWDIR

echo "создаем новую группу"
echo "как назовём группу?:"
read NEWGROUP
sudo addgroup $NEWGROUP

echo "устанавливаем права на нашу папку 775 и владельца root:$NEWGROUP"
sudo chmod 775 /$NEWDIR
sudo chown root:$NEWGROUP /$NEWDIR

echo "добавляем текущего пользователя в созданную группу"
sudo usermod -aG $NEWGROUP $USER
echo "пользователь добавлен в новую группу, проверяем:"
id $USER

echo "создана папка, она добавлена в группу и высталвены полные права на группу, текущий пользователь добавлен в эту же группу, проверяем добавление подпапки в папку"
mkdir /$NEWDIR/testfolder

#----------------------------подчищаем за собой -------------------

echo "нажмите любую кнопку для продолжения. после нажатия будут удалены созданные нами изменения - удалена группа, удалена папка"
stty -echo
read -n 1
stty echo

sudo rmdir /$NEWDIR
sudo delgroup $NEWGROUP

else
    echo "Вы выполняете скрипт не под Ubuntu, а под другим дистрибутивом, sudo может не работать, поэтому выполняем скрипт по-другому"

echo "создаем папку в корне диска"
echo "как назовём папку?:"
read NEWDIR

su -c "mkdir /$NEWDIR"

echo "создаем новую группу"
echo "как назовём группу?:"
read NEWGROUP
su -c "addgroup $NEWGROUP"

echo "устанавливаем права на нашу папку 775 и владельца root:$NEWGROUP"
su -c "chmod 775 /$NEWDIR"
su -c "chown root:$NEWGROUP /$NEWDIR"

echo "добавляем текущего пользователя в созданную группу"
su -c "usermod -aG $NEWGROUP $USER"
echo "пользователь добавлен в новую группу, проверяем:"
id $USER

echo "создана папка, она добавлена в группу и высталвены полные права на группу, текущий пользователь добавлен в эту же группу, проверяем добавление подпапки в папку"
mkdir /$NEWDIR/testfolder

#----------------------------подчищаем за собой -------------------
    
echo "нажмите любую кнопку для продолжения. после нажатия будут удалены созданные нами изменения - удалена группа, удалена папка"
stty -echo
read -n 1
stty echo

su -c "rmdir /$NEWDIR"
su -c "delgroup $NEWGROUP"


fi

Answer the question

In order to leave comments, you need to log in

1 answer(s)
N
nonlux, 2015-09-20
@nonlux

Sergey +1
After
the user does not add a new group automatically, you need to re-login to them.
Check groups

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question