스크립트를 통해 Little Snitch 제거 [닫기] 아래 스크립트를 보았습니다 :

Apple Remote Desktop에서 Little Snitch를 제거 할 수 있기를 원합니다. 아래 스크립트를 보았습니다 : http://fromtheadmin.com/kill-and-remove-little-snitch-application-via-ard-script/

그러나 Little Snitch가 실행중인 테스트 시스템에서 로컬로 스크립트를 실행하면 터미널이 “귀하의 일치하는 프로세스를 찾을 수 없습니다”를 반환합니다. 스크립트가 실행되는 계정과 동일한 계정으로 실행중인 Activity Monitor의 Little Snitch UIAgent 및 Little Snitch Network Monitor 프로세스를 볼 수 있습니다.

어떤 아이디어?

#!/bin/sh
NetworkMonitor="Little Snitch Network Monitor"
UIAgent="Little Snitch UIAgent"
File="/Library/LaunchAgents/at.obdev.LittleSnitchNetworkMonitor.plist"

#remove Little Snitch files and User Preferences

if [ -f $File ] ; then

#Kill Little Snitch Processes
killall $NetworkMonitor
killall $UIAgent

rm -R /Library/Application\ Support/Objective\ Development/
rm -R /Library/LaunchAgents/at.obdev.LittleSnitchNetworkMonitor.plist
rm -R /Library/LaunchAgents/at.obdev.LittleSnitchUIAgent.plist
rm -R /Library/LaunchDaemons/at.obdev.littlesnitchd.plist
rm -R /Library/Little\ Snitch/*
rm -R /Library/Logs/LittleSnitchDaemon.log
rm -R /System/Library/Extensions/LittleSnitch.kext
rm -R "/Applications/Little Snitch Configuration.app"

usr/sbin/jamf displayMessage -message "Computer is shutting down"

sleep 10

reboot -q

exit 0

else

exit 0

fi

감사.



답변

해당 스크립트에는 여러 가지 문제가 있습니다.

  1. 공백 문자가 포함 된 Bare 문자열 변수 : killall 인수 주위에 “”를 넣습니다.
  2. Overkill : 소프트웨어를 제거하고 재부팅하려는 경우 프로세스를 해킹 할 필요가 없습니다. LS 프로세스를 제거하면 네트워크에 장애가 발생하면 LS에서 자신의 세션 (및 스크립트)을 찍을 수있는 위험이 있습니다. 네트워크 트래픽의 게이트 키퍼 역할을하는 프로세스를 종료해야한다고 생각되면 스크립트가 정상적인 행업 처리 대상이 아닌지 확인해야합니다 (설명서 페이지 nohupbatch방법 참조 ).
  3. Underkill : 재부팅하기 전에 LS의 활성 구성 요소를 강제 종료하려는 경우 (예 : 자체 보호 기능인 경우) Little Snitch Daemon 프로세스를 해제하고 커널 확장을 언로드해야합니다. 사용자 별 라이브러리 트리에는 로그, 캐시, prefs 및 지원 파일도 있습니다.
  4. 루트로 실행되지 않음 : Little Snitch Daemon을 종료하고 kext를 언로드하고 시스템 전체 구성 요소의 대부분 (일부는 아님)을 제거하고 여러 사용자에 대한 사용자 별 지원 파일을 제거하고 모두 재부팅하려면 루트가 필요합니다.
  5. 달리기reboot -q :하지 마십시오. 현대의 MacOS에서는 이전보다 안전하지만 여전히 문제가 될 수 있습니다. 더 나은 사용하기 shutdown -r +1 "Rebooting for software change"대화식 쉘에 분 유예 기간, 게시물 메시지를 제공하고, 아래로 모든 것을 차단하기 위해 적절한 launchd에 메커니즘을 사용한다. 덜 예의 바르게 행동하려면 “지금”을 사용하거나 메시지를 사용하지 마십시오.

답변

ALERT :이 답변은 시도 된 것으로 보이지 않습니다. 그러나 다른 사람들이 문제를 진단하는 데 도움이되도록 여기에 답을 남기고 있습니다.

스크립트를 실행할 때 (공백을 처리하기 위해) 대신 필수 $NetworkMonitorLittle Snitch Network Monitor됩니다 "Little Snitch Network Monitor".

코드의 처음 세 줄을 다음과 같이 변경합니다.

#!/bin/sh 
NetworkMonitor="\"Little Snitch Network Monitor\""
UIAgent="\"Little Snitch UIAgent\""

귀하의 문제를 처리 할 수 ​​있다고 생각합니다. 그렇지 않은 경우 알려주십시오.


답변

명령 앞에 “sudo”를 입력하여 관리 사용자로 로그인하고 루트 사용자로 스크립트를 실행해야합니다.

sudo /path/to/your/script.sh