Я создаю папку, у которой владелец root, а группа у неё rvm и права 775, т.е. полные для группы
и хочу, чтобы пользователи, которые находятся в группе rvm имели доступ к этой папке
но почему-то они не имеют - не могут писать туда.
Что я делаю не так? Как дать возможность другим пользователям, не владельцу, а принадлежащим к этой группе, писать в папку?
Создал скрипт на bash для проверки, который приведен ниже:
вот простой вариант:
#создаем
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"
а вот более универсальный:
#!/bin/bash
if [ $USER == 'root' ]
then
echo "этот скрипт бессмысленно выполнять от пользователя root, он предназначен для выявления прав пользователя с ограниченными правами"
exit
fi
echo Ваш пользователь: $USER
release=$(lsb_release -a)
echo $release
if [[ "$release" == *Ubuntu* ]]
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