Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Не получается использовать cmd для выдачи прав пользователям на папку

Ответить
Настройки темы
CMD/BAT - Не получается использовать cmd для выдачи прав пользователям на папку

Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: RomanMirniy
Дата: 12-09-2018
Доброго дня!

Проблема такая. Используя cmd делаю что-то типа автоматического восстановления бекапа баз 1С после вируса шифровальщика(если такое произойдет), одной из частей этого батника является удаление старой папки с базой, а затем распаковка архива базы, в которой он создает точно такую же папку. И в этом месте я столкнулся с проблемой, что при распаковки папки права на нее не восстанавливаются, остаются только наследуемые от корня диска, а при добавлении пользователя Sergey и попытке дать ему полные права, даются только особые разрешения и виндой я могу читать, записывать удалять все в этой папке, но 1С видит блокировку базы. Делаю так:

Код: Выделить весь код
ICACLS D:\SkladNew2018 /inheritance:d /T /L
ICACLS D:\SkladNew2018 /remove:g Sergey /T
ICACLS D:\SkladNew2018 /grant:r Sergey:(F)  /T
ПС: Хотя поправка, через винду могу создать файл, удалить. Менять не могу

Отправлено: 11:24, 12-09-2018

 

Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Получается вот так:
http://prntscr.com/ktg0c8

А мне нужно так:
http://prntscr.com/ktg11r

Последний раз редактировалось RomanMirniy, 12-09-2018 в 11:29. Причина: Изображения не выводились


Отправлено: 11:28, 12-09-2018 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Elven

Ветеран


Сообщения: 992
Благодарности: 268

Профиль | Сайт | Отправить PM | Цитировать


так себе вариант, а если кроме пользователя Sergey доступ к папке будет нужен еще и пользователю Vasya? Имхо проще один раз выдать папке правильные права руками, сделать бэкап прав через тот же icacls и при распаковке архива применять этот бэкап на распакованное файло. А еще лучше перед каждым бэкапом файлов делать бэкап прав и держать это дело вместе, дабы не маяться каждый раз с правкой батника.
бэкап
Код: Выделить весь код
icacls D:\SkladNew2018 /save ACL.bak
восстановление
Код: Выделить весь код
icacls /restore D:\SkladNew2018 ACL.bak
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:56, 12-09-2018 | #3


Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


RomanMirniy, ну так не удаляйте саму директорию, а только её содержимое
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:59, 12-09-2018 | #4


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Elven, с созданием и восстановлением файла DACL пробовал. Если как вы пишете - ошибка "первым должна стоять директория", а при восстановлении
Код: Выделить весь код
icacls D:\SkladNew2018 /restore ACL.bak
проблемы: "Вызывающая сторона не обладает всеми необходимыми правами доступа."

Отправлено: 12:07, 12-09-2018 | #5


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Busla, вариант рабочий, спасибо, но все таки хотелось больше изучить о предоставлении пользователям прав через cmd, чем просто удалить внутрянку папки))

Отправлено: 12:25, 12-09-2018 | #6


Аватара для Elven

Ветеран


Сообщения: 992
Благодарности: 268

Профиль | Сайт | Отправить PM | Цитировать


Цитата RomanMirniy:
"Вызывающая сторона не обладает всеми необходимыми правами доступа." »
Если так, то нужно смотреть на права корневой директории, как вариант становиться владельцем папки до того как восстанавливать права (тоже через icacls, ключей на память не помню).

Отправлено: 12:41, 12-09-2018 | #7


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата:
сли так, то нужно смотреть на права корневой директории, как вариант становиться владельцем папки до того как восстанавливать права (тоже через icacls, ключей на память не помню).
Так я владелец и диска D и самой папки, и файл и все запускается под моим профилем. Я уж думал что пишу как то не так. А почему не работает
Код: Выделить весь код
ICACLS D:\SkladNew2018 /grant:r Sergey:(F)  /T
в плане того, что права создаются, но не те, что надо

Отправлено: 12:52, 12-09-2018 | #8


Аватара для Elven

Ветеран


Сообщения: 992
Благодарности: 268

Профиль | Сайт | Отправить PM | Цитировать


Цитата RomanMirniy:
в плане того, что права создаются, но не те, что надо »
создаются те что указаны:
(F) - полный доступ
/T - ко всем вложенным.
Т.к. не указаны параметры отвечающие за наследование права и выставляются индивидуально для каждого файла/папки.
а есть еще вот такие параметры
(OI) - наследование объектами
(CI) - наследование контейнерами
(IO) - только наследование
(NP) - запрет на распространение наследования
(I) - наследование разрешений от родительского контейнера

И если для указанной папки задать права таким образом:
Код: Выделить весь код
ICACLS D:\SkladNew2018 /grant:r Sergey:(OI)(CI)(F)
то вроде как должно сработать именно так как хочется. но, имхо, бэкап прав - стабильнее.
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:18, 12-09-2018 | #9


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо огромное! Вот в каких надо было капать. А я на них и внимания не обращал) Так действительно помогло!

Отправлено: 15:18, 12-09-2018 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Не получается использовать cmd для выдачи прав пользователям на папку

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
2012 R2 - [решено] Предоставление прав администратора пользователям на запуск определенных приложений titim Windows Server 2012/2012 R2 4 11-01-2017 19:48
2008 R2 - Настройка прав на папку NTFS KAB Windows Server 2008/2008 R2 1 05-11-2014 23:19
Доступ - Шрифты: дать доступ пользователям на папку windows\fonts ipvinner Microsoft Windows 7 7 15-05-2012 14:14
MSFT SQL Server - Использовать или не использовать inner join для соединения таблиц ineXPert Программирование и базы данных 1 17-02-2012 01:18
Доступ - [решено] Программы не видят папку если у пользователя нет прав на весь логический диск Marlboroman Microsoft Windows 2000/XP 5 24-07-2009 13:06




 
Переход