You are on page 1of 34

Introduccin a los

Sistemas
Operativos
Introduccin a
GNU/Linux
Caractersticas - Configuracin de discos
Configuracin de discos IDE:
Master o Slave
Primer y Segundo BUS IDE
Denominacin de los discos Nomenclatura basada en
identificacin de los Buses:
/dev/hda: configurado como Master en el 1 bus IDE
/dev/hdb: configurado como Slave en el 1 bus IDE
/dev/hdc: configurado como Master en el 2 bus IDE
/dev/hdd: configurado como Slave en el 2 bus IDE

Caractersticas - Configuracin de discos (cont)
Configuracin de discos SCSI: Se basa en LUNS
Denominacin de los discos Nomenclatura basada en identificacin de
los Buses:
/dev/sda
/dev/sdb
/dev/sdc
/dev/sdd
/dev/sde

La nomenclatura para los discos SATA es la misma
Particiones primarias:
Se numeran de la 1 a la 4 (solo estas se pueden marcar como
activas booteables)
Particiones extendidas:
Sus unidades o particiones lgicas se numeran a partir de la 5
Caractersticas - Configuracin de discos (cont)
Nueva nomenclatura utilizada:
Con la evolucin de las distribuciones GNU/Linux, se
comenz a utilizar udev como gestor de dispositivos:
Su funcin es controlar dinmicamente los archivos del
/dev en base al hardware detectado
Motiva su uso, el no poder garantizar que tras distintos
arranques del SO, los dispositivos se sigan llamando de la
misma manera. (Supongan disco 1 y 2, que disco 1 se quita
y controladoras SCSI/SATA mixtas)
En /dev solo tendremos las entradas de los dispositivos
conectados
Desaparece el concepto de Major y Minor Number
Se basa en eventos y permite que nuevos dispositivos sean
agregados posteriormente al arranque
Caractersticas - Configuracin de discos (cont)
A futuro, todos los dispositivos llamados hdX sern denominados
sdX Intruducido en Debian/Squeeze
Por estas y otras razones se adoptan 4 mecanismos nuevos para
nomenclar los discos:
Nombres persistentes por UUID (Universal Unique Identifier):
A cada fileSystem se le asigna un identificador nico




Utilizacin de labels:




Otros: http://wiki.debian.org/Part-UUID
$ ls l /dev/disk/by-uuid/
2d781b26-0285-421a-b9d0-d4a0d3b55680 -> ../../sda1
31f8eb0d-612b-4805-835e-0e6d8b8c5591 -> ../../sda7

$ ls -l /dev/disk/by-label
data -> ../../sdb2
data2 -> ../../sda2

Soportes de Instalacin
Existen diversos modos de instalar GNU/Linux:
Debemos tener muy en cuenta la arquitectura de hardware:
amd64: Arquitectura de 64 Bits
arm armel: Advanced Risc Machine
i386: Arquitectura de 32 bits
ia64: intel Itanium o Intel
Architecture-64
: Otras Arquitecturas
Podemos instalarlo desde un
CD descargado de la web
Podemos instalarlo desde un
dispositivo USB: Unetbootin
Permite crear instaladores o
LiveCD utilizando USBs
Herramientas para Particionar
Como vimos anteriormente el particionado puede
realizarse utilizando:
Software Destructivo: fdisk
Software no destructivo: fips,
gparted (GPLv2), incluidos
en el mismo instalador
Caractersticas
No existe el concepto de extensin del nombre de
un archivo
Los subdirectorios no se separan con el carcter '\'
Es case sensitive
Entre un comando y sus parmetros deberemos
dejar obligatoriamente un espacio en blanco
Separacin de entorno grfico y texto
Editor de textos vim (mejorado)
Presente en cualquier distribucin de GNU/Linux
Posee 3 modos de ejecucin:
Modo Insert
Modo Replace
Modo comandos
Se le pueden enviar una serie de comandos tiles:
w: Escribir cambios
q q!: Salir del Editor
Tecla Ins i: Ingresar al modo edicin
Tecla Ins o r: Ingresar al modo reemplazo
dd: Borrar una lnea (copiarla al portapapeles o Cortar)
Y: Copiar al portapapeles
p: Pegar desde el portapapeles
/frase: Busca la palabra frase dentro del archivo


Usuarios
Todo usuario debe poseer un login para acceder al sistema.
root: Es el administrador del sistema (superusuario)
Otros: Usuarios estndar del sistema
Archivos de configuracin:
/etc/passwd:
username:passwd:UID:GID:full_name:directory:shell
ndelrio:x:2375:500:Nico del Rio,,,,Usuarios:/home/admins/ndelrio:/bin/bash
/etc/group:
nombre_grupo:password:GID:miembo[s](nombres de usuario)
infraestructura:x:500:
/etc/shadow:
username:passwd:last:may:must:warn:expire:disable:reserved
ndelrio:$1$HamkgCYM$TtgfLJLplItxutaiqh/u9/:13273:0:99999:7:::

Usuarios (cont)
Comandos para manejo de usuarios:
useradd <nomre de usuario> (Generalmente se usa adduser):
Agrega el usuario
Modifica los archivos /etc/passwd
passwd <nombre de usuario>:
Asigna o cambia contrasea
Modifica el archivo /etc/shadow
usermod <nombre de usuario>
-g: Modifica grupo inicial (Modif. /etc/passwd)
-G: Modifica grupos adicionales (Modif. /etc/group)
-d: Modifica el directorio home (Modif. /etc/passwd)
userdel <nombre de usuario>: Elimina un usuario
groupdel <nombre del grupo>: Elimina un grupo


Permisos
Se aplican a directorios y archivos
Existen 3 tipos de permisos y se basan en una notacin octal:


Permiso Valor Octal
Lectura R 4
Escritura w 2
Ejecucin x 1
Se aplican sobre los usuarios:
Usuario: Permisos efectivos al dueo U
Grupo: Permisos efectivos a grupo dueo G
Otros: Permisos efectivos sobre otro usuarios O
Se utiliza el comando
chmod <permisos> <objeto>
chmod 755 /tmp/script


Entorno
Directorios mas importantes (segn FHS):
/ Tope de la estructura de directorios. Es como el C:\
/home Se almacenan archivos de usuarios (Mis
Documentos)
/var Informacin que vara de tamao (logs, BD, spools)
/etc Archivos de Configuracin
/bin Archivos binarios y ejecutables
/dev Enlace a dispositivos
/usr Aplicaciones de usuarios
Algunos Comandos para manejo de directorios:

ls
cd
mkdir
rmdir
Ver:
man
info
Bootloader
El bootloader o cargador de arranque es un programa que
permite preparar un entorno para la carga del Sistema
Operativo
Generalmente se utilizan los cargadores multietapas, en los
que varios programas pequeos se van invocando hasta
lograr la carga del SO
En cierto sentido, el cdigo del BIOS forma parte del
bootloader, pero el concepto est ms orientado al cdigo que
reside en el Master Boot Record
El MBR est formado por el MBC + Tabla de Particiones
Slo el MBC del Primary Master Disk es tenido en cuenta
durante el proceso de arranque
El MBR existe en todos los discos, ya que contiene la tabla de
particiones.
Proceso de Arranque System V
BootStrap:
Paso 0: Se ejecuta el cdigo de la BIOS
Paso 1: El hardware lee el sector de arranque (MBR)
Paso 2: Se carga el gestor de arranque (MBC)
Paso 3: Se carga el kernel
Paso 4: Se monta el sistema de archivos raz
Paso 5: Se ejecuta el proceso init
Paso 6: Lee el /etc/inittab
Paso 7: Ejecuta los scripts apuntados por el runlevel 1
Paso 8: El final del runlevel 1 le indica que vaya al runlevel
por defecto
Paso 9: Ejecuta los scripts apuntados por el runlevel por
defecto
Paso 10: El sistema est listo para usarse
Proceso de Arranque (cont)
Proceso init:
Su funcin es cargar todos los subprocesos necesarios
para el correcto funcionamiento del SO
Posee PID 1 y se encuentra en /sbin/init
Se lo configura a travs del archivo /etc/inittab
No tiene padre y es padre de todos los procesos
(Comando pstree)
Es el encargado de montar los filesystems y de hacer
disponibles los dems dispositivos
Runlevels
Es el modo en que arranca Linux (3 en Redhat, 2 en Debian)
El proceso de arranque lo dividimos en niveles. Cada uno es responsable de
levantar o bajar una serie de servicios
Se encuentran definidos en /etc/inittab:
id:niveles_ejecucion:accin:proceso
Id: identifica la entrada en inittab (1 a 4 caracteres)
Niveles_ejecucion: el/los nivel de ejecucin en los que se realiza la
accin
Accin: describe la accin a realizar
wait: Se inicia cuando se entra al runlevel e init espera a que
termine
initdefault
ctrlaltdel: se ejecutar cuando init reciba la seal SIGINT
off, respawn, once, boot, bootwait, powerwait, otras
Proceso: el proceso exacto que ser ejecutado
l1:1:wait:/etc/rc.d/rc 1
1:2345:respawn:/sbin/agetty tty1 9600
ca::ctrlaltdel:/sbin/shutdown -t3 -r
Runlevels (cont)
Existen 7, y permiten iniciar un conjunto de procesos al
arranque
Segn el Estandar:
0 - Halt (Parada)
1 - Single user mode (Modo monousuario)
2 - Multiuser, without NFS (modo multiusuario sin
soporte de red)
3 - Full multiuser mode (modo multiusuario
completo, console)
4 No se utiliza
5 - X11 (modo multiusuario completo, con login
grafico basado en X)
6 - Reboot (Reiniciar)
Runlevels (cont)
Los scripts que se ejecutan estn en /etc/init.d/
En /etc/rcX.d (donde X = 0..6) hay links a los archivos
de /etc/init.d/
Formato de los links:
[S|K]<orden><NombreDelScript>
S80sendmail
K15httpd
S: Lanza el script con el argumento start
K: Lanza el script con el argumento stop
insserv
Se utiliza para manejar y actualizar el orden de los enlaces
simblicos del /etc/rcX.d en forma dinmica
Utiliza cabeceras en los scripts del /etc/init.d que
permiten especificar la relacin con otros scripts rc
Toda la informacin de configuracin reside en el mismo
archivo
La informacin puede incluir:
Default-Start / Default-Stop : Indica los runlevels en los
que se debe iniciar/frenar el script
Required-Start / Required-Stop : indica los servicios
que son necesarios tener iniciados previo a ejecutar el
script
Otros encabezados

Insserv - Ejemplo
### BEGIN INIT INFO
# Provides: FOO
# Required-Start: $syslog $remote_fs
# Required-Stop: $syslog $remote_fs
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Description: Start FOO to allow XY and provide YZ
### END INIT INFO

nombre del programa o servicio que
va a controlarse
servicios que deben ser iniciados o
terminados antes del inicio o
parada del servicio
niveles de ejecucin en los que la
aplicacin ha de iniciarse o detenerse
automticamente
Proceso de Arranque Upstart
Upstart es el reemplazo de SystemV (generalmente
incluido en Ubuntu y Fedora, openSUSE y otros)
Permite la ejecucin de tareas en forma asincrnica
como principal diferencia con sysVinit que es
estrictamente sincrnico
Las tareas y servicios son ejecutados ante eventos
(arranque del equipo o insercin de un dispositivo USB)
definidos como tareas o jobs
Los jobs se almacenan en el directorio /etc/init
Son scripts en texto plano que definen las acciones a
ejecutar
El init es el responsable de lanzar las tareas
Es compatible con el System V

fstab
Define qu particiones se montan al arranque
Su configuracin se encuentra en/etc/fstab

/dev/sda1 /boot ext4 ro,defaults,noauto 0 0
/dev/sda3 / reiserfs defaults 0 0
/dev/sda2 none swap sw 0 0
proc /proc proc defaults 0 0
devfs /devfs devfs defaults 0 0
/dev/fd0 /floppy auto user,noauto 0 0
/dev/cdrom /cdrom iso9660 ro,user,noauto 0 0
Opciones:
User: Cualquier usuario puede montar la particin
Noauto: No ser montada al arranque del sistema
Ro: Read only, rw: Read y write
1 Habilita fsck
1 dump de errores de fs
Redirecciones
Al utilizar redirecciones mediante > (Redireccin Destructiva )
o Si el archivo de destino no existe, se lo crea;
o Si el archivo existe, se lo trunca;
o y se escribe la informacin en l.
En cambio, al utilizar redirecciones mediante >> (Redireccion
NO Destructiva)
o Si el archivo de destino no existe, se lo crea;
o Pero si el archivo existe, no se lo trunca;
o y se agrega la informacin al final del mismo.
o Funciona como un append.
cd
ls >> /tmp/lista.txt
cd /tmp
ls >> /tmp/lista.txt
Qu pasa si cambiamos >> por >?
Uso de Pipes |
El "|" nos permite comunicar dos procesos por medio de un
pipe o tubera desde la shell.
El pipe conecta stdout (salida estndar) del primer comando
con la stdin (entrada estndar) del segundo comando.
Por ejemplo:
ls | more
Se ejecuta el comando ls y la salida del mismo, es
enviada como entrada del comando more
Se pueden anidar tantos pipes como se deseen:
Cmo haramos si quisiramos contar la cantidad de
usuarios del sistema que en su nombre de usuario aparece
una letra a?

cat /etc/passwd | cut d: -f1 | grep a | wc -l
Grub: Cmo recuperarlo?
Al instalar otro Sistema Operativo, el mismo pisa la informacin contenida en
el MBR
Grub Legacy:
1. Arrancar el sistema desde un Live CD (Ubuntu, Knoppix, etc) o Super
Grub Disk
2. Ejecutar el comando grub
3. Definimos donde se encuentra la particin que contiene los archivos de
configuracin del grub con el siguiente comando: root (hd0,1)
4. Escribimos el la informacin en el mbr: setup (hd0)
5. Salimos del configurador de Grub.
Grub 2
1. Arrancar el sistema desde un Live CD (Ubuntu, Knoppix, etc) o Super
Grub2 Disk
2. Ejecutamos el comando grub-install /dev/sda (Cambiar por lo que
corresponda y tener en cuenta que es el disco y no la particin)
3. Reiniciar y ejecutar update-grub2 si fuera necesario
http://www.guia-ubuntu.org/index.php?title=Recuperar_GRUB
Locales: Configuracin de Idioma
El idioma est dado por la configuracin de los locales
Los mismos se configuran en el archivo /etc/locale.gen
(en debian). Debemos seleccionar es_AR.UTF-8
De este modo podemos ver los mensajes y pginas del manual
en espaol
Para utilizar un locale, debemos generarlo con el comando
locale-gen
Para definir el locale a utilizar se debe modificar/agregar las
variables de ambiente LANG y LANGUAGE en
/etc/environment o en debian dpkg-reconfigure
locales
LANG=es_AR.UTF-8
LANGUAGE=es_AR:es
Networking
La configuracin de Networking la tenemos en el archivo
/etc/network/interfaces
En el mismo definimos el dispositivo y le asociamos una ip
o configuracin por dhcp
En el archivo /etc/resolv.conf se realiza la configuracin
de los servidores DNS
Un poquito de redes
Para que una mquina se pueda conectar a una red, es necesario
poder referenciarla de algn modo. Generalmente se utilizan las
direcciones IP. Se pueden configurar:
En modo dinmico: DHCP
En modo Manual: Estticas
Debemos asegurarnos que el dispositivo de red sea detectado
por el SO:
Para verificar el hardware: lspci nn o lspci nn o lsusb
Dependiendo del Hardware instalaremos el controlador paquetizado (en
debian apt-get install firmware-xxx
Otra opcin es utilizar ndiswrapper: Permite utilzar un driver de Windows
en GNU/Linux: ndiswrapper -i drivername.inf
Se puede verificar la deteccin del Hardware al arranque con:
dmesg | grep i eth
Un poquito de redes (cont)
Una vez que el hardware fue detectado, procedemos a configurarlo
Servidor de nombres: /etc/resolv.conf
Si se trata de una red cableada, enchufamos el cable de red y:
Si la configuracin es dimmica por DHCP, ejecutamos dhclient
Si la configuracin es manual, editamos los siguientes archivos:
Debian y sus derivados:
/etc/network/interfaces


Redhat, CentOS y sus derivados:
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:0F:EA:91:04:07
IPADDR=192.168.1.111
NETMASK=255.255.255.0
ONBOOT=yes
TYPE=Ethernet
auto eth0
iface eth0 inet static
address: 192.168.1.1
netmask 255.255.255.0
gateway 192.168.1.254
Comandos utiles:
/etc/init.d/networking restart
service networking restart
ifconfig
Un poquito de redes (cont)
Si se trata de una red inalmbrica:
Es importante contar con el driver del dispositivo (generalmente
firmware-xxx)
Instalamos el paquete wireless-tools que provee herramientas
para reconocer la red
iwconfig: Al ejecutarlo, identificamos el dispositivo: iwconfig
ath0
A travs de iwlist ath0 scanning podemos detectar redes dentro
del alcance local:
# iwlist ath0 scanning
ath0 Scan completed :
Cell 01 - Address: 00:14:BF:39:0C:C5
ESSID:"miwifi
Protocol:IEEE 802.11bg
Mode:Master
Channel:6
Encryption key:on
Bit Rate:54 Mb/s
Extra: Rates (Mb/s): 1 2 5.5 6 9 11 12 18 24 36 48 54
Signal level=-46 dBm
Extra:wpa_ie=dd180050f20101000050f20201000050f20201000050f20
Extra: Last beacon: 10ms ago
Un poquito de redes (cont)
Tenemos una red inalmbrica: miwifi con seguridad wep activado
transmitiendo en el canal 6
Editamos /etc/network/interfaces y agregamos la informacin de
conexin:






Es conveniente instalar el paquete resolvconf para que la configuracin
de DNS se realice automticamente y va DHCP
Si se quiere asignar la IP manualmente, se especifica en este archivo
Si se desea se puede instalar network-manager o wicd para administrar
y realizar configuraciones en entorno grfico
# wireless network
auto ath0
iface ath0 inet dhcp
wireless_essid miwifi
wireless_channel 6
wireless_mode managed
wireless_keymode open
wireless_key1 millavehexadecimal
wireless_key2 s:millaveascii
wireless_defaultkey 1
http://man-es.debianchile.org/wlan.html
Xorg
Implementacin OpenSource del X Window System bifurcacin del
XFree86
Es el sistema estndar de GUI adoptado por la mayora de las
distribuciones
Anteriormente la configuracin se encentraba en
/etc/X11/xorg.conf. Actualmente est dividida en archivos en
/etc/X11/ o /usr/share/X11/xorg.conf.d
En entornos basados en HAL:
En una consola de texto ejecutamos: /etc/init.d/hal start
Luego ejecutamos: startx
Si arranc el servidor, en /var/log/Xorg.0.log tendremos el
archivo xorg.conf utilizado o un log de los dispositivos detectados
Sin encontraremos uno como base para configurarlo
Si no tenemos HAL, podemos ejecutar como root Xorg configure,
lo cual generar un archivo de configuracin estndar basado en
nuestro hardware
Xorg (cont)
Si lo anterior no funcion, podemos editar el archivo
/etc/X11/xorg.conf y dejarlo del siguiente modo (hagamos backup
del original):








Tendremos una configuracin estndar que funciona generalmente
con cualquier hardware con colores de 16 bits, que luego podemos
mejorar
Luego, reiniciamos el gestor de ventanas:
/etc/init.d/gdm restart /etc/init.d/kdm restart

Section "Screen
Identifier "Default Screen
Monitor "Configured Monitor
DefaultDepth 16
SubSection "Display
Depth 16
Modes "1280x1024" "1024x768" "800x600" "640x480
EndSubSection
EndSection

You might also like