Ошибка при падении документа Excel только для чтения на сервере общего документа. Я ищу сценарий для применения разрешения "групповой" папки для всех включенных файлов.Каждый день в определенное время 8 вечера. Чтобы решить проблему. Я делаю это вручную прямо сейчас!(применить к вложенным пунктам) У меня есть исследования Google и не очень хорошо со сценариями. Нет действительного решения. Я нашел несколько ответов, начиная с 2008 по 2012 год. Помощь будет очень ценится. Спасибо

OSX Yosemite 10.10 сервер AFP и совместное использование SMB

1 ответ1

0

Вот скрипт, который я использую для восстановления одного конкретного ресурса на моем сервере каждый день в 2 часа ночи.

Скрипт восстановления (сохранен в /Users /Shared /Scripts)

#!/bin/bash

# Document Control
# ---------------
# Filename: repair_FileShare.sh
# Description: Repairs ownership and permissions on all files in the file share
# Version: 1.0

# Local Variables
# ---------------
SharePath=/path/to/shared/folder/

# Repair Routine
# ---------------

# Unlock all files
chflags -R nouchg $SharePath

# Remove all ACL permissions
chmod -RN $SharePath

# Set Ownership - OwnerName:GroupName (Example MrSmith:FinanceTeam)
chown -R root:admin $SharePath

# Set Posix Permissions - Check out http://permissions-calculator.org for more on what 770 means 
chmod -R 770 $SharePath

# Add ACL for Active Directory Group
chmod -R +a "DOMAINNAME\\AD_Group_Name allow list,add_file,search,delete,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown,file_inherit,directory_inherit" $SharePath

Демон запуска раньше запускал скрипт каждый день в 2 часа ночи.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.yourdomain.repair_FileShare</string>
    <key>ProgramArguments</key>
    <array>
        <string>sh</string>
        <string>/Users/Shared/Scripts/repair_FileShare.sh</string>
    </array>
    <key>StartCalendarInterval</key>
    <dict>
        <key>Hour</key>
        <integer>02</integer>
        <key>Minute</key>
        <integer>00</integer>
    </dict>
</dict>
</plist>

Сохраните его как /Library/LaunchDaemons/com.yourdomain.repair_FileShare.plist Затем используйте следующие команды для его загрузки:

sudo chown root:wheel /Library/LaunchDaemons/com.yourdomain.repair_FileShare.plist;
sudo chmod 600 /Library/LaunchDaemons/com.yourdomain.repair_FileShare.plist;
sudo launchctl load -w /Library/LaunchDaemons/com.yourdomain.repair_FileShare.plist;

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .