시작시 기본 smb 설정을 변경하여 시간 초과를 제거하고 싶습니다. 다음 스크립트가 있습니다.
#!/bin/sh
sysctl net.smb.fs.kern_deadtimer=0
sysctl net.smb.fs.kern_hard_deadtimer=0
sysctl net.smb.fs.kern_soft_deadtimer=0
이 스크립트를 실행 sudo
하면 관련 커널 옵션이 올바르게 설정됩니다. 그래서 나는이 명령이 올바른 명령이라는 것을 알고 있습니다.
시작시이 /Library/LaunchDaemons/
스크립트를 실행하기 위해 다음 LaunchDaemon을 만들었습니다 .
<?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.jo.sysctl</string>
<key>Disabled</key>
<false/>
<key>UserName</key>
<string>admin</string>
<key>GroupName</key>
<string>staff</string>
<key>ProgramArguments</key>
<array>
<string>/Users/admin/scripts/sysctl.sh</string>
</array>
<key>KeepAlive</key>
<false/>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
plist를 plutil
확인하고 확인을 확인합니다. 쉘 스크립트에 대한 권한을 0755
설정하고 plist 파일의 소유권을로 설정했습니다 root:wheel
.
달리는
sudo launchctl load /Library/LaunchDaemons/com.jo.sysctl.plist
... 아무것도하지 않습니다. 기본값은 여전히 잘못 설정되어 있습니다. 내가 어디로 잘못 가고 있니?
감사
man sysctl.conf
)
/Users/admin/scripts/sysctl.sh
은 전체 경로입니까?
sysctl
명령에 다음을 추가하십시오. 2>&1 >> /Users/admin/myscript.log
따라서 명령 은 다음과 같아야합니다. /usr/bin/sysctl net.smb.fs.kern_deadtimer=0 2>&1 >> /Users/admin/myscript.log
어떤 메시지 및 오류 메시지가 생성되는지 확인할 수 있습니다.
sysctl
.