5 votos

Aplicar manualmente las actualizaciones del firmware del Mac

Recientemente se ha introducido un cambio importante en la instalación del firmware del Mac.

Apple ya no proporciona actualizadores de firmware independientes. ( Los firmwares más antiguos todavía están disponibles. (Nótese la adición de: "Este artículo ha sido archivado y ya no es actualizado por Apple").

En cambio, hay que prestar atención a este consejo: Actualice MacOS en un Mac de su institución:

Si eres el administrador del sistema de tu empresa o institución educativa, utiliza estos métodos para actualizar macOS High Sierra.

Apple no recomienda ni admite la creación de imágenes monolíticas del sistema cuando se actualiza MacOS.

Las imágenes monolíticas del sistema sólo pueden utilizarse para reinstalar macOS, no para actualizar a una nueva versión de macOS. Si intentas utilizar una imagen monolítica del sistema, las actualizaciones de firmware necesarias faltarán en la instalación. Esto hace que el Mac funcione en un estado no compatible e inestable. Puede utilizar imágenes del sistema para reinstalar el sistema operativo existente en un Mac.

Eso parece significar que la respuesta dada aquí: ¿Es posible reinstalar el firmware del MacBook? podría dejar de ser válido para esas actualizaciones de firmware (necesarias para APFS) en MacOS High Sierra 10.13 que se avecina en el instalador de High Sierra y que sólo se aplican durante el proceso de instalación.

¿Cómo se pueden extraer estas actualizaciones de firmware del instalador o del sistema y aplicarlas manualmente? ¿Existen otros activadores para aplicar el último firmware en los Macs afectados?

5voto

Pickle Puntos 2099

Es necesario obtener la aplicación instaladora para macOS High Sierra. Una vez que esté disponible en /Applications se puede utilizar el siguiente script para extraer los datos del firmware e instalar para producir un paquete instalador de firmware independiente:

#!/bin/sh
# Based on investigations and work by Pepijn Bruienne
# Expects a single /Applications/Install macOS High Sierra*.app on disk    
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

IDENTIFIER="com.foo.FirmwareUpdateStandalone"
VERSION=1.0

# find the Install macOS High Sierra.app and mount the embedded InstallESD disk image
echo "Mounting High Sierra ESD disk image..."
/usr/bin/hdiutil mount /Applications/Install\ macOS\ High\ Sierra*.app/Contents/SharedSupport/InstallESD.dmg

# expand the FirmwareUpdate.pkg so we can copy resources from it
echo "Expanding FirmwareUpdate.pkg"
/usr/sbin/pkgutil --expand /Volumes/InstallESD/Packages/FirmwareUpdate.pkg /tmp/FirmwareUpdate

# we don't need the disk image any more
echo "Ejecting disk image..."
/usr/bin/hdiutil eject /Volumes/InstallESD

# make a place to stage our pkg resources
/bin/mkdir -p /tmp/FirmwareUpdateStandalone/scripts

# copy the needed resources
echo "Copying package resources..."
/bin/cp /tmp/FirmwareUpdate/Scripts/postinstall_actions/update /tmp/FirmwareUpdateStandalone/scripts/postinstall
# add an exit 0 at the end of the script
echo "" >> /tmp/FirmwareUpdateStandalone/scripts/postinstall
echo "" >> /tmp/FirmwareUpdateStandalone/scripts/postinstall
echo "exit 0" >> /tmp/FirmwareUpdateStandalone/scripts/postinstall
/bin/cp -R /tmp/FirmwareUpdate/Scripts/Tools /tmp/FirmwareUpdateStandalone/scripts/

# build the package
echo "Building standalone package..."
/usr/bin/pkgbuild --nopayload --scripts /tmp/FirmwareUpdateStandalone/scripts --identifier "$IDENTIFIER" --version "$VERSION" /tmp/FirmwareUpdateStandalone/FirmwareUpdateStandalone.pkg

# clean up
/bin/rm -r /tmp/FirmwareUpdate
/bin/rm -r /tmp/FirmwareUpdateStandalone/scripts

Esto forma parte del scripts de posible interés para los administradores de MacOS de la proyecto munki .

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X