Curso de Linux

Resumen del curso de Linux Ubuntu 1.2 Evolución de Linux y sistemas operativos populares ...............................

Views 96 Downloads 3 File size 2MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Resumen del curso de Linux Ubuntu 1.2 Evolución de Linux y sistemas operativos populares ............................................................................. 3 1.2.1 Función del núcleo .............................................................................................................................. 3 1.2.2 Aplicaciones ......................................................................................................................................... 3 1.2.3 Papel del código abierto ...................................................................................................................... 4 1.2.4 Distribuciones de Linux........................................................................................................................ 4 1.2.4.1 ¿Qué es un comando? ...................................................................................................................... 5 1.3 Elegir un sistema operativo .................................................................................................................... 6 1.3.1 Puntos de decisión .............................................................................................................................. 6 1.3.2 Microsoft Windows ............................................................................................................................. 6 1.3.4 BSD ...................................................................................................................................................... 7 1.3.5 Otros UNIX comerciales ....................................................................................................................... 7 1.3.6 Linux .................................................................................................................................................... 7 1.3.7 Android ................................................................................................................................................ 7 2.2.1 Aplicaciones de servidor ...................................................................................................................... 7 2.2.2 Aplicaciones de escritorio.................................................................................................................... 8 2.2.3 Herramientas de consola ..................................................................................................................... 8 2.4 Herramientas de desarrollo .................................................................................................................... 9 2.3.1 La Free Software Foundation y la Open Source I .............................................................................. 10 2.3.3 Otros sistemas de licencias................................................................................................................ 11 2.3.4 Modelos de Open Business Fuente ................................................................................................... 11 3.2 gráfica frente al modo no gráfico ......................................................................................................... 11 3.3 Línea de comandos ............................................................................................................................... 14 3.4 Virtualización y Cloud Computing ........................................................................................................ 14 3.5 Uso de Linux para el trabajo ................................................................................................................. 14 3.6 Mantener su computadora segura de Linux ........................................................................................ 15 3.7 Cómo protegerse .................................................................................................................................. 17 4.2 Command Line Interface (CLI) .............................................................................................................. 18 4.3 Acceso al terminal ................................................................................................................................ 18 4.3.1 Prompt ............................................................................................................................................... 19 4.3.2 Shell ................................................................................................................................................... 20 4.3.3 comandos de formato ....................................................................................................................... 20 4.3.4 Trabajando con opciones .................................................................................................................. 21 4.4 Comando history .................................................................................................................................. 22 4.5 Presentación de variables de shell BASH .............................................................................................. 23 4.6 Variable PATH ....................................................................................................................................... 24 4.7 Comando Export ................................................................................................................................... 24 4.8 Comando Which ................................................................................................................................... 25

4.9 Comando type .................................................................................................................................. 25 4.10 Aliases ................................................................................................................................................. 26 4.11.1 El asterisco (*) ................................................................................................................................. 27 4.11.2 signo de interrogación(?) ................................................................................................................ 28 4.11.3 Los corchetes []................................................................................................................................ 28 4.12.1 Double Quotes ................................................................................................................................. 29 4.12.2 comillas simples ............................................................................................................................... 30 4.12.3 Caracter Backslash (\) ...................................................................................................................... 30 4.12.4 Back Quotes ..................................................................................................................................... 31 4.13.1 Punto y coma ................................................................................................................................... 31 4.13.2 Doble Ampersand (&&) ................................................................................................................... 32 4.13.3 Doble tubo ....................................................................................................................................... 32 5.2.1 Visualización man pages .................................................................................................................... 33 5.2.2 Controlando la vista the man Page.................................................................................................... 33 5.2.3 Secciones de la man Page .................................................................................................................. 34 5.2.4 man Page SYNOPSIS .......................................................................................................................... 35 5.2.5 Buscar en un man Page ..................................................................................................................... 36 5.2.6 Man Pages clasificadas por secciones ............................................................................................... 36 5.2.6.1 Determinando una sección............................................................................................................. 36 5.2.6.2 Especificación de una Sección ........................................................................................................ 36 5.2.6.3 Searching Sections .......................................................................................................................... 37 5.3.1 Visualización de la información de documentación para un comando ............................................. 38 5.3.2 Desplazamiento Cuando esté viendo la información del documento ............................................... 38 5.3.3 Exploración de información Documentación .................................................................................... 40 5.4.1 Using the --help Option ................................................................................................................. 41 5.5 Búsqueda de Comandos y Documentación .......................................................................................... 41 5.5.1 ¿Dónde están esos comandos ubicados? .......................................................................................... 42 5.5.2 Encuentra cualquier archivo o directorio .......................................................................................... 42 5.5.3 Contar el número de archivos ........................................................................................................... 42 5.5.4 Limiting the Output ........................................................................................................................... 43

Capítulo #1 1.2 Evolución de Linux y sistemas operativos populares Linux significa el núcleo del sistema, que es el controlador central de todo lo que sucede en la computadora. Las personas que dicen que su computadora "ejecuta Linux" usualmente se refieren al kernel y al conjunto de herramientas que vienen con él (llamado distribución). UNIX es ahora una marca y una especificación, propiedad de un consorcio de la industria llamado Open Group. Sólo el software que ha sido certificado por el Open Group puede llamarse UNIX. A pesar de adoptar todos los requisitos de la especificación de UNIX, Linux no ha sido certificado, por lo que Linux realmente no es UNIX.

1.2.1 Función del núcleo El núcleo del sistema operativo es como un controlador de tráfico aéreo en un aeropuerto. El kernel dicta qué programa obtiene qué pedazos de memoria, se inicia y mata programas, y se encarga de mostrar texto en un monitor. El kernel también maneja el cambio de aplicaciones. Una computadora tendrá un pequeño número de CPUs y una cantidad finita de memoria. El kernel se encarga de descargar una tarea y cargar una nueva tarea si hay más tareas que las CPUs.. Cada aplicación puede pensar que tiene un gran bloque de memoria en el sistema, pero es el kernel el que mantiene esta ilusión. El gestor de arranque carga el kernel de Linux y, a continuación, transfiere el control. Linux continúa con la ejecución de los programas necesarios para hacer que el ordenador sea útil, como conectarse a la red o iniciar un servidor web.

1.2.2 Aplicaciones Al igual que un controlador de tránsito aéreo, el kernel no es útil sin algo para controlar. Si el núcleo es la torre, las aplicaciones son los aviones. Las aplicaciones hacen peticiones al kernel y reciben recursos, como memoria, CPU y disco, a cambio. Una aplicación puede incluso necesitar múltiples procesos para funcionar, por lo que el kernel se encarga de ejecutar los procesos, iniciarlos y detenerlos según lo solicitado, y distribuir los recursos del sistema.

1.2.3 Papel del código abierto Linux comenzó en 1991 como un proyecto de afición de Linus Torvalds. Hizo que la fuente estuviera libre y otros se unieran para dar forma a este incipiente sistema operativo. Históricamente, la mayoría del software se ha emitido bajo una licencia de código cerrado, lo que significa que usted obtiene el derecho de utilizar el código de la máquina, pero no puede ver el código fuente. A menudo la licencia dice específicamente que usted no intentará invertir la ingeniería del código de la máquina de nuevo al código fuente para averiguar lo que hace!

El código abierto tiene una visión del software centrada en la fuente. La filosofía de código abierto es que usted tiene derecho a obtener el software, ya modificarlo para su propio uso. Linux adoptó esta filosofía con gran éxito. La gente tomó la fuente, hizo cambios, y los compartió con el resto del grupo.

1.2.4 Distribuciones de Linux Al igual que UNIX, hay muchos versiones diferentes de distribuciones. En estos días, hay distribuciones que se centran en la ejecución de servidores, escritorios, o incluso herramientas específicas de la industria como el diseño de la electrónica o la computación estadística. Red Hat comenzó como una distribución simple que introdujo el Administrador de paquetes de Red Hat (RPM). El desarrollador eventualmente formó una compañía a su alrededor, que intentó comercializar un escritorio Linux para los negocios. Debido a que todo en Red Hat Enterprise Linux es de código abierto, un proyecto llamado CentOS llegó a ser, que recompiló todos los paquetes de RHEL y los entregó de forma gratuita. CentOS y otros similares (como Scientific Linux) son en gran parte compatibles con RHEL e integran algún software más reciente, pero no ofrecen el soporte pagado que hace Red Hat. Scientific Linux es un ejemplo de distribución de uso específico basada en Red Hat. El proyecto es una distribución patrocinada por Fermilab diseñada para permitir la informática científica. Open SUSE originalmente derivado de Slackware, aunque Open SUSE está basado en el escritorio y está disponible para el público en general, SUSE Linux Enterprise contiene código propietario y se vende como un producto de servidor.

Debian es más un esfuerzo de la comunidad, y como tal, también promueve el uso de software de código abierto y la adherencia a los estándares.

Ubuntu es la distribución derivada más popular de Debian. Es la creación de Canonical, una empresa que se hizo para fomentar el crecimiento de Ubuntu y ganar dinero al proporcionar apoyo.

Linux Mint se inició como una bifurcación de Ubuntu Linux, al tiempo que se basa

1.2.4.1 ¿Qué es un comando? La respuesta más simple a la pregunta, "¿Qué es un comando?", Es que un comando es un programa de software que cuando se ejecuta en la línea de comandos, realiza una acción en el equipo. Sin embargo, hay otra manera de ver lo que es un comando: mirar su fuente. La fuente es de donde viene el comando "comes from" y hay varias fuentes diferentes de comandos dentro del shell de su CLI:

1.3 Elegir un sistema operativo La pregunta más importante que se debe hacer al determinar la configuración de una máquina es "¿qué hará esta máquina?" Si necesita ejecutar software especializado que sólo se ejecuta en Oracle Solaris, eso es lo que necesitará. Si necesita ser capaz de leer y escribir documentos de Microsoft Office, entonces necesitará Windows o algo capaz de ejecutar LibreOffice o OpenOffice.

1.3.1 Puntos de decisión Lo primero que debes decidir es el papel de la máquina. ¿Estarás sentado en la consola ejecutando aplicaciones de productividad o navegación web? Si es así, usted tiene un escritorio. ¿Se utilizará la máquina como un servidor Web o de otra forma sentado en un rack de servidor en alguna parte? Estás viendo un servidor. A continuación, determine las funciones de la máquina. ¿Hay software específico que necesita funcionar, o funciones específicas que necesita hacer? ¿Necesita ser capaz de administrar cientos o miles de estas máquinas al mismo tiempo? ¿Cuál es el conjunto de habilidades del equipo que administra el equipo y el software? Otro concepto vagamente relacionado es la compatibilidad con versiones anteriores. Esto se refiere a la capacidad de un sistema operativo posterior para ser compatible con el software creado para versiones anteriores. Esto suele ser una preocupación si necesita actualizar su sistema operativo, pero no está en condiciones de actualizar su software de aplicación. Por supuesto, el costo es siempre un factor. El propio Linux podría ser gratuito, pero es posible que tenga que pagar por el soporte, dependiendo de las opciones que elija. Microsoft tiene costos de licencia de servidor y puede tener costos de soporte adicionales durante la vida útil del servidor. El sistema operativo elegido sólo se puede ejecutar en una selección particular de hardware, lo que afecta aún más el costo.

1.3.2 Microsoft Windows El mundo de Microsoft divide los sistemas operativos según el propósito de la máquina: escritorio o servidor? La edición de escritorio de Windows ha sufrido varios esquemas de nomenclatura con la versión actual (a partir de esta escritura) que es simplemente Windows 8. Nuevas versiones del escritorio salen cada 3-5 años y tienden a ser compatibles durante muchos años. La compatibilidad con versiones anteriores también es una prioridad para Microsoft,

1.3.4 BSD Existen varios proyectos BSD (Berkely Software Distribution) de código abierto, como OpenBSD, FreeBSD y NetBSD. Estas son alternativas a Linux en muchos aspectos, ya que utilizan una gran cantidad de software común. Los BSD se implementan típicamente en la función de servidor, aunque también hay variantes como GNOME y KDE que se desarrollaron para funciones de escritorio.

1.3.5 Otros UNIX comerciales Algunos de los UNIXes comerciales más populares son:   

Oracle Solaris IBM AIX HP-UX

1.3.6 Linux Algunas distribuciones diferencian entre versiones estables, de prueba e inestables. La diferencia es que los inestables liberan la confiabilidad comercial de las funciones. Cuando las características se han integrado en el sistema durante mucho tiempo, y muchos de los errores y problemas abordados, el software se mueve a través de pruebas en la versión estable.

1.3.7 Android Android, patrocinado por Google, es la distribución Linux más popular del mundo. Es fundamentalmente diferente de sus contrapartes. Linux es un kernel, y muchos de los comandos que serán cubiertos en este curso son en realidad parte del paquete GNU (GNU no Unix). Es por eso que algunas personas insisten en usar el término GNU / Linux en lugar de Linux solo.

Capítulo #2 2.2.1 Aplicaciones de servidor Linux sobresale en que se ejecutan las aplicaciones de servidor debido a su fiabilidad y eficiencia. Uno de los primeros usos de Linux era para los servidores web . Un contenido de hosts de servidor web para páginas web, que son vistos por un navegador web utilizando el protocolo de transferencia de hipertexto (HTTP, HTTPS). Correo electrónico ha sido siempre un uso popular para servidores Linux. Cuando se habla de servidores de correo electrónico siempre es útil para mirar a los 3 diferentes papeles necesarios para obtener el correo electrónico entre las personas: 

Agente de Transferencia de Correo (MTA) - se da cuenta de qué servidor necesita recibir el correo electrónico y utiliza el Protocolo simple





de transferencia de correo (SMTP) para mover el correo electrónico a dicho servidor. No es inusual para un correo electrónico a tomar varios “saltos” para llegar a su destino final, ya que una organización puede tener varios MTA. Correo Delivery Agent (MDA , también llamado el Agente de entrega local) - se encarga de almacenar el correo electrónico en el buzón del usuario. Por lo general, se invoca desde el MTA final en la cadena. POP / IMAP del servidor - El Protocolo de oficina de correos y el Protocolo de acceso a mensajes de Internet son dos protocolos de comunicación que permiten a un cliente de correo electrónico que se ejecuta en su charla ordenador a un servidor remoto para recoger el correo electrónico.

El protocolo de intercambio de archivos nativo para UNIX se llama el sistema de archivos de red (NFS) . NFS es generalmente parte del núcleo que significa que un sistema de archivos remoto se puede montar como un disco normal, por lo que el acceso a archivos transparentes a otras aplicaciones.

2.2.2 Aplicaciones de escritorio El ecosistema Linux tiene una amplia variedad de aplicaciones de escritorio. Se pueden encontrar juegos, aplicaciones de productividad, herramientas creativas y mucho más. Esta sección es una mera encuesta de lo que hay, centrándose en lo que la LPI considere más importante. OpenOffice (a veces llamado OpenOffice.org) y LibreOffice ofrecen una suite de oficina completa, incluyendo una herramienta de dibujo que se esfuerza para la compatibilidad con Microsoft Office, tanto en términos de características y formatos de archivo. Para navegar por la web, los dos contendientes principales son Firefox y Google Chrome El proyecto Mozilla también ha salido con Thunderbird , un cliente de correo electrónico completa de escritorio ofrecido. Para los tipos creativos, hay Blender , Gimp , y Audacity que manejan la creación de la película en 3D, la manipulación de imágenes 2D y edición de audio, respectivamente. Ellos han tenido diversos grados de éxito en los mercados profesionales

2.2.3 Herramientas de consola La historia del desarrollo de UNIX muestra una considerable superposición entre las habilidades de desarrollo de software y sistemas de administración. Las herramientas que le permiten administrar el sistema tienen características de los lenguajes de programación tales como bucles, y algunos lenguajes de programación se utilizan ampliamente en la automatización de las

tareas de administración de sistemas. Por lo tanto, se debe considerar estas habilidades complementarias. Aquí, se muestra una interacción típica con el shell de Linux: sysadmin@localhost:~$ ls -l /tmp/*.gz -rw-r--r-- 1 sean root 246841 Mar 5 2013 /tmp/fdboot.img.gz sysadmin@localhost:~$ rm /tmp/fdboot.img.gz .img.gz

El usuario recibe un aviso, que por lo general termina en un signo de dólar $para indicar una cuenta sin privilegios. Cualquier cosa antes del mensaje, en este caso sysadmin@localhost:~, es un indicador configurable que proporciona información adicional para el usuario. En la figura anterior, sysadmin es el nombre del usuario actual, localhostes el nombre del servidor, y ~es el directorio actual (en UNIX, el símbolo tilde es una forma corta para el directorio personal del usuario). Vamos a ver los comandos de Linux con más detalle en otros capítulos, pero para terminar la explicación, los primeros archivos de comando lista con el comando ls, recibe alguna información sobre el archivo y, a continuación, elimina ese archivo con el comando rm. El shell de Linux proporciona un lenguaje rico para iterar sobre los archivos y personalizar el entorno, todo sin salir de la cáscara. Por ejemplo, es posible escribir una sola línea de comandos que se encuentra ficheros con contenidos coincidan con un patrón determinado, extrae información útil desde el archivo, copia la información nueva en un nuevo archivo. Linux ofrece una variedad de conchas para elegir, sobre todo difieren en cómo y qué se puede personalizar, y la sintaxis del lenguaje de programación incorporado. Las dos familias principales son el shell Bourne y el shell C .

2.4 Herramientas de desarrollo Linux en sí mismo fue escrito en un lenguaje compilado llamado principal beneficio de C. C es que los lenguajes mismos eran similares con el código de máquina generado por lo que un programador experto puede escribir código que es pequeño y eficiente. C se ha ampliado en los últimos años. No es C ++, lo que añade soporte de objetos a C (un estilo diferente de programación), y Objective C, que tuvo otra dirección y se encuentra en un uso intensivo de los productos de Apple. El lenguaje Java toma un giro diferente en el enfoque compilado. En lugar de compilar a código máquina, Java primera imagina una CPU hipotética llamada la Máquina Virtual Java (JVM) y compila todo el código a eso.

Perl es un lenguaje interpretado. Perl fue desarrollado originalmente para llevar a cabo la manipulación de texto. Con los años, se ganó el favor de los administradores de sistemas y todavía sigue mejorando y se utiliza en todo, desde la automatización para la construcción de aplicaciones web. PHP es un lenguaje que fue construido originalmente para crear páginas web dinámicas. Un archivo PHP es leída por un servidor web como Apache. etiquetas especiales en el archivo indican que partes del código deben ser interpretados como instrucciones. . Ruby es otro idioma que fue influenciado por Perl y Shell, junto con muchos otros idiomas. Esto hace que las tareas de programación complejas relativamente fácil, y con la inclusión del marco de Ruby on Rails, es una opción popular para la construcción de aplicaciones web complejas. Ruby es también la lengua que los poderes de muchas de las herramientas de automatización líderes como chef y de marionetas, que hacen que la gestión de un gran número de sistemas Linux mucho más fácil. Python es otro lenguaje de scripting que es de uso común. Al igual que Rubí se hace más fácil las tareas complejas y tiene un marco llamado Django que hace que las aplicaciones web de construcción muy fácil. Python tiene una gran capacidad de procesamiento estadístico y es uno de los favoritos en el mundo académico. OpenSSL es una biblioteca criptográfica que se utiliza en todo, desde los servidores de Internet para la línea de comandos. Se proporciona una interfaz estándar para que pueda añadir la criptografía dentro del script de Perl, por ejemplo.

2.3.1 La Free Software Foundation y la Open Source I La Free Software Foundation fue fundada en 1985 por Richard Stallman (RMS) . El objetivo de la FSF es promover el software libre. La FSF también aboga en contra de las patentes de software y actúa como guardián de las organizaciones de normalización La Open Source Initiative fue fundada en 1998 por Bruce Perens y Eric Raymond (ESR) OSI cree que no sólo debe ser de libre acceso de la fuente, pero también que no hay restricciones deben ser colocados en el uso del software no importa lo que el uso previsto. A diferencia de la FSF, el OSI no tiene su propio conjunto de licencias. En cambio, el OSI tiene un conjunto de principios y añade otras licencias a esa lista si cumplen con estos principios, llamados licencias de código abierto . Por lo tanto, el software que se ajusta a una licencia de código abierto es software de fuente abierta .

2.3.3 Otros sistemas de licencias 





 





Reconocimiento (CC BY) - al igual que la licencia BSD, puede utilizar CC BY contenido para cualquier uso, pero debe acreditar el propietario de los derechos Atribución Compartir Igual (CC BY-SA) - una versión copyleft de la licencia Atribución. Trabajos derivados deben ser compartidos bajo la misma licencia, al igual que en los ideales de Software Libre Reconocimiento-Sin Obras Derivadas (CC BY-ND) - se puede redistribuir el contenido en las mismas condiciones que las CC-BY pero no puede cambiarlo Reconocimiento-No comercial (CC BY-NC) - al igual que CC BY, pero no se puede usar con fines comerciales Reconocimiento-No comercial-Compartir bajo la misma (CC-BY-NCSA) - se basa en la CC BY-NC licencia, pero requiere que los cambios pueden compartir bajo la misma licencia. Reconocimiento-No comercial-Sin Obras Derivadas-(CC-BY-NCND) - Está compartiendo el contenido para ser utilizado con fines no comerciales, pero la gente no puede cambiar el contenido. Sin los derechos reservados (A0) - Esta es la versión idea de dominio público.

2.3.4 Modelos de Open Business Fuente Si le está dando su software de forma gratuita, ¿cómo se puede hacer dinero con él? La forma más sencilla de ganar dinero es vender soporte o garantía de todo el software. Usted puede ganar dinero mediante la instalación del software para la gente, ayudar a las personas cuando tienen problemas, o corregir errores por dinero. Usted es efectivamente un consultor. También puede cobrar por un servicio o suscripción que mejora el software. El proyecto grabador de vídeo digital de código abierto MythTV es un excelente ejemplo. El software es libre, pero se puede pagar para conectarlo a un servicio de listado de TV para saber qué hora determinados programas de televisión están encendidas.

Capítulo #3 3.2 gráfica frente al modo no gráfico Linux puede ser usado en una de dos maneras: de forma gráfica y no gráfica. En modo gráfico sus aplicaciones como en Windows que se puede cambiar el tamaño y mover alrededor. Tiene menús y herramientas para ayudar a encontrar lo que está buscando. Aquí es donde se va a utilizar un navegador web, sus herramientas de edición de gráficos, y su correo electrónico. Aquí vemos un ejemplo del gráfico de escritorio, con una barra de menús de las aplicaciones más populares a la izquierda y un documento de LibreOffice se está editando con un navegador web en el fondo.

En modo gráfico, puede tener varios proyectiles abierta, lo cual es muy útil cuando se está realizando tareas en varios equipos remotos. Incluso iniciar sesión con su nombre de usuario y contraseña a través de una interfaz gráfica. Un ejemplo de un inicio de sesión gráfico se muestra en la figura siguiente.

Después de iniciar la sesión, se le llevará al escritorio donde se puede cargar aplicaciones. el modo no gráfico comienza con un inicio de sesión basado en texto, que se muestra a continuación. Simplemente se le pide su nombre de usuario y después de eso, su contraseña.

En el modo no gráfico, no hay ventanas para moverse. A pesar de que usted tiene los editores de texto, navegadores web y clientes de correo electrónico, son solamente el texto. Esta es la forma en UNIX tiene su inicio antes de los entornos gráficos eran la norma. La mayoría de los servidores se ejecutan en este modo también, ya que las personas no inician sesión en ellas directamente, lo que hace que una interfaz gráfica de un desperdicio de recursos. He aquí un ejemplo de la pantalla se pueden ver después de iniciar sesión.

3.3 Línea de comandos La línea de comandos es una entrada de texto simple que le permite escribir cualquier cosa de comandos de una sola palabra a los scripts complicados. Si se conecta a través de modo de texto, que está inmediatamente en la consola. Si inicia la sesión en forma gráfica, a continuación, tendrá que lanzar una consola gráfica que es sólo una consola de texto con una ventana alrededor de ella para que pueda cambiar el tamaño y moverlo. Cada escritorio Linux es diferente, por lo que tendrá que buscar alrededor de los menús de una opción llamada ya sea el terminal o x plazo . Ambos son conchas gráficas, que difieren principalmente en las apariencias en lugar de la funcionalidad. Si usted tiene una herramienta de búsqueda como Ubuntu One, puede buscar a la terminal , como se muestra aquí.

Estas herramientas le permiten buscar rápidamente su sistema para exactamente lo que desea ejecutar en lugar de caza a través de los menús.

3.4 Virtualización y Cloud Computing Linux es un sistema operativo multiusuario , lo que significa que muchos usuarios diferentes pueden trabajar en el mismo sistema al mismo tiempo y en su mayor parte no pueden hacer cosas para dañar a otros usuarios. Sin embargo, esto tiene limitaciones - los usuarios pueden acaparar espacio en disco o tomar demasiados recursos de memoria o CPU y hacer que el sistema lento para todo el mundo. La virtualización es el proceso en el que un equipo físico, llamado el anfitrión , ejecuta múltiples copias de un sistema operativo, cada uno llama un invitado . El software se ejecuta anfitrionas llamado el hipervisor que permite cambiar el control entre los diferentes clientes al igual que el núcleo de Linux hace por procesos individuales. La virtualización ofrece una manera para que una empresa para reducir el consumo de energía y reducir el espacio de centro de datos a través de una flota de equivalente de servidores físicos. Los huéspedes son ahora tan sólo las configuraciones de software, por lo que es fácil de girar una nueva máquina para la prueba y destruirlo cuando su utilidad ha pasado.

3.5 Uso de Linux para el trabajo Las herramientas básicas utilizadas en la mayoría de las oficinas son:   

Procesador de textos Hoja de cálculo embalaje de presentación



navegador web

A continuación se muestra la hoja de cálculo y el editor de documentos de LibreOffice. Nótese cómo la hoja de cálculo, LibreOffice Calc, no se limita a las filas y columnas de números. El uso de LibreOffice Writer, un documento puede contener texto, gráficos, tablas de datos, y mucho más. Puede enlazar documentos y hojas de cálculo en conjunto, por ejemplo, por lo que se puede resumir los datos en forma escrita y saber que cualquier cambio en la hoja de cálculo se reflejarán en el documento.

LibreOffice también puede trabajar con otros formatos de archivo, tales como Adobe Reader.

3.6 Mantener su computadora segura de Linux Linux no le importa si usted está en el teclado de un ordenador o conexión a través de Internet, por lo que tendrá que tomar algunas precauciones básicas para asegurarse de que sus datos están a salvo y seguro. La cosa más fácil que usted puede hacer es utilizar una buena contraseña, único donde quiera que vaya, en especial en el equipo local. Una buena contraseña es de al menos 10 caracteres de longitud y contiene una mezcla de números, letras (tanto mayúsculas y minúsculas) y símbolos especiales. Utilizar un paquete como KeePassX para generar contraseñas y, después, sólo necesita tener una contraseña de acceso a su máquina y una contraseña para abrir el archivo de KeePassX.

Después de eso, hacer un punto de comprobación de actualizaciones periódicamente. Aquí, se muestra la configuración de actualización de software de Ubuntu, que está disponible en la configuración de menú.

Por último, tendrá que proteger su ordenador de aceptar conexiones entrantes. Un cortafuegos es un dispositivo que filtra el tráfico de red, y Linux tiene uno incorporado. Si está utilizando Ubuntu, entonces el Gufw es una interfaz gráfica de “cortafuegos sin complicaciones” de Ubuntu.

3.7 Cómo protegerse Como regla general, no se debe confiar en los sitios que interactúa. Utilizar contraseñas diferentes para cada sitio web de modo que si ese sitio web ha sido hackeado, la contraseña no se puede utilizar para obtener acceso a otros sitios. Usando KeePassX, se mencionó anteriormente, es la forma más fácil de hacer esto. También, limitar la información que proporcione a los sitios a sólo lo que se necesita. Al mismo tiempo que el apellido de soltera y fecha de nacimiento podría ayudar a revelar su información de acceso a la red social, si pierde la contraseña de su madre, la misma información se puede utilizar para hacerse pasar por usted a su banco. Las cookies son el mecanismo principal que sitios web utilizan para efectuar su seguimiento. A veces, este seguimiento es buena, como para realizar un seguimiento de lo que está en su carrito de compras o para mantenerlo conectado cuando regrese al sitio. Ajustar la configuración de privacidad puede hacerle más anónimo en el Internet, pero también puede causar problemas con algunos sitios que dependen de cookies de terceros. Si esto ocurre, puede que tenga que permitir explícitamente unas galletas para ser guardados.

Aquí también se le da la opción de olvidar la historia de búsqueda o de no registra en absoluto. Con el historial de búsqueda elimina, no habrá ningún registro de su equipo local de los sitios que ha visitado. Si está muy preocupado por estar en el anonimato en Internet, puede descargar y utilizar el Navegador Tor . Tor es la abreviatura de “The Onion Router”, que es una red de servidores administrados públicamente que rebotan alrededor de su tráfico de ocultar el origen. El navegador que viene con el paquete es una versión simplificada que ni siquiera ejecutar secuencias de comandos, por lo que algunos sitios no funcionen correctamente. Sin embargo, es la mejor manera de ocultar su identidad si desea hacerlo.

Capítulo #4

4.2 Command Line Interface (CLI) La interfaz de línea de comandos (CLI) , es una interfaz basada en texto a la computadora, donde el usuario teclea un comando y la computadora lo ejecuta. El entorno CLI es proporcionada por una aplicación en el ordenador conocido como terminal.

4.3 Acceso al terminal Hay muchas maneras de acceder a una ventana de terminal. Algunos sistemas arrancar directamente a un terminal. Esto es a menudo el caso de los servidores, como una interfaz gráfica de usuario (GUI) puede ser intensivo en recursos y no puede ser necesaria para realizar operaciones basadas en servidor. En los sistemas que arrancan a una interfaz gráfica de usuario, hay comúnmente dos formas de acceder a un terminal, un terminal basado en GUI y una terminal virtual: 

Un terminal GUI es un programa dentro del entorno de interfaz gráfica de usuario que emula una ventana de terminal. Terminales de interfaz gráfica de usuario se

puede acceder a través del sistema de menús. Por ejemplo, en una máquina de CentOS, puede hacer clic en Aplicaciones en la barra de menús, luego Herramientas del sistema> y, por último, la Terminal :



Un terminal virtual se puede ejecutar al mismo tiempo como una interfaz gráfica de usuario, pero requiere que el usuario ingrese a través de la terminal virtual antes de que puedan ejecutar comandos (como lo harían antes de acceder a la interfaz GUI). La mayoría de los sistemas tienen múltiples terminales virtuales que se puede acceder pulsando una combinación de teclas, por ejemplo: Ctrl-Alt-F1

4.3.1 Prompt Una ventana de terminal muestra un indicador; el símbolo aparece cuando no hay comandos se ejecutan y cuando todas las salidas de comando ha sido impresa a la pantalla. El indicador está diseñado para indicar al usuario que introduzca un comando. La estructura de la cual puede variar entre distribuciones, pero típicamente contendrá información sobre el usuario y el sistema. A continuación se muestra una estructura pronta común: sysadmin@localhost:~$

La pantalla anterior proporciona el nombre del usuario que se registra en ( sysadmin), el nombre del sistema ( localhost) y el directorio actual ( ~). El ~símbolo se utiliza como forma abreviada de directorio personal del usuario (normalmente el directorio inicial para el usuario está bajo el /homedirectorio y el nombre del nombre de cuenta de usuario, por ejemplo: /home/sysadmin).

4.3.2 Shell Una shell es el intérprete que traduce los comandos introducidos por un usuario en acciones a realizar por el sistema operativo. El entorno Linux ofrece muchos tipos diferentes de conchas, algunas de las cuales han existido durante muchos años. La shell más comúnmente utilizado para las distribuciones de Linux se llama el shell BASH. Es una shell que ofrece muchas características avanzadas, tales como el historial de comandos, que le permite fácilmente re-ejecutar comandos ejecutados previamente. El shell BASH también tiene otras funciones más populares: 

 

Scripting : La capacidad de colocar los comandos en un archivo y ejecutar el archivo, lo que resulta en todos los comandos que se ejecuta. Esta característica también tiene algunas características de programación, como declaraciones condicionales y la capacidad de crear funciones (AKA, subrutinas). Alias : la capacidad de crear "apodos" cortos para los comandos más largos. Variables : Las variables se utilizan para almacenar información para el shell BASH. Estas variables se pueden utilizar para modificar el funcionamiento de las funciones y propiedades, así como proporcionar información vital del sistema.

4.3.3 comandos de formato Muchos comandos se pueden usar por sí mismos sin ninguna entrada adicional. Algunos comandos requieren entrada adicional para funcionar correctamente. Esta entrada adicional se presenta en dos formas: opciones y argumentos . El formato típico de un comando es la siguiente: comando [opciones] [argumentos]

Opciones se utilizan para modificar el comportamiento del núcleo de un comando mientras que los argumentos se utilizan para proporcionar información adicional (tal como un nombre de archivo o un nombre de usuario). Cada opción y argumento es normalmente separados por un espacio, aunque las opciones a menudo se pueden combinar juntos. Tenga en cuenta que Linux es sensible a mayúsculas. Los comandos, opciones, argumentos, variables y nombres de archivo que deben introducirse exactamente como se muestra. El comando ls proporcionará ejemplos útiles. Por sí mismo, el comando ls mostrará una lista de los archivos y directorios contenidos en el directorio de trabajo actual: sysadmin@localhost:~$ ls Desktop Documents Downloads deos sysadmin@localhost:~$

Music

Pictures

Public

Templates

Vi

El comando ls se cubrirá con todo detalle en un capítulo posterior. El propósito de introducir este comando ahora es demostrar cómo funcionan los argumentos y opciones. En este punto, usted no debe preocuparse acerca de lo que es la salida del comando, sino más bien centrarse en la comprensión de lo que un argumento y es una opción. Un argumento también puede ser transmitida al comando ls para especificar el directorio para mostrar el contenido de. Por ejemplo, el comando de ls /etc/ppp la lista del contenido del directorio /etc/ppp en lugar del directorio actual: sysadmin@localhost:~$ ls /etc/ppp

ip-down.d ip-up.d sysadmin@localhost:~$

Dado que el comando ls aceptará múltiples argumentos, puede mostrar el contenido de varios directorios a la vez escribiendo el comando: ls /etc/ppp /etc/ssh sysadmin@localhost:~$ ls /etc/ppp /etc/ssh /etc/ppp: ip-down.d ip-up.d /etc/ssh: moduli ssh_host_dsa_key.pub hd_configssh_config ssh_host_ecdsa_key ssh_host_rsa_key.pub ssh_host_dsa_key ssh_host_ecdsa_key.pub sysadmin@localhost:~$

ssh_host_rsa_key

ss

ssh_import_id

4.3.4 Trabajando con opciones Las opciones se pueden utilizar con los comandos de ampliar o modificar la forma en que se comporta un comando. Las opciones son las cartas individuales a menudo; Sin embargo, a veces serán "palabras" también. Por lo general, los comandos mayores utilizan letras individuales mientras que los comandos nuevos usan palabras completas para las opciones. Opciones sola letra son precedidos por un único guión -. Opciones de palabra completa van precedidas de dos guiones --. Por ejemplo, puede utilizar la -l opción con el ls comando para mostrar más información acerca de los archivos que se enumeran. El ls -lcomando enumerará los archivos contenidos en el directorio actual y proporcionar información adicional, como los permisos, el tamaño del archivo y otra información: sysadmin@localhost:~$ ls -l total 0 drwxr-xr-x 1 sysadmin sysadmin drwxr-xr-x 1 sysadmin sysadmin drwxr-xr-x 1 sysadmin sysadmin drwxr-xr-x 1 sysadmin sysadmin drwxr-xr-x 1 sysadmin sysadmin drwxr-xr-x 1 sysadmin sysadmin drwxr-xr-x 1 sysadmin sysadmin drwxr-xr-x 1 sysadmin sysadmin sysadmin@localhost:~$

0 0 0 0 0 0 0 0

Jan Jan Jan Jan Jan Jan Jan Jan

29 29 29 29 29 29 29 29

2015 2015 2015 2015 2015 2015 2015 2015

Desktop Documents Downloads Music Pictures Public Templates Videos

En la mayoría de los casos, las opciones pueden ser usados en conjunción con otras opciones. Por ejemplo, el ls -l -ho ls -lhcomando mostrará una lista de archivos con los detalles, pero se mostrará en los tamaños de archivo legible formato en lugar del valor por defecto (bytes): sysadmin@localhost:~$ ls -l /usr/bin/perl -rwxr-xr-x 2 root root 10376 Feb 4 2014 /usr/bin/perl sysadmin@localhost:~$ ls -lh /usr/bin/perl -rwxr-xr-x 2 root root 11K Feb 4 2014 /usr/bin/perl sysadmin@localhost:~$

Tenga en cuenta que el ejemplo anterior también demostró cómo se pueden combinar las opciones de una sola letra: -lh . El orden de las opciones combinadas no es importante. La -h opción también tiene una forma-palabra completa: --human-readable.

Opciones menudo se pueden utilizar con un argumento. De hecho, algunas opciones requieren que sus propios argumentos. Puede utilizar las opciones y argumentos con el lscomando para listar el contenido de otro directorio mediante la ejecución del comando ls -l /etc/ppp: sysadmin@localhost:~$ ls -l /etc/ppp total 0 drwxr-xr-x 1 root root 10 Jan 29 2015 ip-down.d drwxr-xr-x 1 root root 10 Jan 29 2015 ip-up.d sysadmin@localhost:~$

4.4 Comando history Cuando se ejecuta un comando en un terminal, el comando se almacena en una "lista de la historia". Esto está diseñado para que sea fácil para que usted pueda ejecutar el mismo comando más tarde ya que no tendrá que volver a escribir todo el comando. Para ver la lista del historial de un terminal, utilice el comando: history sysadmin@localhost:~$ date Sun Nov 1 00:40:28 UTC 2015 sysadmin@localhost:~$ ls Desktop Documents Downloads Music Videos sysadmin@localhost:~$ cal 5 2015 May 2015 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 sysadmin@localhost:~$ history 1 date 2 ls 3 cal 5 2015 4 history sysadmin@localhost:~$

Pictures

Public

Templates

Al pulsar la flecha hacia arriba ↑ tecla se mostrará el comando anterior en su línea de mensajes. Puede pulsar repetidamente para mover hacia atrás a través de la historia de los comandos que se han ejecutado. Al presionar el Enter clave se ejecutará el comando que se muestra de nuevo. Cuando encuentre el comando que desea ejecutar, puede utilizar las flechas ← Izquierda teclas y flecha derecha → claves para posicionar el cursor de edición. Otras claves útiles para la edición incluyen el Inicio , Fin , Retroceso y Borrar teclas. Si ve un comando que desea ejecutar en la lista que la historygenera comandos, puede ejecutar este comando escribiendo un signo de exclamación y luego el número junto al comando, por ejemplo: sysadmin@localhost:~$ history 1 date 2 ls 3 cal 5 2015 4 history

sysadmin@localhost:~$ !3 cal 5 2015 May 2015 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 sysadmin@localhost:~$

Algunos otros ejemplos history:

Example

Meaning

history 5

Mostrar los últimos cinco comandos de la lista del historial

!!

Ejecutar el último comando de nuevo

!-5

Ejecutar el quinto comando desde el fondo de la lista del historial

!ls

Ejecutar el último comando ls

4.5 Presentación de variables de shell BASH Una variable de shell BASH es una característica que le permite o el Shell para almacenar datos. Estos datos se pueden utilizar para proporcionar información crítica del sistema o para cambiar el comportamiento de cómo el shell BASH (o otros comandos) de trabajo. Las variables se dan nombres y se almacenan temporalmente en la memoria. Al cerrar una ventana de terminal o de concha, todas las variables se pierden. Sin embargo, el sistema recrea automáticamente muchas de estas variables cuando se abre una nueva cáscara. Para mostrar el valor de una variable, puede utilizar el comando echo. El comando echo se utiliza para mostrar la salida en la terminal; En el siguiente ejemplo, el comando mostrará el valor de la variable HISTSIZE: sysadmin@localhost:~$ echo $HISTSIZE 1000 sysadmin@localhost:~$

La variable HISTSIZE define cuántos comandos anteriores para almacenar en la lista del historial. Para visualizar el valor de la variable, utilice un signo de dólar $carácter antes del nombre de la variable. Para modificar el valor de la variable, no se utiliza el $carácter: sysadmin@localhost:~$ HISTSIZE=500 sysadmin@localhost:~$ echo $HISTSIZE 500 sysadmin@localhost:~$

4.6 Variable PATH Una de las variables de shell BASH más importantes para entender es la variable PATH. El término trayectoria refiere a una lista que define los directorios que la cáscara se verá en los comandos. Si escribe en un comando y recibir "command not found" un error, es porque el BASH shell no ha podido localizar un comando con ese nombre en cualquiera de los directorios incluidos en la ruta. El siguiente comando muestra la ruta de la shell actual: sysadmin@localhost:~$ echo $PATH /home/sysadmin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/ sbin:/bin: /usr/games sysadmin@localhost:~$

Basándose en la salida de proceder, cuando se intenta ejecutar un comando, el shell buscará primero el comando en el directorio /usr/lib/qt-3.3/bin. Si no se encuentra el comando en ese directorio, a continuación, se ejecuta. Si no se encuentra, entonces el shell buscará en el directorio /usr/local/bin. Si no se encuentra el comando en cualquier directorio que aparece en la variable PATH, entonces usted recibirá un error: command not found sysadmin@localhost:~$ zed -bash: zed: command not found sysadmin@localhost:~$

Si software personalizado está instalado en su sistema, es posible que tenga que modificar el PATH para que sea más fácil de ejecutar estos comandos. Por ejemplo, lo siguiente será añadir el directorio /usr/bin/custom a la variable PATH: sysadmin@localhost:~$ PATH=/usr/bin/custom:$PATH sysadmin@localhost:~$ echo $PATH /usr/bin/custom:/home/sysadmin/bin:/usr/local/sbin:/usr/local/bin:/usr /sbin:/usr/bin:/sbin:/bin:/usr/games sysadmin@localhost:~$

4.7 Comando Export Hay dos tipos de variables utilizadas en el shell BASH, local y medio ambiente. Las variables de entorno, como por ejemplo PATH y HOME, son utilizados por BASH la hora de interpretar los comandos y la realización de tareas. Las variables locales son a menudo asociados con tareas basadas en el usuario y se escriben en minúscula por convención. Para crear una variable local, simplemente escribe: sysadmin@localhost:~$ variable1='Something'

Para ver el contenido de la variable, se refieren a ella con un líder de $signo: sysadmin@localhost:~$ echo $variable1 Something

Para ver las variables de entorno, utilice el comando env (buscando a través de la salida usando grep, como se muestra aquí, será discutido en capítulos posteriores). En este caso, la búsqueda de variable1 en las variables de entorno da lugar a ninguna salida:

sysadmin@localhost:~$ env | grep variable1 sysadmin@localhost:~$

Después de exportar variable1, ahora es una variable de entorno. Observe que esta vez, se encuentra en la búsqueda a través de las variables de entorno: sysadmin@localhost:~$ export variable1 sysadmin@localhost:~$ env | grep variable1 variable1=Something

El comando export también se puede utilizar para hacer una variable de entorno a partir de su creación. sysadmin@localhost:~$ export variable2='Else' sysadmin@localhost:~$ env | grep variable2 variable2=Else

Para cambiar el valor de una variable de entorno, simplemente omitir el $al hacer referencia a ella: sysadmin@localhost:~$ variable1=$variable1' '$variable2 sysadmin@localhost:~$ echo $variable1 Something Else

Variables exportadas se pueden eliminar con el comando unset: sysadmin@localhost:~$ unset $variable2

4.8 Comando Which Puede haber situaciones en las que están instaladas diferentes versiones de un mismo comando en un sistema o cuando los comandos son accesibles para algunos usuarios y no otros. Si un comando no se comporta como se esperaba o si un comando no es accesible que debería ser, puede ser beneficioso para saber dónde está la cáscara es encontrar el comando o la versión que está utilizando. Sería tedioso tener que buscar manualmente en cada directorio que se muestra en la variable PATH. En su lugar, puede utilizar el comando which para mostrar la ruta completa del comando en cuestión: sysadmin@localhost:~$ which date /bin/date sysadmin@localhost:~$ which cal /usr/bin/cal sysadmin@localhost:~$ El comando which busca la ubicación de una orden de búsqueda de la variable PATH.

4.9 Comando type El comando type se puede utilizar para determinar la información acerca de varios comandos. Algunos comandos se originan a partir de un archivo específico: sysadmin@localhost:~$ type which which is hashed (/usr/bin/which)

Esta salida sería similar a la salida del comando which (como se discutió en la sección anterior, que muestra la ruta completa del comando): sysadmin@localhost:~$ which which /usr/bin/which

El comando type también puede identificar los comandos que se construyen en el bash (u otro) shell: sysadmin@localhost:~$ type echo echo is a shell builtin

En este caso, la salida es significativamente diferente de la salida del comando which: sysadmin@localhost:~$ which echo /bin/echo

El uso de la opción -a, el comando type también puede revelar el camino de otro comando: sysadmin@localhost:~$ type -a echo echo is a shell builtin echo is /bin/echo

El comando type también puede identificar alias a otros comandos: sysadmin@localhost:~$ type ll ll is aliased to `ls -alF' sysadmin@localhost:~$ type ls ls is aliased to `ls --color=auto'

La salida de estos comandos indican que ll es un alias para ls -alF, e incluso ls es un alias para ls --color=auto. Una vez más, la salida es significativamente diferente del comando which: sysadmin@localhost:~$ which ll sysadmin@localhost:~$ which ls /bin/ls

El comando type admite otras opciones, y puede buscar múltiples comandos simultáneamente. Para mostrar sólo una única palabra que describe las los comandos echo, lly which, utilice la opción –t: sysadmin@localhost:~$ type -t echo ll which builtin alias file

4.10 Aliases Un alias puede ser utilizado para mapear los comandos más largos a cortas secuencias de teclas. Cuando la cáscara ve un alias siendo ejecutado, se sustituye la secuencia más larga antes de proceder a interpretar comandos.

Por ejemplo, el comando ls –l es alias comúnmente lo ll. Debido a que estos comandos más pequeños son más fáciles de escribir, se hace más rápido para ejecutar la línea de comandos ls -l. Puede determinar qué alias se encuentra en su shell con el comando alias: sysadmin@localhost:~$ alias alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l='ls -CF' alias la='ls -A' alias ll='ls -alF' alias ls='ls --color=auto'

Los alias que ver en los ejemplos anteriores fueron creados por los archivos de inicialización. Estos archivos están diseñados para hacer que el proceso de creación de alias automático y se discutirán con más detalle en un capítulo posterior. Nuevos alias pueden crearse al escribir alias name=command donde nombre es el nombre que desea dar el alias y el comando es el comando que desea que se ejecuta cuando se ejecuta el alias. Por ejemplo, puede crear un alias de manera que lh muestra una larga lista de archivos, ordenados por tamaño con un tamaño "humano amigable" con el alias lh='ls -Shl' de comandos. Escribiendo lh ahora debe dar lugar a la misma salida que escribiendo el comando: ls –Shl

sysadmin@localhost:~$ alias lh='ls -Shl' sysadmin@localhost:~$ lh /etc/ppp total 0 drwxr-xr-x 1 root root 10 Jan 29 2015 ip-down.d drwxr-xr-x 1 root root 10 Jan 29 2015 ip-up.d

Los alias creados de esta manera sólo persistirán mientras que la cáscara está abierta. Una vez que la carcasa está cerrada, se perderán los nuevos alias que ha creado.

4.11.1 El asterisco (*) El asterisco se utiliza para representar cero o más de cualquier carácter en un nombre de archivo. Por ejemplo, supongamos que desea mostrar todos los archivos en el directorio /etc que comienzan con la letra t: sysadmin@localhost:~$ echo /etc/t* /etc/terminfo /etc/timezone sysadmin@localhost:~$

El patrón t*significa "coincide con ningún archivo que comienza con el carácter t y tiene cero o más de cualquier carácter después de la t". Usted puede utilizar el carácter asterisco en cualquier lugar dentro del patrón de nombre de archivo. Por ejemplo, la siguiente coincidirá con cualquier nombre de archivo en el directorio /etc que termina con .d: sysadmin@localhost:~$ echo /etc/*.d

/etc/apparmor.d /etc/bash_completion.d /etc/cron.d /etc/depmod.d /e tc/fstab.d /etc/init.d /etc/insserv.conf.d /etc/ld.so.conf.d /etc/logr otate.d /etc/modprobe.d /etc/pam.d /etc/profile.d /etc/rc0.d /etc/rc1. d /etc/rc2.d /etc/rc3.d /etc/rc4.d /etc/rc5.d /etc/rc6.d /etc/rcS.d /e tc/rsyslog.d /etc/sudoers.d /etc/sysctl.d /etc/update-motd.d

En el siguiente ejemplo, todos los archivos en el directorio /etc que comienzan con la letra r y al final con el .confque aparecerá: sysadmin@localhost:~$ echo /etc/r*.conf /etc/resolv.conf /etc/rsyslog.conf

4.11.2 signo de interrogación(?) The question mark represents any one character. Each question mark character matches exactly one character, no more and no less. Suppose you want to display all of the files in the /etc directory that begin with the letter t and have exactly 7 characters after the t character: sysadmin@localhost:~$ echo /etc/t??????? /etc/terminfo /etc/timezone sysadmin@localhost:~$

Glob characters can be used together to find even more complex patterns. The echo /etc/*???????????????????? command will print only files in the /etc directory with twenty or more characters in the filename: sysadmin@localhost:~$ echo /etc/*???????????????????? /etc/bindresvport.blacklist /etc/ca-certificates.conf sysadmin@localhost:~$

The asterisk and question mark could also be used together to look for files with three-letter extensions by running the echo /etc/*.??? command: sysadmin@localhost:~$ echo /etc/*.??? /etc/blkid.tab /etc/issue.net sysadmin@localhost:~$

4.11.3 Los corchetes [] Los corchetes se utilizan para que coincida con un solo carácter mediante la representación de una serie de personajes que son posibles caracteres partidos. Por ejemplo, echo /etc/[gu]*se imprimirá ningún archivo que comienza ya sea con una go ucarácter y contiene cero o más caracteres adicionales: sysadmin@localhost:~$

echo /etc/[gu]* /etc/gai.conf /etc/groff /etc/group /etc/group- /etc/gshadow /etc/gsha dow- /etc/ucf.conf /etc/udev /etc/ufw /etc/update-motd.d /etc/updatedb .conf

sysadmin@localhost:~$

Los corchetes también se pueden utilizar para representar un rango de caracteres. Por ejemplo, el comando echo /etc/[a-d]* imprimirá todos los archivos que comienzan con una letra incluyendo a y d: sysadmin@localhost:~$ echo /etc/[a-d]* /etc/adduser.conf /etc/adjtime /etc/alternatives /etc/apparmor.d /etc/apt /etc/bash.bashrc /etc/bash_completion.d /etc/bind /etc/bindre svport.blacklist /etc/blkid.conf /etc/blkid.tab /etc/ca-certificates / etc/ca-certificates.conf /etc/calendar /etc/cron.d /etc/cron.daily /et c/cron.hourly /etc/cron.monthly /etc/cron.weekly /etc/crontab /etc/dbu s-1 /etc/debconf.conf /etc/debian_version /etc/default /etc/deluser.conf /etc/depmod.d /etc/dpkg sysadmin@localhost:~$

El comando echo /etc/*[0-9]* sería para mostrar cualquier archivo que contiene al menos un número: sysadmin@localhost:~$ echo /etc/*[0-9]* /etc/dbus-1 /etc/iproute2 /etc/mke2fs.conf /etc/python2.7 /etc/rc0.d /etc/rc1.d /etc/rc2.d /etc/rc3.d /etc/rc4.d /etc/rc5.d /etc/rc6.d sysadmin@localhost:~$

La gama se basa en la tabla de texto ASCII. Esta tabla define una lista de caracteres, disponerlos en un orden estándar específico. Si proporciona una orden válida, no se hará ningún partido sysadmin@localhost:~$ echo /etc/*[9-0]* /etc/*[9-0]* sysadmin@localhost:~$

4.12.1 Double Quotes Las comillas dobles detener la cáscara de la interpretación de algunos meta-caracteres, incluyendo caracteres globales. Entre comillas dobles un asterisco es sólo un asterisco, un signo de interrogación es sólo un signo de interrogación, y así sucesivamente. Esto significa que cuando se utiliza el segundo comando echo a continuación, el shell Bash no convierte el patrón global en los nombres de archivos que coinciden con el patrón: sysadmin@localhost:~$ echo /etc/[DP]* /etc/DIR_COLORS /etc/DIR_COLORS.256color /etc/DIR_COLORS.lightbgcolor /etc/PackageKit sysadmin@localhost:~$ echo "/etc/[DP]*" /etc/[DP]* sysadmin@localhost:~$

Esto es útil cuando se desea mostrar algo en la pantalla que es normalmente un carácter especial para el shell:

sysadmin@localhost:~$ echo "The glob characters are *, ? and [ ]" The glob characters are *, ? and [ ] sysadmin@localhost:~$

Las comillas dobles todavía permiten la sustitución de comandos (discutido más adelante en este capítulo), la sustitución de variables y permiten algunos otros metas caracteres de shell que no se han discutido aún. Por ejemplo, en la siguiente demostración, se puede observar que el valor PATH aparece la variable: sysadmin@localhost:~$ echo "The path is $PATH" The path is /usr/bin/custom:/home/sysadmin/bin:/usr/local/sbin:/usr/local/bin: /usr/sbin:/usr/bin:/sbin:/bin:/usr/games sysadmin@localhost:~$

4.12.2 comillas simples Las comillas simples evitar que el shell de hacer cualquier interpretación de caracteres especiales. Esto incluye globos, variables, la sustitución de comandos y otros metacarácter que no se han discutido todavía. Por ejemplo, si desea que el $carácter en el sentido de una simple $, en lugar de lo que actúa como un indicador de la shell para buscar el valor de una variable, se puede ejecutar el segundo comando muestra a continuación: sysadmin@localhost:~$ echo The car costs $100 The car costs 00 sysadmin@localhost:~$ echo 'The car costs $100' The car costs $100 sysadmin@localhost:~$

4.12.3 Caracter Backslash (\) Se puede utilizar una técnica alternativa a esencialmente único citar un solo carácter. Por ejemplo, supongamos que desea imprimir el siguiente: “ The services costs $100 and the path is $PATH." Si se coloca esta entre comillas dobles, $1y $PATH. Se consideran las variables Si se coloca esta entre comillas simples, $1y $PATH. Si se coloca una barra invertida \carácter delante de otro carácter, que trata a otro carácter como un carácter "único citado". El tercer comando de abajo muestra cómo utilizar el\personaje, mientras que los otros dos demuestran cómo serían tratadas las variables entre comillas dobles e individuales: sysadmin@localhost:~$ echo "The service costs $100 and the path is $PATH" The service costs 00 and the path is /usr/bin/custom:/home/sysadmin/bin:/usr/l ocal/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games sysadmin@localhost:~$ echo 'The service costs $100 and the path is $PATH' The service costs $100 and the path is $PATH sysadmin@localhost:~$ echo The service costs \$100 and the path is $PATH The service costs $100 and the path is /usr/bin/custom:/home/sysadmin/bin:/usr /local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games sysadmin@localhost:~$

4.12.4 Back Quotes Back quotes se utilizan para especificar un comando dentro de un comando, un proceso llamado sustitución de comandos. Esto permite un uso muy potente y sofisticada de comandos. Si bien puede sonar confuso, un ejemplo debe hacer las cosas más claras. Para empezar, tenga en cuenta la salida del comando date: sysadmin@localhost:~$ date

La salida del commando echo Today is date: sysadmin@localhost:~$ echo Today is date Today is date sysadmin@localhost:~$

En el comando anterior de la palabra date se trata como texto normal y la shell simplemente pasa date a la orden echo. Sin embargo, es probable que desee ejecutar el comando date y tienen la salida de ese comando enviado al comando echo. Para lograr esto, debe ejecutar la línea de comandos: echo Today is `date` sysadmin@localhost:~$ echo Today is `date` Today is Mon Nov 2 03:40:04 UTC 2015 sysadmin@localhost:~$

4.13.1 Punto y coma El punto y coma se puede utilizar para ejecutar varios comandos, uno tras otro. Cada comando se ejecuta de forma independiente y de forma consecutiva; sin importar el resultado de la primera orden, el segundo se ejecutará una vez que el primero ha completado, entonces el tercero y así sucesivamente. Por ejemplo, si desea imprimir los meses de enero, febrero y marzo de 2015, se puede ejecutar cal 1 2015; cal 2 2015; cal 3 2015 en la línea de comandos:

sysadmin@localhost:~$ cal 1 2015; cal 2 2015; cal 3 2015 January 2015 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 February 2015 Su Mo Tu We Th Fr 1 2 3 4 5 6 8 9 10 11 12 13 15 16 17 18 19 20 22 23 24 25 26 27 Su 1 8 15 22 29

March 2015 Mo Tu We Th Fr 2 3 4 5 6 9 10 11 12 13 16 17 18 19 20 23 24 25 26 27 30 31

Sa 7 14 21 28 Sa 7 14 21 28

4.13.2 Doble Ampersand (&&) Los doble ampersand && actúa como un "and" lógico si el primer comando es correcto, entonces el segundo comando (a la derecha de la &&) también se ejecutará. Si el primer comando falla, entonces el segundo comando no se ejecutará. Para entender mejor cómo funciona esto, considerar en primer lugar el concepto de fracaso y el éxito para los comandos. Los comandos tienen éxito cuando funcionan correctamente y fallan cuando algo va mal. Por ejemplo, considere la línea de comandos ls /etc/xml. El comando tendrá éxito si el directorio /etc/xml es accesible y fallar si no lo es. Por ejemplo, el primer comando tendrá éxito debido a que el directorio /etc/xml existe y es accesible mientras que el segundo comando fallará porque no hay directorio /junk: sysadmin@localhost:~$ ls /etc/xml catalog catalog.old xml-core.xml xml-core.xml.old sysadmin@localhost:~$ ls /etc/junk ls: cannot access /etc/junk: No such file or directory sysadmin@localhost:~$

La forma en que lo haría con el éxito o el fracaso del comando ls en conjunción con &&sería para ejecutar una línea de comando como el siguiente: sysadmin@localhost:~$ ls /etc/xml && echo success catalog catalog.old xml-core.xml xml-core.xml.old success sysadmin@localhost:~$ ls /etc/junk && echo success ls: cannot access /etc/junk: No such file or directory sysadmin@localhost:~$

En el primer ejemplo anterior, el comando echo ejecutado debido a que el comando ls tuvo éxito. En el segundo ejemplo, el comando echo no se ejecutó debido a que el comando ls ha fallado.

4.13.3 Doble tubo El tubo doble ||es un lógico "o". Funciona de manera similar a &&; dependiendo del resultado de la primera orden, el segundo comando correrá o se omiten. Con la barra doble, si el primer comando se ejecuta correctamente, el segundo comando se omite; si falla el primer comando, a continuación, se llevará a cabo el segundo comando. En otras palabras, le está diciendo esencialmente la cáscara, "Cualquiera de ejecutar este comando primero o el segundo”. En el siguiente ejemplo, el comando echo sólo se ejecutará si ls falla: sysadmin@localhost:~$ ls /etc/xml || echo failed catalog catalog.old xml-core.xml xml-core.xml.old sysadmin@localhost:~$ ls /etc/junk || echo failed ls: cannot access /etc/junk: No such file or directory failed sysadmin@localhost:~$

Capítulo #5

5.2.1 Visualización man pages Para visualizer una man page debe executar el comano man command en la linea de commandos de windows. Por ejemplo el commando man cal mostrará la man page para el comando cal:

CAL(1)

BSD General Commands Manual

CAL(1)

NAME cal, ncal -- displays a calendar and the date of Easter SYNOPSIS cal [-3hjy] [-A number] [-B number] [[month] year] cal [-3hj] [-A number] [-B number] -m month [year] ncal [-3bhjJpwySM] [-A number] [-B number] [-s country_code] [[month] year] ncal [-3bhJeoSM] [-A number] [-B number] [year] ncal [-CN] [-H yyyy-mm-dd] [-d yyyy-mm] DESCRIPTION The cal utility displays a simple calendar in traditional format and nc al offers an alternative layout, more options and the date of Easter. The new format is a little cramped but it makes a year fit on a 25x80 ter minal. If arguments are not specified, the current month is displayed. The options are as follows: Turns off highlighting of today.

-h

Manual page cal(1) line 1 (press h for help or q to quit)

5.2.2 Controlando la vista the man Page El comando man utiliza un "localizador" para mostrar los documentos. Normalmente este localizador es el comando less, pero en algunas distribuciones puede ser el comando more. Ambos son muy similares en la forma en que realizan y se discutirá con más detalle en un capítulo posterior. Si desea ver los distintos comandos de movimiento que están disponibles, puede escribir la letra h mientras se visualiza una página de manual. Esto mostrará una página de ayuda: SUMMARY OF LESS COMMANDS Commands marked with * may be preceded by a number, N. Notes in parentheses indicate the behavior if N is given. A key preceded by a caret indicates the Ctrl key; thus ^K is ctrl-K. h H Display this help. q :q Q :Q ZZ Exit. -----------------------------------------------------------------------

MOVING e y f b z w

^E ^Y ^F ^B

j ^N CR k ^K ^P ^V SPACE ESC-v

* * * * * *

Forward Backward Forward Backward Forward Backward

one one one one one one

line line window window window window

(or N lines). (or N lines). (or N lines). (or N lines). (and set window to N). (and set window to N).

ESC-SPACE * e. d ^D * N) u ^U * N) ESC-) RightArrow * HELP -- Press RETURN

Forward

one window, but don't stop at end-of-fil

Forward

one half-window (and set half-window to

Backward one half-window (and set half-window to Left one half screen width (or N positions). for more, or q when done

Si su distribución utiliza el comando less, usted podría ser un poco abrumado con la gran cantidad de "comandos" que están disponibles. La siguiente tabla ofrece un resumen de los comandos más útiles: Command

Function

Return (or Enter)

Go down one line

Space

Go down one page

/term

Search for term

n

Find next search item

1G

Go to beginning

G

Go to end

h

Display help

q

Quit man page

5.2.3 Secciones de la man Page Las man Page se dividen en secciones. Cada sección está diseñada para proporcionar información específica acerca de un comando. Si bien hay secciones comunes que se pueden ver en la mayoría de las páginas de manual, algunos desarrolladores también crean secciones que sólo se pueden ver en una página específica del hombre. En la siguiente tabla se describen algunas de las secciones más comunes que se encuentran en las páginas de manual:

Nombre de la sección

Propósito

NOMBRE

Proporciona el nombre del comando y una descripción muy breve.

SINOPSIS

Proporciona ejemplos de cómo se ejecuta el comando. Vea abajo para más información.

DESCRIPCIÓN

Proporciona una descripción más detallada del comando.

Nombre de la sección

Propósito

OPCIONES

Lista las opciones del comando, así como una descripción de cómo se utilizan. A menudo, esta información se puede encontrar en la DESCRIPTIONsección y no en una separada OPTIONSsección.

ARCHIVOS

Muestra una lista de los archivos que están asociados con el comando, así como una descripción de cómo se utilizan. Estos archivos se pueden utilizar para configurar las funciones más avanzadas del comando. A menudo, esta información se puede encontrar en la DESCRIPTIONsección y no en una separada OPTIONSsección.

AUTOR

El nombre de la persona que creó la página del manual y cómo comunicarse con la persona (a veces).

Información sobre errores

Proporciona detalles sobre cómo informar de problemas con el comando.

DERECHOS DE AUTOR

Proporciona información básica de derechos de autor.

VER TAMBIÉN

Le proporciona una idea de donde se puede encontrar información adicional. Esta frecuencia también incluirá otros comandos que están relacionados con este comando.

5.2.4 man Page SYNOPSIS La sección SYNOPSIS de una Man Page puede ser difícil de entender, pero es muy importante, ya que proporciona un ejemplo conciso de cómo utilizar el comando. Por ejemplo, considere el comando cal para la sección SYNOPSIS de una Man Page: SYNOPSIS cal [-3hjy] [-A number] [-B number] [[[day] month] year]

Los corchetes [ ] se utilizan para indicar que esta función no es necesario para ejecutar el comando. Por ejemplo, [-3hjy]significa que puede utilizar las opciones -h, -j, y, 1o 3, pero ninguna de estas opciones es necesaria para el comando cal para funcionar correctamente. El segundo conjunto de corchetes en el comando cal SYNOPSIS( [[[day] month] year]) demuestra otra característica; que significa que se puede especificar un año por sí mismo, pero si se especifica un mes también debe especificar un año. Además, si se especifica un día, entonces también es necesario especificar un mes y un año. Otro componente de la SYNOPSIS que podría causar cierta confusión puede ser visto en el SYNOPSIS del comando date: SYNOPSIS date [OPTION]... [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

En este SYNOPSIS hay dos sintaxis para el comando date. El primero se utiliza para mostrar la fecha en el sistema, mientras que la segunda se utiliza para ajustar la fecha.

5.2.5 Buscar en un man Page Con el fin de buscar una página del manual de un término, pulse el /y escriba el término seguido por el Introduzca la clave. El programa buscará desde la ubicación actual hacia abajo hacia la parte inferior de la página para tratar de localizar y resaltar el término. Si no se encuentra el término, o si se ha llegado al final de los partidos, entonces el programa le informará Pattern not found (press Return). Si se encuentra una coincidencia y que desea pasar a la siguiente coincidencia de la palabra, de prensa n . Para volver a un partido anterior del término, pulse N .

5.2.6 Man Pages clasificadas por secciones Cuando se utiliza el comando man, se busca en cada una de estas secciones con el fin hasta que encuentra el primer "match". Por ejemplo, si se ejecuta el comando man cal, la primera sección (programas ejecutables o comandos shell) se busca en una página hombre llamado cal. Si no lo encuentra, entonces la segunda sección se busca. Si ningún hombre la página se encuentra después de buscar todas las secciones, recibirá un mensaje de error: sysadmin@localhost:~$ man zed No manual entry for zed sysadmin@localhost:~$

5.2.6.1 Determinando una sección Para determinar qué sección de una página específica pertenece a una Man Page, mirar el valor numérico de la primera línea de la salida de la página de manual. Por ejemplo, si se ejecuta el comando man cal, verá que el comando cal pertenece a la primera sección de páginas man: CAL(1)

BSD General Commands Manual

CAL(1)

5.2.6.2 Especificación de una Sección En algunos casos, tendrá que especificar la sección con el fin de mostrar la página hombre correcto. Esto es necesario porque a veces no habrá páginas man con el mismo nombre en diferentes secciones. Por ejemplo, hay un comando llamado passwd que le permite cambiar su contraseña. También hay un archivo llamado passwd que almacena información de cuenta. Tanto el comando y el archivo tienen una página de manual. El comando passwd es un comando de "usuario", por lo que el comando man passwd se mostrará la página del manual para el comando passwd por defecto:

PASSWD(1)

User Commands

PASSWD(1)

Para especificar una sección diferente, proporcionar el número de la sección como primer argumento del comando. Por ejemplo, el comando man 5 passwd buscará passwd de la man page justo en la sección 5:

PASSWD(5)

File Formats and Conversions

PASSWD(5)

5.2.6.3 Searching Sections A veces no es claro qué sección de una página de manual se almacena en. En casos como este, puede buscar una página de hombre por el nombre. La opción –f para el comando man mostrará páginas man que responden, o parcialmente coincidir, un nombre específico y proporcionar una breve descripción de cada página del manual: sysadmin@localhost:~$ passwd (5) passwd (1) passwd (1ssl) sysadmin@localhost:~$

man -f passwd the password file change user password compute password hashes

Tenga en cuenta que en la mayoría de las distribuciones de Linux, el comando whatis hace lo mismo que man -f. en esas distribuciones, tanto producirá la misma salida.

5.2.7 Busqueda de man Pages por palabras claves Por desgracia, no siempre va a recordar el nombre exacto de la página del manual que desea ver. En estos casos se puede buscar páginas man que coinciden con una palabra clave mediante el uso de la opción –k para el comando man. Por ejemplo, ¿qué pasa si usted sabía que quería una página de manual que muestra cómo cambiar su contraseña, pero que no recuerda el nombre exacto? Podría ejecutar el comando man -k password: sysadmin@localhost:~$ man -k passwd chgpasswd (8) - update group passwords in batch mode chpasswd (8) - update passwords in batch mode fgetpwent_r (3) - get passwd file entry reentrantly getpwent_r (3) - get passwd file entry reentrantly gpasswd (1) - administer /etc/group and /etc/gshadow pam_localuser (8) - require users to be listed in /etc/passwd passwd (1) - change user password passwd (1ssl) - compute password hashes passwd (5) - the password file passwd2des (3) - RFS password encryption update-passwd (8) - safely update /etc/passwd, /etc/shadow and /etc /group sysadmin@localhost:~$

5.3.1 Visualización de la información de documentación para un comando Para mostrar la documentación de información para un comando, ejecutar (sustituir con el nombre del comando que usted está buscando información acerca). Por ejemplo, la siguiente muestra la salida del comando :info ls File: coreutils.info, to\ry listing

Node: ls invocation,

Next: dir invocation,

Up: Direc

10.1 `ls': List directory contents ================================== The `ls' program lists information about files (of any type, including dir ectories). Options and file arguments can be intermixed arbitrarily, as usual . For non-option command-line arguments that are directories, by default `ls' lists the contents of directories, not recursively, and omitting files with names beginning with `.'. For other non-option arguments, by default `ls' lists just the file name. If no non-option argument is specified, `ls' operates on the current directory, acting as if it had been invoked with a single argument of `.'. By default, the output is sorted alphabetically, according to the locale settings in effect.(1) If standard output is a terminal, the output is in columns (sorted vertically) and control characters are output as question marks; otherwise, the output is listed one per line and control characters are output as-is. --zz-Info: (coreutils.info.gz)ls invocation, 58 lines --Top------------Welcome to Info version 5.2. Type h for help, m for menu item.

5.3.2 Desplazamiento Cuando esté viendo la información del documento Al igual que el comando man, se puede obtener una lista de los comandos de movimiento escribiendo la letra h mientras se lee la documentación de información: Basic Info command keys l

Close this help window.

q

Quit Info altogether.

H

Invoke the Info tutorial.

Up

Move up one line.

Down

Move down one line.

DEL

Scroll backward one screenful.

SPC

Scroll forward one screenful.

Home

Go to the beginning of this node.

End

Go to the end of this node.

TAB

Skip to the next hypertext link.

RET

Follow the hypertext link under the cursor.

l

Go back to the last node seen in this window.

[

Go to the previous node in the document.

]

Go to the next node in the document.

p

Go to the previous node on this level.

n

Go to the next node on this level.

u

Go up one level.

-----Info: *Info Help*, 466 lines --Top---------------------------------

Tenga en cuenta que si desea cerrar la pantalla de ayuda, escribe la letra l . Esto le lleva de nuevo a su documento y le permite continuar con la lectura. Para dejar de fumar por completo, escribe la letra q. La siguiente tabla ofrece un resumen de los comandos útiles:

Command

Function

Down arrow ↓

Go down one line

Space

Go down one page

s

Search for term

[

Go to previous node

]

Go to next node

u

Go up one level

TAB

Skip to next hyperlink

HOME

Go to beginning

END

Go to end

h

Display help

L

Quit help page

q

Quit info command

Si se desplaza a través del documento, es muy probable que vea el menú para el comando ls: * Menu: * * * * * * *

Which files are listed:: What information is listed:: Sorting the output:: Details about version sort:: General output formatting:: Formatting file timestamps:: Formatting the file names:: ---------- Footnotes ----------

(1) If you use a non-POSIX locale (e.g., by setting `LC_ALL' to `en_US'), then `ls' may produce output that is sorted differently than you're accustomed to. In that case, set the `LC_ALL' environment variable to `C'. --zz-Info: (coreutils.info.gz)ls invocation, 58 lines --Top------------

Los elementos en el menú son hipervínculos que lo pueden llevar a los nodos que describen más información sobre el comando ls. Por ejemplo, si coloca el cursor en la línea " * Sorting the output::" y presionó el Introduzca clave, que le llevará a un nodo que describe la clasificación de la salida del comando ls: File: coreutils.info, Node: Sorting the output, Next: Details about version s\ort, Prev: What information is listed, Up: ls invocation 10.1.3 Sorting the output ------------------------These options change the order in which `ls' sorts the information it outputs. By default, sorting is done by character code (e.g., ASCII order). `-c' `--time=ctime' `--time=status' If the long listing format (e.g., `-l', `-o') is being used, print the status change time (the `ctime' in the inode) instead of the modification time. When explicitly sorting by time (`--sort=time' or `-t') or when not using a long listing format, sort according to the status change time. `-f' Primarily, like `-U'--do not sort; list the files in whatever order they are stored in the directory. But also enable `-a' (lis --zz-Info: (coreutils.info.gz)Sorting the output, 68 lines --Top--------

Tenga en cuenta que al entrar en el nodo sobre la clasificación, se fue esencialmente en un sub-nodo de la una en la que ha iniciado originalmente. Para volver a su nodo anterior, puede utilizar la U llave. Mientras que u le llevará al inicio del nodo en un nivel superior, también se puede utilizar el l clave para que volver exactamente a la ubicación anterior que eras antes de entrar en el nodo de clasificación.

5.3.3 Exploración de información Documentación En lugar de utilizar la documentación de información para buscar información acerca de un comando o función específicos, considerar la exploración de las capacidades de Linux mediante la lectura a través de la documentación de información. Si se ejecuta el comando info sin argumentos, se le lleva al nivel superior de la documentación. Desde allí se puede explorar las muchas características:

File: dir, Node: Top This is the top of the INFO tree This (the Directory node) gives a menu of major topics. Typing "q" exits, "?" lists all Info commands, "d" returns here, "h" gives a primer for first-timers, "mEmacslt" visits the Emacs manual, etc. In Emacs, you can click mouse button 2 on a menu item or cross refer en ce to select it. * Menu:

Basics * Common options: (coreutils)Common options. * Coreutils: (coreutils). Core GNU (file, text, shell) utilities . * Date input formats: (coreutils)Date input formats. * File permissions: (coreutils)File permissions. Access modes. * Finding files: (find). Operating on files matching certain criteri a. C++ libraries * autosprintf: (autosprintf). Support for printf format strings in C+ -----Info: (dir)Top, 211 lines --Top----------------------------------Welcome to Info version 5.2. Type h for help, m for menu item.

5.4.1 Using the --help Option Muchos comandos le proporcionará información básica, muy similar a la SYNOPSIS encontrada en las man page, cuando se aplica la opción –help. Esto es útil para aprender el uso básico de un comando: sysadmin@localhost:~$ ps --help ********* simple selection ********* ********* selection by list ********* -A all processes -C by command name -N negate selection -G by real group ID (supports names) -a all w/ tty except session leaders -U by real user ID (supports names) -d all except session leaders -g by session OR by effective group name -e all processes -p by process ID T all processes on this terminal -s processes in the sessions given a all w/ tty, including other users -t by tty g OBSOLETE -- DO NOT USE -u by effective user ID (supports names) r only running processes U processes for specified users x processes w/o controlling ttys t by tty *********** output format ********** *********** long options *********** -o,o user-defined -f full --Group --User --pid --cols --ppid -j,j job control s signal --group --user --sid --rows --info -O,O preloaded -o v virtual memory --cumulative --format --deselect -l,l long u user-oriented --sort --tty --forest --version -F extra full X registers --heading --no-headi ********* misc options ********* -V,V show version L list format codes f ASCII art forest -m,m,-L,-T,H threads S children in sum -y change -l format -M,Z security data c true command name -c scheduling class -w,w wide output n numeric WCHAN,UID -H process hierarchy sysadmin@localhost:~$

5.5 Búsqueda de Comandos y Documentación Recordemos que el comando whatis (o man -f) le dirá qué sección de una página de manual se almacena en Si utiliza este comando con la suficiente frecuencia, es probable que venir a través de una salida inusual, como la siguiente.: sysadmin@localhost:~$ whatis ls ls (1) - list directory contents ls (lp) - list directory contents sysadmin@localhost:~$

5.5.1 ¿Dónde están esos comandos ubicados? Para buscar la ubicación de un comando o las Man Page de un comando, utilice el comando whereis. Este comando busca los comandos, los archivos de origen y páginas de manual en lugares específicos donde estos archivos se almacenan normalmente: sysadmin@localhost:~$ whereis ls ls: /bin/ls /usr/share/man/man1p/ls.1.gz /usr/share/man/man1/ls.1.gz sysadmin@localhost:~$

normalmente se distinguen fácilmente entre los comandos ya que normalmente se comprimen con un comando llamado gzip, lo que resulta en un nombre de archivo que termina en .gz.

5.5.2 Encuentra cualquier archivo o directorio El comando whereis está diseñado específicamente para encontrar los comandos y las páginas man. Si bien esto es útil, hay ocasiones en las que desee encontrar un archivo o directorio, no sólo los archivos que son comandos o páginas man. Para encontrar cualquier archivo o directorio, se puede utilizar el comando locate. Este comando buscará una base de datos de todos los archivos y directorios que estaban en el sistema cuando se creó la base de datos. Por lo general, el comando para generar esta base de datos se ejecuta todas las noches. sysadmin@localhost:~$ locate gshadow /etc/gshadow /etc/gshadow/usr/include/gshadow.h /usr/share/man/cs/man5/gshadow.5.gz /usr/share/man/da/man5/gshadow.5.gz /usr/share/man/de/man5/gshadow.5.gz /usr/share/man/fr/man5/gshadow.5.gz /usr/share/man/it/man5/gshadow.5.gz /usr/share/man/man5/gshadow.5.gz /usr/share/man/ru/man5/gshadow.5.gz /usr/share/man/sv/man5/gshadow.5.gz /usr/share/man/zh_CN/man5/gshadow.5.gz sysadmin@localhost:~$

5.5.3 Contar el número de archivos La salida del comando locate puede ser bastante grande. Cuando se busca un nombre de archivo, como por ejemplo passwd, el comando locate producirá todos los archivos que contiene la cadena passwd, no sólo archivos con el nombre passwd. En muchos casos, es posible que desee comenzar haciendo una lista de la cantidad de archivos coincidirán. Usted puede hacer esto mediante el uso de la opción -c para el comando locate: sysadmin@localhost:~$ locate -c passwd 97

sysadmin@localhost:~$

5.5.4 Limiting the Output Puede limitar la salida producida con el comando locate utilizando la opción -b. Esta opción sólo incluirá anuncios que tienen el término de búsqueda en el nombre base del nombre de archivo. El nombre base es la parte del nombre de archivo sin incluir los nombres de directorio. sysadmin@localhost:~$ locate -c -b passwd 83 sysadmin@localhost:~$

Como se puede ver en la salida anterior, todavía habrá muchos resultados cuando se utiliza la opción –b. Para limitar la salida aún más, se coloca un \carácter delante del término de búsqueda. Este personaje limita la salida a los nombres de archivo que coincide exactamente con el término: sysadmin@localhost:~$ locate -b "\passwd" /etc/passwd /etc/cron.daily/passwd /etc/pam.d/passwd /usr/bin/passwd /usr/share/doc/passwd /usr/share/lintian/overrides/passwd sysadmin@localhost:~$