Я создал этот простой скрипт, чтобы позволить пользователю удалять файлы, созданные веб-сервером, в его домашнем каталоге, не давая ему «su». Для обоих сценариев задано "chmod 4750".
Самое безумное, что они ДЕЙСТВИТЕЛЬНО работали, а теперь нет. Вот скрипты:
#!/bin/bash
# Ask for directory to delete
echo "Enter the file or directory you would like to delete, the assumed path is /home/user"
read DIRECTORY
rm -rf /home/user/"$DIRECTORY"
echo "Deleting /home/user/$DIRECTORY ..."
exit 0
2:
#!/bin/bash
# Reset permissions
echo "Resetting the ownership of the contents of /home/user to user."
chown -R user /home/user
exit 0
Я сделаю их немного более продвинутыми и работающими для нескольких пользователей, но сейчас я не могу заставить работать даже простую версию. Конечно, это работает при запуске от имени root. Раньше он работал при запуске от имени пользователя «пользователь», но теперь это не так. Я получаю это:
user@dev:/home/user$ delete.sh
Enter the file or directory you would like to delete, the assumed path is /home/user/[your input]
test-dir
rm: cannot remove ‘/home/user/test-dir/test-file’: Permission denied
Deleting /home/user/test-dir ...
а также
chown: changing ownership of ‘/home/user/test-dir’: Operation not permitted
В чем может быть проблема?
-rwsr-x--- 1 root user 291 Nov 6 05:23 delete.sh
-rwsr-x--- 1 root user 177 Nov 6 05:45 perms.sh
echo whoami
выходной корень? . - person Noproblem   schedule 06.11.2015../../etc/passwd
вDIRECTORY
для сброса всех паролей (включая root)? - person 12431234123412341234123   schedule 11.03.2019