La última vez que me acerqué a las órdenes de UNIX, hablé sobre cómo puede moverse a través del sistema de línea de archivos. Estas ideas son cruciales; Si no comprende los elementos básicos de la navegación de archivos y carpetas en el terminal, no puede hacer mucho en la línea de comando. Si no ha dominado esto, comience con esto al manejar los archivos en la línea de comando. Una vez que esto esté bajo control, desea comprender los pedidos que cambian la forma en que actúan los archivos y las carpetas. En este artículo cubriremos el resto de las cosas que hacen regularmente en la línea de comando. Explicaremos los permisos en la línea de comando, las redes de terminal y otros conceptos que pueden cambiar su juego CLI. Esto es más un recorrido por conceptos importantes que una lista de comandos de Unix, pero creo que es más valioso. ¡Vamos a eso!
Gestión de permisos de usuario Los permisos de archivos de usuario son uno de los primeros conceptos muy extranjeros que muchos desarrolladores de WordPress cumplen. En lugar del simple acto de crear un nuevo archivo PHP o CSS, este es un nivel adicional de complejidad. Se necesita una cierta comprensión de cómo UNIX considera los permisos de los usuarios. La versión corta es que una computadora tiene muchos usuarios diferentes, y estos usuarios tienen diferentes derechos para acceder y hacer cosas diferentes. Esto sucede por razones de seguridad: si solo deja que algunas personas realicen operaciones inherentemente peligrosas, todo su sistema será más robusto ante las amenazas.
Sudo te permite convertirte en un usuario más fuerte

El primer y más común tipo de problema con los permisos del usuario que enfrentará cuando esté familiarizado con CLI es que a veces no será lo suficientemente fuerte como para hacer algo como eliminar el archivo que desea. Esto a menudo significa que lanzará pedidos y su terminal no lo enviará en silencio y en su lugar no hará nada. Para hacer frente a esto, hay una orden que ejecuta el pedido con altos permisos: “comando sudo”. Algunos pedidos en su sistema Mac o Linux (nuevamente, estos son ejemplos de sistemas UNIX) solo pueden ser realizados por el usuario “raíz” más potente. Para convertirse en el usuario temporal de “raíz”, use el comando sudo antes del pedido. (Obligatorio XKCD.) Si desea RM File /Etc /Hosts (¡no!), Se aseguraría de que sucediera, ejecutando el pedido como una raíz. Haría esto con el pedido: sudo rm /etc /hosts entonces, muy probablemente, se le pedirá “contraseña sudo”. En una Mac ordinaria, esto significa la contraseña que accede a su cuenta. Para el servidor Linux, más a menudo hay una contraseña de “sudo” separada. En ambos casos, si se proporciona con éxito, el pedido se ejecutará como un usuario raíz y se garantizará (virtualmente) que tendrá éxito. Puede hacer todo en cualquier momento usando sudo, pero puede convertirse en mucho teclado y un poco molesto si tiene que hacer muchos pedidos como usuario con altos permisos. Hay un orden que ofrecen muchos sistemas UNIX para este tipo de escenario: SU. En resumen, el orden SU es la forma en que se convierte en un súper usuario para múltiples pedidos. Al igual que con sudo, se le preguntará su contraseña. Pero, a diferencia de sudo, SU lo hará para que no necesite escribir sudo en el próximo orden.
CHMOD es cómo cambia los permisos de archivo más allá de los permisos individuales o diferentes, los archivos individuales tendrán niveles establecidos por permisos y diferentes propietarios asociados. Esto es menos necesario que sudo, por lo que entraremos menos profundidad. Un archivo tiene diferentes poderes que un usuario puede tener con él. Para un archivo, hay permisos otorgados al usuario que crea (titular), permisos otorgados al grupo al que pertenece el propietario y luego los permisos que cada usuario tiene para ese archivo. Todos estos son ejemplos generales de permisos de los archivos UNIX que puede tener. El modelo específico en el que están estandarizados es ligeramente complejo. Pero es un sistema de byte fijo. A menudo escuchará a personas hablar sobre 777 usando un archivo, lo que significa dar a todos, el usuario, el grupo y el mundo, la capacidad de leer, escribir y ejecutar el archivo. ¡Esta es la “opción nuclear”, en realidad para lanzar algunas! Importante en CSS. Así que hágalo solo como una solución rápida para una configuración de desarrollo o una última solución a corto plazo. Pero para hacer esto para todos los archivos en una carpeta, usaría el comando chmod. Chmod significa “modo de cambio”. A 777 una carpeta, ejecutaría el pedido:
CHMOD -R 777 Carper Chown es cómo cambia el propietario del archivo al igual que Chmod, use Chown para cambiar parte de la propiedad de un archivo. Donde Chmod es para los niveles de permiso otorgados a cada clase de usuarios, Chown cambia la identidad del propietario. Así que asignarlo de uno a otro. He usado Chown unas pocas docenas de veces en mis años como desarrollador web utilizando la línea de comandos. Así que siempre tengo que buscar sintaxis. Aquí hay una página web bastante buena que explica sus parámetros básicos. Las utilidades de red para CLI como desarrollador web, una gran parte de lo que hacemos es la interfaz de las computadoras de distancia. Esto significa que existe una importancia desproporcionada para acceder y trabajar con archivos lejos de su computadora. Así que esta sección no se puede perder. He tocado un poco sobre SSH en otras publicaciones, pero así es como se conecta a un servidor UNIX remoto y accede a su CLI. Entonces, si no tiene acceso físico a una computadora con una pantalla, casi siempre se conectará a ella por orden SSH y luego lo usará desde su propio emulador terminal. Una de las grandes y poderosas cosas sobre el terminal es que la diferencia entre usar su propia computadora a través de una terminal y el uso de una computadora de distancia a través de una conexión SSH es difícil de ver.
Entonces, ¿cómo se conecta a través de SSH? La autorización es un tema que este artículo ya es demasiado largo para cubrir en profundidad. Pero si ya ha configurado las claves SSH y las cargó en el servidor remoto (si no lo ha hecho, esa guía GitHub es sólida), todo lo que tiene que hacer es algo como: SSH [correo electrónico protegido] # o SSH [correo electrónico protegido] Si se activa su autenticación de contraseña, puede pedirle que lo ingrese. De lo contrario, será autenticado o rechazado en función de sus claves SSH. Use RSYNC y SCP para mover archivos hacia y desde servidores remotos Si ha configurado SSH, podrá usar SCP (Copia segura) o RSYNC (sincronización remota) para mover los archivos hacia y desde su servidor. Y nunca lo hago. Es, pero FTP y SFTP también son aplicaciones de línea de comandos simples que puede usar desde CLI. SFTP – Protocolo de transferencia de archivos seguro – se usa en SSH de la misma manera que RSYNC lo hace, FTP no.
Todos estos comandos son bastante similares, y las diferencias entre ellos son bastante sutiles y no son muy importantes para negociar en el contexto de este artículo.Como tal, le daremos solo un resumen rápido de mover los datos de RSYNC para mover todos los archivos de una carpeta a un servidor remoto, se vería como: RSYNC-Progress -Rz LocalFolder/ * [Correo electrónico protegido] :/Full/Remote/Path es solo una solicitud RSYNC básica, con y de este orden, ya sea que tengamos algunos argumentos y banderas interesantes.-Progress solo hace que RSYNC muestre más datos como funciona que por defecto.-El mudanza recursiva, si hay carpetas dentro de nuestra carpeta.-Z hace que la comprimir los datos para la transmisión.(Para computadoras lentas, -z es más lento. Para conexiones lentas a Internet, -z es más rápido.) Curl &
WGet le permite descargar contenido de Internet para ejecutar archivos cuando no tiene autorización SSH en un servidor, generalmente usará comandos CURL o WGET. (Algunos niños geniales juran en httpie). ¿Cuándo harías eso? Si necesita descargar una página web o un archivo en particular desde un servidor remoto. La instalación de WP-CLI y muchos otros programas de software de línea de comandos se basan en él. Y algunas personas se usan regularmente para probar la API REST. Dado cuánto tiempo es este artículo y cuán profundas son estas órdenes, por el momento nos alegraremos de que sepan cuáles son estas órdenes. Conceptos de la línea de comando Eventualmente, hay varias cosas que debe saber cómo hacer como una línea de control de Unix, que no encajan bien en los otros compartimentos de este artículo o en los anteriores. Estas son cosas que cambian el juego cuando se entienden, ¡así que no deje de leer!
$ Path es el lugar donde está buscando pedidos mientras hablamos, todas las órdenes que ejecuta en la terminal son solo programas simples. Como tal, necesitará ese programa en algún lugar de la unidad de almacenamiento, y su terminal necesita una forma de encontrarlo. Su explicación muy simple es que $ Path es una lista de todos los lugares donde su terminal está configurado para buscar esos pedidos. Esto no es algo que deba entender por completo para usar el terminal, sino comprender que no puede escribir WP en algunas terminales, porque no está en un lugar que ya está en $ ruta o no ha agregado. Ese lugar donde su parche $ es realmente útil. Una mayor profundidad realmente excede nuestro alcance aquí, pero para ver la ruta en la terminal, solo tiene que escribir el comando Echo $ ruta y verá una larga cadena de ubicaciones separadas (:) en el disco duro. Todos los pedidos que usa son solo archivos pequeños en una de esas carpetas. Todo lo que hablé de FTP a Chown. El alias le permite cambiar el nombre de las estructuras de comando comunes

Si ha utilizado algún tipo de sistema informático durante mucho tiempo, probablemente esté familiarizado con la idea de atajos que le permiten hacer lo mismo con menos catadores o clics.En una línea de comando UNIX, este tipo de atajos se llaman alias bash.Hay meras extensiones de texto que no se extienden explícitamente explícitamente a medida que observa su terminal, pero se extienden antes de que se ejecute el comando.Entonces, si te despiertas para escribir rsync –progress -rz … mucho, podrías darte la oportunidad de escribir brync … si creaste un alias.¿Cómo?Solo puede escribir la línea de pedido Bash algo como: Alias C = “Clear”
Luego, durante esa sesión terminal, “C” y la clave de retorno sería suficiente para eliminar esa pantalla terminal. Menos cuatro claves están en el límite “¡No vale la pena!” para mi. Pero para ejemplos más largos como RSYNC, vale la pena. Perfil bash La gran desventaja del alias, como expliqué declarándolos anteriormente, es que si deja ese terminal y hace uno nuevo, deberá recrear todos sus alias. Que supera el concepto de darles velocidad y mejorar la productividad. Allí la idea de un .bashrc o .Bashprofile entra en juego. (Si usa otro shell que no sea Bash, pueden tener diferentes nombres …) Este es un archivo de pedido que se ejecuta por Shell al comienzo de cargar una sesión para usted. Así que aquí está el lugar donde las personas ponen sus seudónimos. Hay otras cosas que a veces pondrá en ellas, pero esta es la más prominente. Miré mi archivo personal .bashrc y lo único que tenía en él eran los alias. Y un ruta de cambio $ extraño ahora, que ahora era superfluo. Detalles de PHP


Terminal Unix de pie: trabajar con permisos, redes y otros conceptos clave
Tags redes y otros conceptos clave Terminal Unix de pie: trabajar con permisos
homefinance blog