Está en la página 1de 13

Xserver/XOrg puede preguntar al hardware y autogenerar un fichero de configuracin XFree86 -configure /

Xorg -configure (como root sin funcionar el servidor X), el resultado /root/XF86Config.new
/root/xorg.conf.new Distribuciones implementan comandos para configuracin X: Redhat/Fedora systemconfig-display SUSE Yast y Yast2.
Xf86cfg / xorgcfg Deprecated
En caso de no funcionar, tambin se pueden utilizar xf86config, Xconfigurator, XF86Setup
x.org-11 /etc/X11/xorg.conf
XFree86
/etc/XF86Config-4 /etc/XF86Config
Arrancar el sistema en modo que no se ejecute las X, en Red Hat/Fedora telinit 3 (Pasar a utilizar runlevel 3)
Algunas ditribuciones como Debian o Gentoo, no utilizan runlevels, se pueden parar servicios de esta forma:
/etc/init.d/xdm stop(Start/Stop/Restart - GUI Login Server)
La linea Driver especifica driver, puede tener kdb,
keyboard, evdev.
kbd, keyboard son drivers especificos de teclado,
evdev es driver generico de dispositivos de entrada.

La seccin Module controla el arranque de modulos


de X server, drivers para propiedades especificas de
hardware.
Freetype, type1 y Adove type - para renderizado

Las lineas Option, ajustan opciones:


Section 'Module'
- AutoRepeat establece los tiempos de repeticin de
Load dbe
un carcter al mantenerlos presionado.
Load extmod
#- Tiempo mientras el primer caracter es repetido.(ms)
Load dbdevhw
#- Tiempo entre el resto de repeticiones.(ms)
Load glx
Load record
Section 'InputDevice'
Load freetype
Identifier
Keyboard0
Load type1
Driver
kbd
Load dri
Option
XkbModel pc105
EndSection
Option
XkbLayaut us
Option
AutoRepeat 500 200
EndSection
Identifier Identifica que dispositivo utilizar.
Auto Protocol, intenta adivinar el protocolo IIMP/2,
ExplorerPS2. Viejos: PS/2, Microsoft, Logitech
Emulate3Buttons Emula pulsacion de botones lat.
ZaxisMapping Mapea la rueda del ratn.
Section 'InputDevice'
Identifier
Driver
Option
Option
Option
Option
EndSection

Mouse0
mouse
Protocol IMPS/2
Device /dev/input/mice
Emulate3Buttons no
ZAxisMapping 4 5

nv y nouveau drivers for ATI/AMD, Intel


Section 'Device'
Identifier
Videocard0
Driver
nv
VendorName nVidia
BroadName
GeForce 6100
VideoRam
131072

HorizSync y VertRefresh Contiene valores criticos,


frecuencia de refresco horizontal y vertical.
ModeLine Configurar con aplicaciones.
Section 'Monitor'
Identifier
Monitor0
ModelName AOC e2343Fk
HorizSync
30.0 83.0
VertRefresh 55.0 75.0
# My custom 1920x1080 mode
ModeLine 1920x1080 138.50 1920 1968...
EndSection

La seccion screen combina monitores y tarjetas de


video (Device y Monitor) que utilizas, soporta
multiples tarjetas de video y monitores.
Las subsecciones Display definen modos de video que
X podr utilizar. Para elegir entre los Display's, se
utiliza DefaultDepth.

EndSection

Section 'Screen'
Identifier
Screen0
ServerLayout Enlaza todas las otras secciones.
Device
Videocard0
Monitor
Monitor0
Section 'ServerLayout'
DefaultDepth 24
Identifier
single head configuration
Subsection Display
Screen
Screen0 0 0
Depth 24
InputDevice Mouse0 CorePointer
Modes 1920x1080 1280x600...
InputDevice Keyboard0 CoreKeyboard
EndSubSection
EndSection
Subsection Display
El orden de los directorios es significativo
Depth 8
:unscaled Utilizar bitmap font si coincide font size
Modes 1024x1080 800x600...
Section 'Files'
EndSubSection
FontPath
/ust/.../fonts/100dpi:unscaled EndSection
FontPath
/ust/share/fonts/Type1
FontPath
unix:/7100
Cantidad de memoria necesaria R=xres * yres * bpp /
FontPath
tcp/fount.pangaea.edu:7100
8.388.608
...
bpp = Depth
EndSection
xdpinfo Obtiene informacin de configuracion actual, X version, resolution, color depth -ext NameOfExten
xwininfo Informacin de la ventana clickeada.
-id <window id>
-root
-children
-tree
-bits
Information bit states
-events
-wm
-shape
-frame
-metric

Produce informacin ante los eventos de las ventanas.


Informacin de los datos del Window Manager.
Como -stats pero incluye las medidas de shape.
Incluye la informacin como parte del frame de Window Manager.
Aade medidas en milimetros.

Fuentes
- bitmap fonts - Estn optimizadas para una determinada resolucin/medida, multiples versiones para cada
medida.
- Outline font - Fuentes vectorizadas, operaciones de escalado imperfectas, requiere mas computo Adobe
PostScript Type 1, Apple's TrueType.
X core fonts Fuentes manejadas por el servidor X, X font path XFree86 - /usr/X11R6/lib/X11/fonts/
X.org - /usr/share/fonts o /usr/share/X11/fonts.
Para las fuentes que te descargues puedes almacenarlas en /opt/fonts o /usr/local/fonts
Tipe 1 fonts- vienen el ficheros con extensin .pfa y .pfb, las fuentes TrueType vienen con extensin .ttf, se
necesita un fichero de descripcin/listado de fuentes fonts.dir, la primera linea indica el numero de fuentes
descritas y las subsiguientes los nombres de las fuentes y una pequea descripcin.
Programas para crear el listado de fuentes:
mkfontscale - Crea fonts.scale
mkfontdir - Combina fonts.scale con fonts.dir
type1inst Para fuentes Type1
mkfontscale Trata tanto fuentes Type1 como TrueType.
Aadir a Font Path en un sistema en funcionamiento:
xset fp+ /your/font/directory Aade la ruta al path, Aadir al inicio +fp y al final fp+
xset fp rehash Reexamina los Font Path para crear la lista de Fuentes.

xfontsel Aplicacion testear fuentes configuradas.


XFS: Para configurar un servidor de fuentes, primero se tiene que configurar todas las fuentes en local, fichero
de configuracin de servidor de fuentes: /etc/X11/fs/config, en este fichero se utiliza la variable catalogue=...
como path de fuentes (rutas separadas por coma). /etc/init.d/xfs restart o xset fs rehash
fc-cache (como root) Crea el fichero indice de fuentes de todos los paths
X Display Manager Control Protocol (XDMCP) - Administra los logins remotos (pone el prompt de login
remoto) XDM, KDM, GDM, MDM, LightDM...
Formas de iniciarlo podran ser: /etc/inittab, runlevel o system startup script
Runlevel 5: Igual que el 3, pero inicia las X
Configurar runlevel por defecto en /etc/inittab, (por defecto el 5): id:5:initdefault:
/etc/sysconfig o (Fedora)/etc/sysconfig/desktop en la variable DISPLAYMANAGER=/bin/xdm
(openSuse)/etc/sysconfig/displaymanager
Remote X clients: xhost +zeus / xhost -zeus
Se acepta/ quita permiso en el servidor X mostrar contenido
desde host zeus. Bash: Export DISPLAY=apllo:0.0
tcsh: setenv DISPLAY apollo:0.0
Activar el Forward X11 en el cliente: -X o -Y o ForwardX11Trusted / ForwardX11 del fichero /etc/ssh_config

en el servidor: X11Forwarding en el fichero /etc/sshd_conf


Configurar Time-zone, crear enlace simbolico en /etc/localtime a fichero /usr/share/zoneinfo/*, este fichero
binario contiene cuando se cambia la hora y ms... (ln -s ) Fedora: /etc/sysconfig/clock tzsetup, tzselect,
tzconfig. TZ environment variable: :filename (:/usr/share/zoneinfo/Europe/London)
- Formato 2: std+offset EST+5
Locale:
[languaje[_territory][.codeset][@modifier]] Codeset: ASCII en_US.UTF-8
/usr/bin/local --> Locale para cada tipo de dato de entrada, Ej: telfonos (LC_TELEPHONE),... LC_ALL
Variable de entorno LANG: Especifica locale para otros datos.
locale -a Lista todas las locales disponibles.
export LANG=... export LC_ALL=... Cambiamos el charset solo para la consola actual.
/.bashrc y /etc/profile y XkbLayout en keyboard InputDevice.
LANG=C Evita que pase la salida por ningn locale traslator.
iconv -f iso-8859-1 -t UTF-8 source.txt > destination-utf8.txt

Combierte fichero a UTF8

Imprimir
Aplicacin Conversin PostScript (Smart filter) Conversin GhostScript Queue CUPS Print
PostScript Es el formato estandar de impresin para impresoras (No todas las impresoras lo soportan)
GhostScript Convierte de formato PostScript a el que soporte la impresora (Ficheros PPD)
CUPS Servicio de colas de impresin
lpr Enviar trabajo para impresin. /var/spool/cups/... Las colas corresponden a directorios en el sistema
Scripts de servicio:

/etc/rc?.d

/etc/rc.d

/etc/init.d

CUPS
/etc/cups/*
Web-based configuration utility
/etc/cups/cupsd.conf = Configuracin de CUPS
<Location /printers>

/etc/cups/printers.conf = Definicin de impresoras

Order Deny, Allow


Deny from All
BrowseAllow from 127.0.0.1
//
BrowseAllow from 192.168.1.0/24
BrowseAllow from @LOCAL
Allow from 127.0.0.1
//
Allow from 192.168.1.0/24
Allow from @LOCAL
</Location>

Estos sistemas podran ver la impresora


Estos sistemas podran imprimir

BrowseAddres Especifica la direccion broadcast a la que se enviaran los paquetes para que los host
encuentren la impresora.
Ej: BrowseAddres 192.168.1.255
Los ficheros PPD especifican como se tiene que comunicar GhostScript con la impresora. (Printer definition
for Smart filter)
Compartir una impresora con sistemas Windows: SMB/CIFS queue, se utilizar para la comunicacin LPD
protocol (lpd://hostname/queue
o con ipp://... o smb/cifs) para linux-to-linux la mejor opcin es IPP,
LPD suele ser la mas facil de configurar en entornos SMB/CIFS (Con authenticacin)
lpr Con -Pnombre especifica el nombre de la cola a la que mandar a imprimir, si no, es utilizada la por defecto.
-r
Elimina el fichero original tras la impresion.
-h
Suprime banner para este trabajo.
-J / -C / -T
Especifica nombre de trabajo, ser impreso si lo indica en el banner.
-m username Envia un mail al usuario cuando es complete la impresin.
-# number
Imprime <number> nmero de copias.
Ej: lpr -Plexmark -m ljones report.txt
fmt, pr
mpage Este comando lanza la orden de impresin pero permite imprimir varias paginas en una cara.
-1, -2, -4, -8,.. indica el nmero de pginas a poner en una.
Ej: mpage -2 -Plexmark report.ps
lpq Muestra informacin de la cola de impresin, nmero de trabajos
Ej: lpq -Php4000
lprm

Elimina uno o ms trabajos de la cola de impresin. (job ID)


lprm Pasando (-) se eliminan todos los trabajos del usuario.

lpc
Inicia, para o reordena los trabajos dentro de la cola de impresin
cupsenable / cupsdisable Habilita o desabilita la cola de impresin
lpmove Mueve trabajos entre colas de impresin
Ejercicio:

lpr -Php4000 /etc/fstab; lpq -Php4000

Los nombres de usuario pueden tener hasta 32 carcteres, (numeros, simbolos de puntuacin son permitidos,
mayusculas y minusculas) ( _ . $ ).
Algunas utilidades truncan el nombre de usuario a 8 carcteres (case-sensitive)

Los grupos son utilizados para controlar el acceso al hardware y otros recursos
/etc/group

Contiene un listado de todos los grupos y los usuarios adjuntos a estos.

Cada usuario tiene asignado un grupo principal, este est en /etc/passwd


newgroup

Cambia el grupo del usuario. (grupo principal), tiene que estar el usuario dentro del grupo

Cambiar grupo a un fichero:


/etc/passwd
/etc/group

chgrp / chown

/etc/shadow

Los primeros 100 UIDs y GIDs estan reservados para uso del sistema y servicios.
El UID y GID 0 son de ROOT
Las cuentas de usuario suelen tener UID y GID a partir de 500
Pueden ser reutilizados, aunque normalmente se asignan secuencialmente, la reutilizacion puede causar
problemas si se reutiliza y existen ficheros de el usuario anterior con ese mismo UID / GID.
Limites de lumeracin en cuentas:

/etc/login.defs

UID_MIN y UID_MAX

Es posible crear multiples usuarios o grupos con el mismo UID / GID, seran tratados como lo mismo en
terminos de permisos
useradd Aadir usuario
-c comment
-d home-dir
-e expire-date (YYYY-MM-DD)
-f inactive-days
-g default-group
-G atitional-groups,...
-m
Automaticamente se crea el directorio home /etc/skel
-M
No crea automaticamente el directorio home
-p encripted-pass
Utilizar la contrasea encriptada (hash) especificada
-s default-shell
-u UID
Utiliza uid especificado
-n
Deshabilita la creacin de Grupo con el mismo nombre (Red Hat)
Ej: useradd -m -d /home2/sally -g project4 -G project1,project4 -s /bin/tcsh sally
passwd
-k
-l
-u
-d
-S

En principio para modificar la contrasea de la cuenta


Actualiza fecha de expiracin
Bloquea cuenta poniendo prefijo ! delante del hash de la contrasea
Desbloque cuenta, si se utiliza con cuenta no bloqueada, elimina la contrasea
Elimina la contrasea
Muestra informacin de la contrasea, algoritmo de encriptacin,

usermod
aa
-d
-m
-l user
-L / -U
-G

Cambia el directorio home (sin movero)


(No hacer con usuario logueado)
Aadido a op anterior, mueve los ficheros home

Cambia el nombre de usuario al especificado, usermod -l sjones sally


Bloquea y desbloquea la cuenta (Duplicado de opcin del comando passwd)
Establece la lista de grupos a los que pertenece, se tiene que listar todos.

Si se cambiase el UID o GID de un usuario o grupo, no se cambiaria de los ficheros que posee,
chown -R sally /home/sally

chage
Cambia las propiedades referentes a la expiracin de la cuenta si la pass no ha sido cambiada en
un periodo de tiempo y <system date> ha sobrepasado <permited date>.
-l
Muestra la informacin del usuario y su aniguedad. (no root)
-m minDays
Numero minimo de dias entre cambios de contrasea.
-M maxDay
Numero mximo de dias entre cambios de contrasea.
-d lastDay
Establece ultimo dia que se cambi la contrasea.
-I inactiveDays
Establece el numero de dias entre la expiracin de la contrasea y la desavilitacin
de la cuenta.
-E expireDate
Establece la fecha de expiracin, (-1 representa no expiracin)
-W warnDays
Establece el nmero de dias antes de la expiracin de la cuenta, el sistema alarma
al usuario.
/etc/passwd username:password:uid:PrimaryGid:comment:HomeDir:DefaultShell
Normally stored with 644 permision
/etc/shadow

username:hash_pass:LastPassChange:DaysUntilChangeAllowed:DaysBeforeChangeRequired:
DaysWarningBefore:DaysBetwenExpirationDeactivation:ExpirationDate:SpecialFlag
Normally stored with 600 permision

* or ! Denotes no password (its locked) (used for system accounts)


Posibles servicios de autenticacin: Network Information System (NIS), Directory Access Protocol (LDAP),
Windows NT domains and Active Directory (AD)
Activacin de servicios de autenticacin: /etc/nsswitch.conf, Plugable Autentication Module (PAM) conf
/etc/pam.d/, sustitucin de utilidades del sistema passwd,...
userdel
Elimina un usuario del sistema: passwd y shadow
-r / --remove Elimina directorio home-dir
-f / --force
Fuerza la eliminacin cuando el usuario est logueado (junto a opcin -r)
Ej: userdel -r sally
find / -uid 1029
groupadd
Crea un nuevo grupo
-g GID
Crea grupo con GID especificado.
-o
Fuerza la creacin con mismo GID que otro.
-r
Crea un grupo de sistema (GEID menor que SYS_GID_MIN /etc/login.defs)
-f
Elimina mensaje de error en caso de ya existir grupo.
Ej: groupadd project3
usermod
Modifica propiedades de un grupo existente
-g GID
Nuevo GID de grupo
-o
Permite especificar GID de grupo ya existente
-n grname
Especifica el nuevo nombre de grupo
Ej modificacin: usermod -D users,progect1,project4 sally
Especifica a que grupos pertenece un usuario (especificar todos a los que se quiere que permanezca)
gpasswd
Equivalente a passwd para gurpos, asigna administradores de grupo y otras opciones
-a user
Aade usuario a grupo especificado
-d user
Elimina el usuario del grupo
-R
Configura el grupo para no haber ningn usuario perteneciente a el utilizando newgrp
-r
Elimina la contrasea del grupo

-A user[,...]
-M user[,...]

Especifica los administradores del grupo


Como -A pero adems aade los usuarios como miembros del grupo

Si solo se le especifica el nombre de usuario, cambiar la contrasea del grupo.


Si la contrasea est asignada, se pedira a la hora de cambiar a el grupo.
/etc/gshadow

GroupName:password:GID:UsersInGroup

groupdel
Elimina grupo
Ej: groupdel project3
find / -gid 1003
chown
chgrp
Entorno de usuario y de sistema: /etc/profile, /etc/bash.bashrc, /.profile, /.bashrc, /.bash_profile, /.profile
env
Muestra todas las variables de entornos
$EDITOR
Variable de entorno de editor favorito
El directorio se copia desde el directorio skeleton (/etc/skel).
/home/XXX/.bashrc
/etc/profile

Punto no resumido 1...


WI-FI Protected Access (WPA), WPA2
Hubs permit only half-duplex transmission
Internet:

Red global mundial

internet:

Conjunto de redes pequeas

NetBEUI
Microshoft, IBM pila de protocolos
IPX/SPX
Nobell
Linux support:
Appletalk, IPX/SPX, NetNEUI
Protocolo IP probee metodo de trasferencia de mayor esfuerzo entre computadores.
Protocolo ICMP para el envio de mensajes de error y control (Internet layer)
IPv6 multicasting 128 bits address
stateless address auto-configuration (SLAAC) - similar a DHCP el cual tambin puede ser
configurado.
Ipsec
Ha sido organizado en cabeceras modulares para el rapido procesamiento de packetes.
NDP Network Discovery Protocol Similar a protocolo ARP para IPv6 (reemplazo)
ifconfig eth0-N / wlan0-N
Class D Direcciones reservadas a multicast
Class E Direcciones reservadas para uso futuro
127.x.x.x Direcciones de bucle local
255.255.255.255
Envia a todos los host del segmento de red (routers usualmente lo bloquean)
IPv6 Site-Local Addreses Direcciones privadas similar a 127.x.x.x
Comienzan con: FE9 / FE9 / FEA / FEB
Cada dominio tiene que contener como minimo 2 servidores dns, que pueden proveer los datos o redireccionar
la solicitud a otro servidor

nslookup
host
dig
whois

Resoluciones DNS (deprecated)


Reemplazo de nslookup, host name/ip
Mas complicado resolucin de DNS
Informacin de contacto en caso de problemas, nombre de propietario... whois google.com

/etc/hosts

IP
<Nombres separados por espacio>
IP
<Full host name> <Alias1> <Alias2>...
192.168.7.23
apollo.luna.edu apollo

Rangos de Ips
/etc/nsswitch

Configurar el Name Service Switch


hosts:
files dns
Puede ser utilizado pars especificar NetBIOS, LDAP

/etc/networks

Como el fichero hosts pero para las redes


mynet
192.168.7.0
loopback
127.0.0.1

ICMP no utiliza numero de puerto, TCP y UDP si...


Puertos menores de 1024 son privilegiados para root
/etc/services
Definicin de nmero de puerto a nombre de servicio
22

SSH (tcp/udp)

53

DNS (tcp/udp)

389

LDAP (tcp)

23

Telnet

67

DHCP

443

Http Over SSL

25

Smtp

110

POP-3

445

Act. Directory Serv. - Samba

20 / 21 Ftp

139

NetBIOS / Samba

465

SMTP over SSL

111

NFS, NIS, RPC (tcp/udp)

143

IMAP

631

Intern. Printing Protocol IPP

113

Identd (tcp)

161

SNMP

993

IMAP over SSL

119

NNTP Net. News Transfer.

177

XDMCP/XDM/KDM/G. 995

POP-3 over SSL

5900+ Rem. Frame Buffer(RFB) 6000/7 X.org-X11 o XFree86


Modprobe <Driver_a_cargar>

Carga modulo en el kernel y todos de los que depende

Cuando un PC con DHCP arranca, envia trama/packete con su direccin hardware en busca de config de red, la
ip no es asignada permanentemente, el cliente DHCP tendr que renovar el prestamo cada cierto tiempo
Clientes DHCP:

pump, dhclient, dhcpcd

Se utiliza un fichero para especificar si se utiliza DHCP o configurar IP estatica:


Redhat y Fedora: /etc/sysconfig/network-scripts/ifcfg-name (name es el nombre de la red)
BOOTPROTO=dhcp
DEVICE BOOTPROTO IPADDR NETMASK NETWORK BROADCAST GATEWAY ONBOOT
Ubuntu:
/etc/network/interfaces
iface eth0 inet dhcp
dhclient etch0
ifconfig etch0 up 192.168.29.30 netmask 255.255.255.0
route add default gw 192.168.29.1
ifconfig eth0

Utilizar route con propositos de diagnostico:


route -n
-n
No resuelve las direcciones IP en dominios
127.0.0.0
Direccin de loopback
0.0.0.0
Default route, envia los paquetes por el Gateway
-net / host
add / del
reject
dev
gw

Especifica si ser de una red o un host


Aade / elimina entrada indicada
Ruta para bloquear paketes
Especifica el dispositivo / tarjeta de red
Especifica Gateway

Linux puede funcionar como Router, reenviando paquetes entre redes:


route add -net 172.20.0.0 netmask 255.255.0.0 gw 172.21.1.1
echo 1 > /proc/sys/net/ipv4/ip_forward
o
net.ipv4.ip_forward = 1 en /etc/sysctl.conf
||
IP_FORWARD line en /etc/sysconfig/sysctl
Para la configuracin grafica:
Fedora y Redhat:
system-config-network
SUSE:
YaST
ifup / ifdown:
Lebanta o baja interfaz haciendo uso de la informacin de los ficheros de configuracin
Ej: ifup eth0
/etc/hosts
/etc/hostname / HOSTNAME
domainname XXX
dnsdomainname XXX

Hostname sessus.example.com
Establece nombre de dominio utilizado por NIS
Establece nombre de dominio utilizado por DNS

PPP es un protocolo de internet basado en login, se usa la utilidad PPP para iniciar la conexin al PC remoto,
intercambio de usuario y contrasea, algunos proveedores han adaptado PPP a sus propios propositos, en el
caso de Ethernet PPP over Ethernet (PPPoE)
La forma mas simple de utilizar PPPoE es comprar un Router de banda ancha.
Para configurar linux directamente con DSL con PPPoE:
Linux PPPoE client
ping

Envia PING pakete ICMP


-c num
Envia nmero de paketes ICMP
Ctrl+C
Interrumpir comando.
Ej: ping -c 4 domainName

traceroute

Muestra traza a un destino, utiliza los Time-To-Live de ICMP


-n
No intenta resolver nombres de dominio
Ej: traceroute -n 132.3.4.22

Algunos routers estn configurados para no enviar packetes ICMP por lo que traceroute no puede
identificar su paso por ellos. (Identificadas por * en los campos)
tracepath

Alternativo a traceroute

netstat

Muestra conexiones existentes y escuchas


-i / --interface
Muestra informacin en formato similar a ifconfig
-r / --route
Muestra informacin similar al comando route
-M / --masquerade Muestra conexiones mediadas por Linux NAT
-p / --program
Muestra que programas establecen conexiones externas
-a / --all
Muestra puertos abiertos y conexiones existentes
Sin parametros muestra los puertos abiertos y los sistemas que hay conectados.

tcpdump
(Como root) Sniffer de red, muestra un packete por cada linea
Timestamp, Protocolo, Puerto, Ip/nombre y puerto origen, Ip/nombre y puerto destino, Otra informacion
-c num
Muestra num packetes y acaba
-A
Muestra el contenido de los packetes en ASCII
-D
Muestra lista de interfaces en las que tcpdump puede escuchar
-n
Muestra direcciones numericamente (no resuelve)
-v / -vv
Muestra informacin adicional del packete
-w file
Guarda packetes capturados en fichero
telnet dominio.com
telnet speaker.example.com 25
220 speaker.example.com ESMTP Postfix
HELLO nessus.example.com
250 speaker.example.com
ftp speaker.example.com
get file.wav
quit
$ HOSTNAME=carson.example.com
$ export HOSTNAME
$ echo $HOSTNAME

export HOSTNAME=carson.example.com
env

El simbolo $ va antes del nombre de la variable, excepto cuando se le asigna un valor.


Establecer variable de entorno solo para una aplicaci'on: env DISPLAY=seeker.example.com:0.0 nedit
-i / --ignore-environment
Inicia la aplicaci'on con todo el entorno limpio (sin variables)
-u VarName / --unset=VarName
Elimina la variable especificada
$ env | grep HOSTNAME
USER o USERNAME Nombre de usuario actual

LANG Lenguaje actual como una locale

SHELL Path a el binario de shell actual

TZ Especifica Time/zone

PWD Path del actual directorio de trabajo

LD_LIBRARY_PATH similar a PATH con liberias

HOSTNAME

PS1 Propmt bash por defecto


\u username \h hostname \W working directory
\j Nomber ob jobs \T Current time 12 hours format
Variable suele estar asignada en el fichero: /etc/profile

PATH Rutas a las que se ir'an a buscar los binarios

TERM Nombre del actual terminal, ej> xterm

HOME Ruta del directorio home del usuario actual

DISPLAY Especifica servidor X, usualmente: 0.0


0.0 Primera sesi'on X
1.0 Segunda sesion X
machine4.luna.edu:0.0

MAIL Contiene la ruta del spool email de usuario

EDITOR Editor de texto preferente

Especificar variables de entorno del sistema en


$ echo $PS1
\u@\h:\w\$
alias ls='ls color'
Type of file

/etc/profile

Login file location

Non-login file location

Global

/etc/profile o /etc/profile.d/

/etc/bashrc o /etc/bash.bashrc

User

/.bash_login o /.profile o /.bash_profile

/.bashrc

Las variables establecidas en ficheros globalmente, pueden ser sobreescritas por los ficheros locales o por linea
de comandos.
/etc/skel
Includes local bash startup files
La shell tiene ficheros startup y logout /.bash_logout

(No funciona bien con mulltiples shells)

/.inputrc
Configuraci'on bash (Opciones de configuracion keyboard)
Linea que mapea Meta-Ctrl+U ala acci'on universal-argument acciones definidas en readline lib.
M-control-u: universal-argument
X usa su propio fichero de rutinas de keyboard, por lo que no utiliza /.inputrc
chmod a+x my-script
$ source my-script
Otra forma de ejecutar script (Se carga el codigo en la shell actual, no crea nueva)
$ . my-script
Si ejecutas source con un script, este tendra acceso a todas las variables de entorno sin exportarlas.
grep
find
cut
sed
mail

Locates files that contain specific strings.


Busca patrones dentro de ficheros.
Extra campos de un fichero, extrae informaci'on variable de un fichero.
cut -f 6 -d : /etc/passwd
Opciones de editor de texto convencional.
Enviar email
-s subject
Especifica asunto del email
Ultimo argumento es el email de destino.
Escribir el email y finalmente terminar con Ctrl+D.

Argumentos a Script $0-9 $0 Nombre del programa $1 Primer argumento del programa
shift Rota los argumentos de N a 1, $0 no se rota / modifica.
#!/bin/sh
useradd -m $1
passwd $1
mkdir -p /shared/$1
chown $1.users /shared/$1
chmod 775 /shared/$1
ln -s /shared/$1 /home/$1/shared
chown $1.users /home/$1/shared
Uptime
df
read

#!/bin/sh
ip='route -n | grep UG | tr -s | cut -f 2 -d '
ping='/bin/ping'
echo Checking to see if $ip is up...
$ping -c 5 $ip

Tiempo total de actividad del computador (desde que se encendio)


Espacio libre en disco
Leer variables desde entrada estandar
Ej: read $response

Todas las variables de entorno van en mayuscula, las variables de script son en minuscula y mezclado.
IF

-f
-s
string1 = string2
&& ||

Fichero existente
Si fichero existe y ocupa mas que 0

if [ -s FILE ]
then
echo ...
quit
else

case word in
pathern1) commands(s) ;;
pathern1) commands(s) ;;
...
esac

for d in 'ls *.wav' ; do


aplay $d
(Reproductor de audio
ALSA)
done

myfn() {
commands
}

#!/bin/bash
doit() {
cp $1 $2
}
function check() {
if [ -s $2 ]
then

echo ...
...
fi
while [ condicion ]
do
commands
done

echo
exit
fi
}
check $1 $2
doit $1 $2
seq NMin NMax

Se crean N lineas, cada una con un numero entre NMin y NMax

Punto no resumido 2...


MySql - Propiedad de Oracle

Los comandos SQL se podran poner en mayusculas y minusculas

Los registros son almacenados sin un orden especifico, las restricciones de que puede aparecer en una columna
se llama <dominio> o <tipo de dato>.
INTEGER, SMALLINT, DECIMAL, NUMERIC, FLOAT, DOUBLE PREDICTION, DATETIME, DATE,
TIME, CHAR, VARCHAR, ENUM, SET
SHOW DATABASES;
CREATE DATABASE test;

information_schema
USE test;
SHOW TABLES;

CREATE TABLE objects ( name VARCHAR(30), color VARCHAR(20), size FLOAT, hardness
ENUM('soft', 'medium', 'hard'), value DECIMAL(10,2) )
INSERT INTO objects VALUES('lizard', 'green', 6, 'soft', 10.00);
SELECT * FROM objects
UPDATE objects SET size=5, WHERE name='lizard';
SELECT fields(s) FROM table [ WHERE conditions ] [ ORDER BY fields ]
AND
OR
CREATE TABLE locations (id INTEGER, name VARCHAR(30), location VARCHAR(30), cond
INTEGER);
INSERT INTO locations VALUES(1, 'lizard', 'lizard', 9);
SELECT objects.name, objects.value, SUM(value) FROM objects, locations WHERE
locations.name=objects.name GROUP BY value;
(Sin GROUP BY da ERROR)

DELETE FROM locations WHERE name='tree' AND location='back yard';


DROP TABLE locations;
Postfix y qmail han sido dise;ados modularmente, sendmail y exim son monoliticos.