Jamf Pro에서 Rosetta2 설치
초기 설정 시
MacOS 장치의 초기 설정JAMF-Enrollment-Kickstart에서 사용되며, 처음 설치된 데몬이
.pkg
에서 산발되어 M1을 설치한 Mac에서 정상적으로 작동하지 않습니다.Rosetta2를 설치하면 해결할 수 있지만 pkg을 설치해야 합니다. 그리고 이 pkg의 설치는 JAMF-Enrollment-Kickstart가 완성되기 전에 반복적으로 실행됩니다.
CPU의 구조와 설치 여부에 따라 초기 설정된 정책을 구분하는 것은 스마트하지 않기 때문에 Pkg 파일을 설치하는 정책을 실행하기 전에
나는 이런 각본을 집행하고 싶다.
제가 직접 쓰려고 했는데 Jamf Nation에 직접 스크립트 투고가 있어서 썼어요.
#!/bin/bash
# Installs Rosetta as needed on Apple Silicon Macs.
exitcode=0
# Determine OS version
# Save current IFS state
OLDIFS=$IFS
IFS='.' read osvers_major osvers_minor osvers_dot_version <<< "$(/usr/bin/sw_vers -productVersion)"
# restore IFS to previous state
IFS=$OLDIFS
# Check to see if the Mac is reporting itself as running macOS 11
if [[ ${osvers_major} -ge 11 ]]; then
# Check to see if the Mac needs Rosetta installed by testing the processor
processor=$(/usr/sbin/sysctl -n machdep.cpu.brand_string | grep -o "Intel")
if [[ -n "$processor" ]]; then
echo "$processor processor installed. No need to install Rosetta."
else
# Check Rosetta LaunchDaemon. If no LaunchDaemon is found,
# perform a non-interactive install of Rosetta.
if [[ ! -f "/Library/Apple/System/Library/LaunchDaemons/com.apple.oahd.plist" ]]; then
/usr/sbin/softwareupdate --install-rosetta --agree-to-license
if [[ $? -eq 0 ]]; then
echo "Rosetta has been successfully installed."
else
echo "Rosetta installation failed!"
exitcode=1
fi
else
echo "Rosetta is already installed. Nothing to do."
fi
fi
else
echo "Mac is running macOS $osvers_major.$osvers_minor.$osvers_dot_version."
echo "No need to install Rosetta on this version of macOS."
fi
exit $exitcodeho "Unknown Architecture"
fi
JAMF-Enrollment Kickstart를 설치한 Pkg 정책의 스크립트 페이로드에서 우선순위를 Before로 등록합니다.MacOS를 업데이트할 때
맥OS Big Sur를 업데이트하면 로셋타2가 이런 방법을 없앴다고 한다.
이전 스크립트 투고의 같은 주제에서arm64로 구성되었고Rosetta2에 설치되지 않은 맥의 확장 속성이 사서함에 있습니다.
#!/bin/bash
: << DOC
EA to determine whether Rosetta is installed.
Possible results:
"installed" - arm64 Mac - Rosetta is installed
"missing" - arm64 Mac - Rosetta is not installed
"ineligible" - Intel Mac - Rosetta cannot be installed
DOC
# is this an ARM Mac?
arch=$(/usr/bin/arch)
if [ "$arch" == "arm64" ]; then
# is rosetta 2 installed?
if [[ -f "/Library/Apple/System/Library/LaunchDaemons/com.apple.oahd.plist" ]]; then
result="installed"
else
result="missing"
fi
else
result="ineligible"
fi
echo "<result>$result</result>"
이 확장 속성이 missing
인 Mac에 대해 방금 스크립트를 실행하면 Rosetta2를 다시 설치합니다.
Reference
이 문제에 관하여(Jamf Pro에서 Rosetta2 설치), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/ssk_ats/articles/743d2bdc23e8f8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)