¿Cómo abro un archivo como root, en TextEdit? He intentado estos comandos como root
, pero TextEdit siempre dice que está bloqueado:
open -e /etc/apache2/httpd.conf
open -e -F /etc/apache2/httpd.conf
open -e -F -W /etc/apache2/httpd.conf
Y, por supuesto, sudo !!
no hay diferencia.
sudo /Applications/Textedit.app/Contents/MacOS/TextEdit
luego simplemente abra el archivo de TextEditpico .bash_profile
, agreguealias sudotext='sudo -b "/Applications/Textedit.app/Contents/MacOS/TextEdit"'
, guarde el archivo y reinicie la Terminal. Ahora puede escribirsudotext
para iniciar TextEdit como root.open -t "/etc/hosts"
por ejemplo. Con TextWrangler simplemente puede escribiredit /etc/hosts
.sudo -b "/Applications/Textedit.app/Contents/MacOS/TextEdit"
no funciona :(BBEdit es la herramienta gratuita para hacer esto en 2019 y reemplaza toda la funcionalidad de TextErangler y puede descargarlo desde la App Store y el sitio web del desarrollador.
TextEdit no es realmente la herramienta adecuada para editar archivos de configuración; use TextWrangler en su lugar. Es gratis, tiene la capacidad incorporada de editar archivos con acceso de root desde una cuenta de administrador, así como cosas como abrir archivos invisibles y directorios fácilmente editar archivos a través de SFTP, etc.
fuente
emacs
también tiene un bonito modo de conf con código de colores.Aquí hay una manera de evitar ejecutar TextEdit como root:
Deberá salir de la copia de TextEdit después de editar el archivo.
sudo -e
, a veces conocido comosudoedit
OS X, pero no lo hace, realiza una copia temporal del archivo con permiso de escritura para el usuario actual, invoca un editor en él en la forma habitual de Unix y luego lo copia de nuevo.Las opciones para
open
:-W
espera a que TextEdit se cierre, por lo quesudo
sabe cuándo volver a copiar el archivo.-n
asegura que esté esperando en una instancia separada de TextEdit, no una que ya tenga abierta y que no desee cerrar. También puede sustituir en-t
lugar de-e
si tiene un editor de texto favorito que no sea TextEdit.Si ya tiene un
EDITOR
conjunto de variables para usar un editor gráfico con su propia herramienta de línea de comandos con capacidad de espera (como TextMate o BBEdit), entonces no necesita ninguno de estos trucos y puede usarlosudo -e <file>
directamente.fuente
Dado que el usuario root está deshabilitado, la única forma de forzar a una aplicación arbitraria de OS X a tener permisos de root es habilitar root e iniciar sesión como root.
Por supuesto, las aplicaciones pueden usar la API para solicitar autenticación al sistema y abrir el cuadro de diálogo que espera cuando se le solicita un usuario administrador y una contraseña. TextEdit no tiene esa función, por lo que debe evitar los permisos de archivo antes y después de abrir y escribir los archivos deseados.
¿Has intentado usar
sudo open -a textedit
para abrir la aplicación?fuente
sudo su -
para iniciar un shell como root y luego puedo ejecutar conopen "/Applications/Textedit.app/Contents/MacOS/TextEdit"
éxito. No tengo habilitado el usuario root ni he iniciado sesión como usuario root.Deberia trabajar
fuente
/etc/apache2/httpd.conf
tiene permisos predeterminados0444
. He estado intentando toda la mañana editar ese archivo (deemacs
forma remota) pero nunca pensé en verificar los permisos (del nuevo León).trabaja para Lion
fuente