1. COMO INSTALAR UNIX
¿Qué necesitamos?
Para instalar Linux necesitamos obviamente una computadora.
No es necesario que sea una computadora de última
generación, ya que la cantidad de distribuciones GNU/Linux
existentes nos permite hacer uso de máquinas que
normalmente consideraríamos obsoletas. Claro está, que si
quieres hacer uso de lo último en software relacionado con
GNU/Linux, si te recomiendo que tengas un equipo al menos
menor a tres años, con una tarjeta aceleradora de vídeo y una
buena cantidad de memoria RAM:
A continuación listo los requerimientos mínimos y
recomendados para realizar una instalación exitosa de una
distribución GNU/Linux.
Requerimientos mínimos:
Procesador Existe una distribución GNU/Linuxpara cualquier
arquitectura.
Memoria RAM 256 MB
Disco Duro 1 GB
Requerimientos mínimos recomendados:
Procesador Existe una distribución GNU/Linuxpara casi cualquier
arquitectura.
Memoria RAM 512 MB
Disco Duro 5 GB
INSTALACIÓN DEL SISTEMA OPERATIVO
Preparación para instalar Unix
2. Una vez que usted ha obtenido una distribución de Unix, estará
preparado para instalar el sistema. Esto supone cierto grado de
planificación, sobre todo si en su ordenador se usan
actualmente otros sistemas operativos. En las secciones
siguientes describiremos cómo preparar la instalación de Unix
de forma general.
Instalación del software de UNIX
Después de modificar sus particiones para reservar espacio a
Unix, usted está preparado para instalar el software. A
continuación se muestra un resumen del procedimiento a
seguir:
o Ejecutar fdisk bajo Unix para crear las particiones de Unix;
o Ejecutar mke2fs y mkswap para crear los sistemas de
ficheros y el espacio de intercambio;
Instalar el software de Unix;
Finalmente, instalar el cargador LILO en el disco duro, o crear
un disco de arranque con el fin de arrancar su nuevo sistema
Unix.
Como hemos dicho, uno (o más) pasos de los anteriores pueden
estar automatizados por los programas de instalación, según la
distribución que esté utilizando. Por favor, consulte la
documentación de su distribución para ver las instrucciones
específicas.
Arranque de UNIX
El primer paso es iniciar el computador con el dispositivo de
arranque de Unix, que suele ser un disco "boot" que contiene un
pequeño sistema Unix. Tras arrancar con el floppy, se le
presentará un menú de instalación de algún tipo que le guiará
en el proceso de instalación. En otras distribuciones, se le
mostrara un prompt de login cuando arranque. Aquí se suele
entrar como root o install para comenzar el proceso de
3. instalación. La documentación que viene con su particular
distribución le explicará qué necesita para arrancar UNIX. La
mayoría de las distribuciones de Unix utilizan un disquete de
arranque que le permite introducir parámetros de su hardware
en tiempo de arranque, para forzar la detección de sus
dispositivos.
Comunicación entre procesos
Tuberías o pipes: | sirven para comunicar procesos, usualmente
para pasar el resultado de un proceso a otro proceso: por
ejemplo ps axf | grep bash: lista todos los procesos y filtra los
que se llamen bash. La tubería en definitiva lo que hace es unir
la salida de un comando con la entrada de otro.
Redirección de entrada/salida
Proceso > fichero: con este símbolo podemos redirigir la salida
estándar de un comando a un fichero. Téngase en cuenta una
cosa. Si decimos fichero siempre lo vamos a decir de manera
genérica, puede ser un fichero de texto o la pantalla de
terminal, ahí cabe TODO.
Compresión de ficheros y directorios
Existen varias opciones de compresión de ficheros en Linux:
gzip, bz2, rar, zip, y todos ellos se pueden combinar con el
empaquetar o archivador TAR.
Tar Archivador: agrupa ficheros en uno, además se le
puede decir que comprima.
tar cfp resultado.tar /etc /var : guarda el contenido de
/etc y /var dentro del fichero resultado.tar
tar xfp resultado.tar : saca todo el contenido de
resultado.tar
tar zcfp usr.tgz /usr : archiva y comprime con gzip el
directorio /usr
tar jcfp usr.tgz /usr : archiva y comprime con bzip2 el
directorio /usr
4. tar zxfp usr.tgz : Descomprime el fichero anterior
Accediendo a dispositivos y particiones
Para acceder a diskettes, cdroms, dvds, pen drives, cualquier
dispositivo USB, etc... Es necesario “montarlo” de forma
manual, salvo que todo esté configurado de una forma cómoda
con automount.
En linux hay un único sistema de ficheros, y si se mete un CD o
un USB en el sistema hay que montarlo sobre algún directorio
del sistema. Existen algunos directorios predefinidos para esto,
aunque en principio lo podemos montar donde nos dé la gana
Las flechas
A través de las teclas cursoras podemos volver a los comandos
que hemos introducido anteriormente, algo que los usuarios de
MSDOS recordarán como el DOSKEY.
En cualquier momento podemos movernos al inicio o al final del
comando podemos usar las teclas Inicio o fin, o en su defecto
Ctrl-A o Ctrl-E.
Ejecución de comandos
Para ejecutar un comando en el shell basta con ponerlo, y si el
comando se encuentra dentro de los directorios indicados en la
variable PATH se ejecutará sin problemas.
Linux~# uptime
20:49:05 up 2:35, 2 users, load average: 0.00, 0.00, 0.00 linux~#
Comandos built-in del Shell
El shell dispone de un conjunto de comandos que vienen de
serie. Son comandos muy sencillos que pueden ayudar en la
programación de scripts. Vamos a listarlos, pueden usarse
dentro de un script o desde el propio prompt:
● ! : Negación
5. ● #: comentarios
● : : comando nulo
● . : El punto sirve para ejecutar ficheros. Con los scripts del
mismo directorio se hace: ./script.sh
● Alias: sirve para crear alias de comandos largos: alias dir='ls -l
| more'
● Bind: gestiona la librería readline.
● Bg: pasa procesos a background o segundo plano
● Break: fuerza la salida de fors, whiles, selects o untils
● Builtin: permite modificar el comportamiento de comandos
● Cd: el cambio de directorio
● Command: ejecutar determinado comando con sus
argumentos
● Continue: salta a la siguiente iteración en fors, whiles, selects
o untils
● declare: declaración de variables
● Dirs: muestra la pila de directorios
● disown: quita los procesos dependientes del shell para que no
dependan de este
● do, done: parte de las iteraciones
● Echo: mostrar datos por salida
● Enable: habilitar o deshabilitar los comandos builtin.
● Exec: ejecuta un comando en lugar del proceso actual
● Exit: termina el script o el shell
● Export: convierte las variables en globales
6. ● Fc: editar comandos del historial
● Fg: pasar comandos a primer plano
● Getopts: para tomar los argumentos opcionales del script, al
estilo de c
● Help: muestra la ayuda
● History: el historial de comandos
● If: para crear estructuras condicionales
● Jobs: muestra los procesos que tenemos en marcha
● Kill: envío de señales a procesos.
● Let: ejecución de operaciones aritméticas
● Local: declaración de variables locales
● Logout: salida del shell
● Printf: sacar datos formateados como en c
● Pwd: muestra el directorio actual
● Pushd: mete un directorio en la pila
● Read: lee desde la entrada estándar
● Readonly: previene que variables de shell sean sobrescritas
● return: para terminar funciones
● Select: estructura de selección
● Set: muestra variables del shell, y puede establecer muchas
opciones
● Shopt: establece o quita opciones de shell
● Shift: desplaza posiciones en el shell
● Source: similar al.
7. ● Suspend: suspende el shell actual, suele hacerse en el su.
● Test: para construir condicionales.
● time: mide el tiempo de ejecución de un comando.
● times: muestra tiempos acumulados de procesos.
● Trap: para atrapar señales.
● True: constante booleana.
● Type: distingue si un comando es builtin, función, alias,
palabra clave,..
● Ulimit: muestra los límites de recursos del sistema
● Umask: muestra/establece permisos que sse deben aplicar a
nuevos ficheros
● Unalias: quita los alias.
● Unset: des establece funciones o variables.
● Until: para crear iteraciones.
● Wait: detiene la ejecución a la espera que termine otro
proceso.
● While: para crear iteraciones..
Desconexión de la máquina
En principio, una desconexión correcta advierte a los otros
usuarios para que se despidan antes de que el sistema se pare,
eliminara cuidadosamente todos los procesos no esenciales
actualizara varios ficheros y registros, sincronizara el disco con
los buffers en memoria, y finalmente eliminara el resto de los
procesos.
Algunos sistemas pueden estacionar automáticamente las
cabezas del disco bajo software, como parte de la desconexión.
8. De hecho, algunas máquinas unix incluyen el conmutador de
potencia controlado de modo que el último paso del proceso de
desconexión es la desactivación física de la máquina.
La Secuencia de Arranque.
Booting the UNIX System...
Y carga entonces el núcleo (kernel) del sistema operativo, que
es normalmente /unix. Se puede presionar una tecla mientras se
visualiza el mensaje "Booting", y el cargador permitirá
introducir el nombre del núcleo alternativo para cargar. Este
núcleo alternativo debe residir in /stand/unix. Como parte de la
secuencia de inicialización, el núcleo puede visualizar cuanta
memoria total real hay instalada en el sistema, si esta cantidad
difiere de la cantidad de memoria física, debe haber un
problema de hardware que debería ser reparado. Como parte del
proceso de inicialización, el núcleo analiza las rutinas de
dispositivo asociadas con tarjetas adicionales instaladas y los
mensajes "Wangtek...", etc. aparecen es esta etapa.
Estados Init.
El procedimiento de arranque del sistema Unix se complica por
la posibilidad de hacer entrar al sistema en diferentes estados,
es decir, el sistema puede adoptar varios modos de operación
conocidos como estados init, debido a que /etc/init es el
programa responsable del mantenimiento del sistema en
funcionamiento correcto.
El estado más comúnmente utilizado es el modo multiusuario,
este es el estado del sistema utilizado para casi todas las
interacciones en estas notas y el único que permite más de un
usuario. Otro estado históricamente utilizado pero de raro uso
hoy, es el modo de usuario único, este último es una versión de
Unix de multitarea, por lo que permite múltiples procesos, pero
no múltiples usuarios, este estado puede ser utilizado para una
9. actualización del kernel (núcleo) del Unix rápida. Existen otros
estados, la designación de estos estados se muestra en la
siguiente tabla:
Estado Función
Alterando los valores default de la creación de
cuentas.
Para llevar a cabo esta operación seleccione "Modify Defaults",
después usted apreciara una forma en pantalla, en esta
apreciara que el cursor estará posicionado en el campo de
"Login group". Algunos de los campos pueden ser modificados
al momento de crear la cuenta del usuario en el modo de
modificación, estos campos son solamente informacionales; sus
valores pueden ser cambiados. Estos campos son los
siguientes:
Login group
El grupo asociado con la cuenta cuando el usuario entra. Este campo
puede ser cambiado, pero no deberá estar vacío. Este campo es el
grupo del usuario en /etc/passwd. Presionando F3 se muestra una lista
de los grupos existentes.
Groups
Estado Función
0 Desenchufar la máquina
1 Modo de usuario único
2 Modo de multiusuario
3 Modo de multiusuario con red
4 No usado
5 Desconexión a ROM (o desconexión y arranque)
6 Desconexión y arranque
10. Los grupos en los que este usuario es un miembro.
Login Shell
El shell que el usuario utilizara, el valor default está definido en
el archivo /etc/default/authsh. Si la ruta completa es ingresada,
el shell descrito por esta ruta es simplemente el usado como el
shell usado por el usuario. Sin embargo si no se especifica la
ruta, se asume que se trata del shell predefinido, es decir, el
shell que se encuentra en el subdirectorio /usr/lib/mkuser.
Home directory
Define donde residirán los archivos de usuario. La opción del
directorio default se enfatiza; presione Return para seleccionar
el directorio de default. Las opciones del directorio de trabajo
son las siguientes:
· Create: Crea un nuevo directorio para el usuario.
· Do not create: no crear un directorio para el usuario.
· Populate existing: use el directorio especificado existente.
Más adelante analizaremos usuarios que comparten directorios
de trabajo.
User ID
Es el número de identificación del usuario (ID). Una vez
seleccionado un número de identificación, este no puede ser
cambiado porque podría causar inconsistencia en la auditoria
del sistema.
Type of user
En la mayoría de los casos el tipo de usuario es "individuo" o
"pseudo-usuario". Por default este campo asume el valor
"individuo" que identifica a la gente real con nombres. Los
usuarios "pseudo-user" son cuentas anónimas dedicadas a
ciertas tareas administrativas del sistema.
11. Account that may su to this user
Se refiere al usuario responsable de esta cuenta. Este campo
puede ser cambiado si y solo si el usuario no es un individuo.
Para usuarios individuales este campo esta vacío, pero para
usuarios no individuales no deberá de estar vacío. Por ejemplo,
la cuenta de root deberá tener el nombre del usuario
responsable de la cuenta. Presione F3 para ver la lista de los
usuarios del sistema.
Compartiendo directorios de trabajo.
Se puede crear cuentas que compartan el mismo directorio de
trabajo (login directory); para hacer esto, se crea el directorio
normalmente durante la adición de un nuevo usuario. Usted
debería después de salir del sysadmsh e introducir los
siguientes comandos (reemplazando o medir con el nombre real
del directorio).
Cd homedir
Chmod 775
Chown aunth
Además, introducir uno de los comandos siguientes de acuerdo
al shell de login usado para la cuenta:
Bourne o Korn shell
Chmod 660 .profile
Chmod 660 .kshrc (korn Shell solamente)
C-shell
Chmode 660 .login .chsrc
Esto asegura que los miembros del mismo grupo de login
puedan compartir este directorio. Note que si usted asigna
diferente grupo de login de varios usuarios, estos no podrán
compartir el directorio.