Amazon EC2 인스턴스에서 운영 체제 및 소프트웨어 업데이트 - Amazon Elastic Compute Cloud

Amazon EC2 인스턴스에서 운영 체제 및 소프트웨어 업데이트

다음 주제에서는 Apple 실리콘 Mac 인스턴스(Mac2, Mac2-m1ultra, Mac2-m2, Mac2-m2pro)와 x86 Mac 인스턴스(Mac1)에서 운영 체제 및 소프트웨어를 업데이트하는 방법을 설명합니다.

주의

베타 또는 평가판 macOS 버전 설치는 Apple Silicon Mac 인스턴스에서만 사용할 수 있습니다. Amazon EC2는 베타 또는 평가판 macOS 버전을 지원하지 않으며 사전 프로덕션 macOS 버전으로 업데이트 후에도 인스턴스가 계속 작동할 것을 보장하지 않습니다.

Amazon EC2 x86 Mac 인스턴스에 베타 또는 평가판 macOS 버전을 설치하려고 하면 인스턴스를 중지하거나 종료할 때 Amazon EC2 Mac 전용 호스트의 성능이 저하되고 해당 호스트에서 새 인스턴스를 시작하거나 실행하지 못하게 됩니다.

참고

AWS가 공식 AMI를 릴리스하기 전에 인플레이스 macOS 업데이트를 수행하는 경우 선택한 호스트에만 업데이트가 적용됩니다. 다른 호스트가 있거나 새 호스트를 시작하는 경우 해당 호스트에서도 동일한 업데이트 프로세스를 수행해야 합니다. 각 macOS 버전은 기본 Apple Mac 하드웨어에 최소 펌웨어 버전이 있어야 합니다. 인플레이스 업데이트는 선택한 호스트의 펌웨어만 업데이트하고 다른 기존 호스트나 새 호스트로 전송되지 않습니다. Amazon EC2 Mac 전용 호스트와 호환되는 macOS 버전을 확인하려면 Amazon EC2 Mac 전용 호스트에 지원되는 macOS 버전 찾기를 참조하세요.

Amazon EC2 Mac 인스턴스 유형에 따라 아래의 올바른 단계를 따릅니다.

    사전 조건

    네트워크 드라이버 구성 업데이트로 인해 ENA 드라이버 버전 1.0.2는 macOS 13.3 이상과 호환되지 않습니다. 베타, 평가판 또는 프로덕션 macOS 버전 13.3 이상을 설치하고 최신 ENA 드라이버를 설치하지 않은 경우 다음 절차에 따라 새 버전의 드라이버를 설치하세요.

    ENA 드라이버의 새 버전을 설치하려면
    1. 터미널 창에서 SSH를 사용하여 Apple Silicon Mac 인스턴스에 연결합니다.

    2. 다음 명령을 사용하여 Homebrew를 업데이트하고 ENA 애플리케이션을 Applications 파일에 다운로드합니다.

      [ec2-user ~]$ brew update
      [ec2-user ~]$ brew install amazon-ena-ethernet-dext
    3. exit를 입력하고 Return 키를 눌러 인스턴스와의 연결을 끊습니다.

    4. VNC 클라이언트를 사용하여 ENA 애플리케이션을 활성화합니다.

      1. 인스턴스의 GUI(그래픽 사용자 인터페이스)에 연결을(를) 사용하여 VNC 클라이언트를 설정합니다.

      2. 화면 공유 애플리케이션을 사용하여 인스턴스에 연결했다면 Applications 폴더로 이동하여 ENA 애플리케이션을 엽니다.

      3. 활성화를 선택합니다.

      4. 드라이버가 제대로 활성화되었는지 확인하려면 터미널 창에서 다음 명령을 실행합니다. 명령의 출력은 이전 드라이버가 종료 상태이고 새 드라이버가 활성화 상태임을 나타냅니다.

        systemextensionsctl list;
      5. 인스턴스를 다시 시작한 후에는 새 드라이버만 표시됩니다.

    소프트웨어 업데이트 수행

    Apple Silicon Mac 인스턴스에서는 여러 단계를 완료하여 현재 위치 운영 체제 업데이트를 수행해야 합니다. 여기에는 Amazon EBS 루트 볼륨의 소유권을 EBS 루트 볼륨 관리 사용자에게 위임하는 것이 포함됩니다. Amazon EC2 API를 사용하여 이를 자동으로 수행하거나 인스턴스에서 명령을 실행하여 수동으로 수행하도록 선택할 수 있습니다.

    Automated volume ownership delegation (Recommended)
    고려 사항
    • 볼륨 소유권 위임 작업을 완료하는 데 30~90분이 소요될 수 있습니다. 이 시간 동안에는 인스턴스에 연결할 수 없습니다.

    • 다음 macOS 버전이 지원됩니다.

      • Mac2 | Mac2-m1ultra - macOS Ventura(버전 13.0 이상)

      • Mac2-m2 | Mac2-m2pro - macOS Ventura(버전 13.2 이상)

    • 인스턴스에는 부팅 가능한 볼륨이 하나만 있어야 하며, 연결된 각 볼륨에는 추가 관리 사용자가 1명만 있을 수 있습니다.

    1단계: EBS 루트 볼륨 관리 사용자의 암호를 설정하고 보안 토큰 활성화

    Amazon EBS 루트 볼륨 관리 사용자(ec2-user)의 암호를 설정하고 보안 토큰을 활성화해야 합니다.

    참고

    암호와 보안 토큰은 GUI를 사용하여 Apple 실리콘 Mac 인스턴스에 처음 연결할 때 설정됩니다. 이전에 GUI를 사용하여 인스턴스에 연결한 경우 이 단계를 수행할 필요가 없습니다.

    1. SSH를 이용해 인스턴스에 연결합니다.

    2. ec2-user 사용자의 암호를 설정합니다.

      $ sudo /usr/bin/dscl . -passwd /Users/ec2-user
    3. ec2-user 사용자의 보안 토큰을 활성화합니다. -oldPassword의 경우 이전 단계와 동일한 암호를 지정합니다. -newPassword의 경우 다른 암호를 지정합니다. 다음 명령은 .txt 파일에 이전 암호와 새 암호가 저장되어 있다고 가정합니다.

      $ sysadminctl -oldPassword `cat old_password.txt` -newPassword `cat new_password.txt`
    4. 보안 토큰이 활성화되어 있는지 확인합니다.

      $ sysadminctl -secureTokenStatus ec2-user
    2단계: Amazon EBS 루트 볼륨의 소유권을 EBS 루트 볼륨 관리 사용자에게 위임

    소유권을 위임하려면 볼륨 소유권 위임 작업을 생성해야 합니다.

    1. create-delegate-mac-volume-ownership-task 명령을 사용하여 작업을 생성합니다. --instance-id의 경우 인스턴스의 ID를 지정합니다. --mac-credentials의 경우 다음 자격 증명을 지정합니다.

      • 내부 디스크 관리 사용자

        • 사용자 이름 - 기본 관리 사용자(aws-managed-user)만 지원되고 기본적으로 사용됩니다. 다른 관리 사용자는 지정할 수 없습니다.

        • 암호 - aws-managed-user의 기본 암호를 변경하지 않은 경우 공백인 기본 암호를 지정합니다. 그렇지 않으면 암호를 지정합니다.

      • Amazon EBS 루트 볼륨 관리 사용자

        • 사용자 이름 - 기본 관리 사용자를 변경하지 않은 경우 ec2-user를 지정합니다. 그렇지 않으면 관리 사용자의 사용자 이름을 지정합니다.

        • 암호 - 위의 1단계에서 루트 볼륨 관리자에 설정한 암호를 지정합니다.

      aws ec2 create-delegate-mac-volume-ownership-task \ --instance-id i-1234567890abcdef0 \ --mac-credentials file://mac-credentials.json

      다음은 이전 예제에서 참조되는 mac-credentials.json 파일의 내용입니다.

      { "internalDiskPassword":"internal-disk-admin_password", "rootVolumeUsername":"root-volume-admin_username", "rootVolumepassword":"root-volume-admin_password" }
    2. 볼륨 소유권 위임 작업이 완료되고 인스턴스가 정상 상태로 돌아갈 때까지 기다립니다. describe-mac-modification-tasks 명령을 사용합니다. --mac-modification-task-id의 경우 이전 단계의 볼륨 소유권 위임 작업 ID를 지정합니다.

      aws ec2 describe-mac-modification-tasks \ --mac-modification-task-id task-id
    3. 볼륨 소유권 위임 작업이 완료되면 3단계로 진행합니다.

    3단계: 소프트웨어 업데이트

    Amazon EBS 루트 볼륨의 소유권을 위임한 후 x86 Mac 인스턴스에서 소프트웨어 업데이트(아래)에 설명된 단계에 따라 소프트웨어를 업데이트합니다.

    Manual volume ownership delegation

    이 절차를 진행하면서 두 개의 암호를 생성합니다. 한 암호는 Amazon EBS 루트 볼륨 관리 사용자(ec2-user)용이고 다른 암호는 내부 디스크 관리 사용자(aws-managed-user)용입니다. 절차를 진행하면서 비밀번호를 사용하게 되므로 이 비밀번호를 기억해 두세요.

    참고

    macOS Big Sur에서 이 절차를 사용하면 macOS Big Sur 11.7.3에서 macOS Big Sur 11.7.4로 업데이트하는 것과 같은 사소한 업데이트만 수행할 수 있습니다. macOS Monterey 이상의 경우 주요 소프트웨어 업데이트를 수행할 수 있습니다.

    내부 디스크에 액세스하려면
    1. 로컬 컴퓨터의 터미널에서 다음 명령으로 SSH를 사용하여 Apple Silicon Mac 인스턴스에 연결합니다. 자세한 내용은 SSH를 사용하여 인스턴스에 연결 섹션을 참조하세요.

      ssh -i /path/key-pair-name.pem ec2-user@instance-public-dns-name
    2. 다음 명령을 사용하여 macOS 화면 공유를 설치하고 시작합니다.

      [ec2-user ~]$ sudo launchctl enable system/com.apple.screensharing sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist
    3. 다음 명령을 실행하여 ec2-user에 대한 암호를 설정합니다. 암호는 나중에 사용할 것이므로 기억해 두세요.

      [ec2-user ~]$ sudo /usr/bin/dscl . -passwd /Users/ec2-user
    4. exit를 입력하고 Return 키를 눌러 인스턴스와의 연결을 끊습니다.

    5. 로컬 컴퓨터의 터미널에서 다음 명령으로 VNC 포트에 대한 SSH 터널을 사용하여 인스턴스에 다시 연결합니다.

      ssh -i /path/key-pair-name.pem -L 5900:localhost:5900 ec2-user@instance-public-dns-name
      참고

      다음 VNC 연결 및 GUI 단계가 완료될 때까지 이 SSH 세션을 종료하지 마세요. 인스턴스가 다시 시작되면 연결이 자동으로 닫힙니다.

    6. 로컬 컴퓨터에서 다음 단계에 따라 localhost:5900에 연결합니다.

      1. Finder를 열고 실행을 선택합니다.

      2. 서버에 연결을 선택합니다.

      3. 서버 주소 필드에 vnc://localhost:5900을 입력합니다.

    7. macOS 창에서 3단계에서 생성한 암호를 사용하여 ec2-user로 Apple Silicon Mac 인스턴스의 원격 세션에 연결합니다.

    8. 다음 옵션 중 하나를 사용하여 InternalDisk라는 내부 디스크에 액세스합니다.

      1. macOS Ventura 이상인 경우: 시스템 설정을 열고 왼쪽 창에서 일반을 선택한 다음 창의 오른쪽 하단에서 시동 디스크를 선택합니다.

      2. macOS Monterey 이하인 경우: 시스템 환경 설정을 열고 시동 디스크를 선택한 다음 창의 왼쪽 아래에 있는 잠금 아이콘을 선택하여 창을 잠금 해제합니다.

      문제 해결 도움말

      내부 디스크를 마운트해야 하는 경우 터미널에서 다음 명령을 실행합니다.

      APFSVolumeName="InternalDisk" ; SSDContainer=$(diskutil list | grep "Physical Store disk0" -B 3 | grep "/dev/disk" | awk {'print $1'} ) ; diskutil apfs addVolume $SSDContainer APFS $APFSVolumeName
    9. InternalDisk라는 내부 디스크를 선택하고 다시 시작을 선택합니다. 메시지가 표시되면 다시 시작을 선택합니다.

      중요

      내부 디스크의 이름이 InternalDisk가 아닌 Macintosh HD인 경우 전용 호스트를 업데이트할 수 있도록 인스턴스를 중지했다가 다시 시작해야 합니다. 자세한 내용은 Amazon EC2 Mac 인스턴스를 중지 또는 종료 섹션을 참조하세요.

    다음 절차에 따라 관리자에게 소유권을 위임합니다. SSH로 인스턴스에 다시 연결하면 특수 관리자 사용자(aws-managed-user)를 사용하여 내부 디스크에서 부팅합니다. aws-managed-user의 초기 암호는 비어 있으므로 처음 연결할 때 암호를 덮어써야 합니다. 그런 다음 부팅 볼륨이 변경되었으므로 macOS 화면 공유를 설치하고 시작하는 단계를 반복해야 합니다.

    Amazon EBS 볼륨의 소유권을 관리자에게 위임하려면
    1. 로컬 컴퓨터의 터미널에서 다음 명령을 사용하여 Apple Silicon Mac 인스턴스에 연결합니다.

      ssh -i /path/key-pair-name.pem aws-managed-user@instance-public-dns-name
    2. WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 경고가 표시되면 다음 명령 중 하나를 사용하여 이 문제를 해결합니다.

      1. 다음 명령을 사용하여 알려진 호스트를 지웁니다. 그런 다음 이전 단계를 반복합니다.

        rm ~/.ssh/known_hosts
      2. 이전 단계의 SSH 명령에 다음을 추가합니다.

        -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no
    3. 다음 명령을 실행하여 aws-managed-user에 대한 암호를 설정합니다. aws-managed-user 초기 암호는 비어 있으므로 처음 연결할 때 암호를 덮어써야 합니다.

      1. [aws-managed-user ~]$ sudo /usr/bin/dscl . -passwd /Users/aws-managed-user password
      2. 프롬프트 Permission denied. Please enter user's old password:가 표시되면 Enter 키를 누릅니다.

        문제 해결 도움말

        passwd: DS error: eDSAuthFailed 오류가 발생하면 다음 명령을 사용합니다.

        [aws-managed-user ~]$ sudo passwd aws-managed-user
    4. 다음 명령을 사용하여 macOS 화면 공유를 설치하고 시작합니다.

      [aws-managed-user ~]$ sudo launchctl enable system/com.apple.screensharing sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist
    5. exit를 입력하고 Return 키를 눌러 인스턴스와의 연결을 끊습니다.

    6. 로컬 컴퓨터의 터미널에서 다음 명령으로 VNC 포트에 대한 SSH 터널을 사용하여 인스턴스에 다시 연결합니다.

      ssh -i /path/key-pair-name.pem -L 5900:localhost:5900 aws-managed-user@instance-public-dns-name
    7. 로컬 컴퓨터에서 다음 단계에 따라 localhost:5900에 연결합니다.

      1. Finder를 열고 실행을 선택합니다.

      2. 서버에 연결을 선택합니다.

      3. 서버 주소 필드에 vnc://localhost:5900을 입력합니다.

    8. macOS 창에서 3단계에서 생성한 암호를 사용하여 aws-managed-user로 Apple Silicon Mac 인스턴스의 원격 세션에 연결합니다.

      참고

      Apple ID로 로그인하라는 메시지가 표시되면 나중에 설정을 선택합니다.

    9. 다음 옵션 중 하나를 사용하여 Amazon EBS 볼륨에 액세스합니다.

      1. macOS Ventura 이상인 경우: 시스템 설정을 열고 왼쪽 창에서 일반을 선택한 다음 창의 오른쪽 하단에서 시동 디스크를 선택합니다.

      2. macOS Monterey 이하인 경우: 시스템 환경 설정을 열고 시동 디스크를 선택한 다음 창의 왼쪽 아래에 있는 잠금 아이콘을 사용하여 창을 잠금 해제합니다.

      참고

      재부팅할 때까지 관리자 암호를 입력하라는 메시지가 표시되면 위에서 aws-managed-user에 대해 설정한 암호를 사용하세요. 이 암호는 ec2-user 또는 인스턴스의 기본 관리자 계정에 대해 설정한 암호와 다를 수 있습니다. 다음 지침은 인스턴스의 관리자 암호를 사용할 시기를 지정합니다.

    10. Amazon EBS 볼륨(시동 디스크 창에서 이름이 InternalDisk로 지정되지 않은 볼륨)을 선택하고 다시 시작을 선택합니다.

      참고

      Apple Silicon Mac 인스턴스에 부팅 가능한 Amazon EBS 볼륨이 여러 개 연결되어 있는 경우 각 볼륨에 고유한 이름을 사용해야 합니다.

    11. 다시 시작을 확인한 다음 메시지가 표시되면 사용자 인증을 선택합니다.

    12. 이 볼륨의 사용자 권한 부여 창에서 관리자 사용자(기본값 ec2-user)가 선택되어 있는지 확인한 다음 권한 부여를 선택합니다.

    13. 이전 절차의 3단계에서 생성한 ec2-user 암호를 입력한 다음 계속을 선택합니다.

    14. 메시지가 표시되면 특수 관리자 사용자(aws-managed-user)의 암호를 입력합니다.

    15. 로컬 컴퓨터의 터미널에서 사용자 이름 ec2-user와 함께 SSH를 사용하여 인스턴스에 다시 연결합니다.

      문제 해결 도움말

      WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 경고가 표시되면 다음 명령을 실행하고 SSH를 사용하여 인스턴스에 다시 연결합니다.

      rm ~/.ssh/known_hosts
    16. 소프트웨어 업데이트를 수행하려면 x86 Mac 인스턴스에서 소프트웨어 업데이트 아래 명령을 사용하세요.

    x86 Mac 인스턴스에서 softwareupdate 명령을 사용하여 Apple에서 운영 체제 업데이트를 설치할 수 있습니다.

    x86 Mac 인스턴스에 Apple의 운영 체제 업데이트를 설치하려면
    1. 다음 명령을 사용하여 사용 가능한 업데이트가 포함된 패키지를 나열합니다.

      [ec2-user ~]$ softwareupdate --list
    2. 모든 업데이트를 설치하거나 특정 업데이트만 설치합니다. 특정 업데이트를 설치하려면 다음 명령을 사용합니다.

      [ec2-user ~]$ sudo softwareupdate --install label

      대신 모든 업데이트를 설치하려면 다음 명령을 사용합니다.

      [ec2-user ~]$ sudo softwareupdate --install --all --restart

    시스템 관리자는 AWS Systems Manager를 사용하여 x86 Mac 인스턴스에서 사전 승인된 운영 체제 업데이트를 롤아웃할 수 있습니다. 자세한 내용은 AWS Systems Manager 사용 설명서를 참조하세요.

    Homebrew를 통해 EC2 macOS AMI에 패키지에 대한 업데이트를 설치하여 인스턴스에 이러한 패키지의 최신 버전을 보유할 수 있습니다. Homebrew를 사용하여 Amazon EC2 macOS에서 일반적인 macOS 애플리케이션을 설치하고 실행할 수도 있습니다. 자세한 내용은 Homebrew 설명서를 참조하세요.

    Homebrew를 사용하여 업데이트를 설치하려면
    1. 다음 명령을 사용하여 Homebrew를 업데이트합니다.

      [ec2-user ~]$ brew update
    2. 다음 명령을 사용하여 사용 가능한 업데이트가 포함된 패키지를 나열합니다.

      [ec2-user ~]$ brew outdated
    3. 모든 업데이트를 설치하거나 특정 업데이트만 설치합니다. 특정 업데이트를 설치하려면 다음 명령을 사용합니다.

      [ec2-user ~]$ brew upgrade package name

      대신 모든 업데이트를 설치하려면 다음 명령을 사용합니다.

      [ec2-user ~]$ brew upgrade