Soy desarrollador y estoy proporcionando mi aplicación con un instalador pkg. Antes de El Capitán, mi instalador colocaba los binarios en /usr/bin
. Con El Capitán tuve que cambiarlo debido a SIP, por lo que ahora los binarios van a /usr/local/bin
. Según algunos informes, /usr/local/bin
solo es accesible para usuarios con privilegios de sudo, los usuarios "regulares" no pueden acceder. ¿Cuál debería ser la ubicación correcta para instalar mi aplicación, para que todos los usuarios puedan acceder a ella?
Respuesta
¿Demasiados anuncios?Para las herramientas de línea de comandos accesibles por cualquier usuario, /usr/local/bin
es la mejor ubicación.
Requiere Permiso de Administrador a Nivel de Sistema
Que también se requiera sudo
es correcto. Un administrador debería ser necesario para realizar cambios que afecten a otros usuarios de una computadora. Idealmente, solo los usuarios que son administradores pueden realizar cambios a nivel de sistema.
Prácticamente, esto significa que su paquete de instalación debería requerir derechos de administrador para ser instalado. Installer.app se encargará de hacer cumplir eso por usted.
pkgbuild
Esperemos que esté utilizando pkgbuild
para crear el paquete de instalación.
Si es así, asegúrese de pasar la ruta de destino /usr/local/bin
utilizando la bandera --install-location
.
Avoid embedding standard parent folders in your package and installing to /
. No package should need to install directly to /
.
Esto asegurará que cualquier ruta de carpeta existente de /usr/local/bin
mantenga sus permisos y su paquete no dañe ninguna configuración existente. Si la ruta de destino no existe, Installer.app la creará por usted.
1 votos
Si estaba en /usr/bin antes de que necesitara permisos de administrador, es decir, use sudo antes - las cuentas regulares no deberían haber podido modificar /usr/bin