lunes, 10 de diciembre de 2007

¿Cómo utilizar apt-get en OpenSuse?

¿Cómo utilizar apt-get en OpenSuse?

Por favor pasate por mi nuevo blog ya que este esta abadonado:
http://blog.iniciodetrayecto.com

Para aquellos que migran desde Debian, Ubuntu y demás derivados a OpenSuse deben saber que éste no utiliza apt-get, si no Yast, que es un potente manejador de paquetes.
Para utilizar apt-get en OpenSuse sigan los siguientes pasos.

Comencemos abriendo Yast, vamos a Sistema>Instalar Software.
En la busqueda colocamos apt.

Lo instalamos y va que chuta

viernes, 7 de diciembre de 2007

Alternativa Dreamweaver

http://www.kompozer.net

Para linux hay una laternativa bastante buena al programa de diseño web Dreamweaver. Este se llama Kompozer, funciona tanto para linux, windows y creo que hasta mac y es bastante facil de utilizar, funciona con pestañas como firefox o dreamwevaer mx 2004. y la instalación en paquetes rpm es muy facil de instalar: botón derecho del raton sobre el rpm e instalar.

Adjunto un par de screenshots










Hay que reconocer, que la versión para windows es de lo mejorcito que puede haber, ni siquiera hay qeu ejecutar un instalador, basta con descomprimir el contenido del zip en una carpeta y a funcionar sin problemas. Desde ahora ya no uso dreamwevaer (ya que tenia una version trial de esas de 30 dias), os lo recomiendo.

domingo, 14 de octubre de 2007

Propietarios con chown y chgrp

Introducción.

Tanto chown como chgrp, forman parte del paquete coreutils, el cual se instala de forma predeterminada en todas las distribuciones de GNU/Linux, por tratarse de un componente esencial.

URL: ftp://alpha.gnu.org/gnu/coreutils/

Mandato chown.

El mandato chown se utiliza para cambiar el propietario al que pertenece un fichero o directorio. Puede especificarse tanto el nombre de un usuario, así como un número de identidad de usuario (UID). Opcionalmente, utilizando un signo de dos puntos (:), o bien un punto (.), permite especificar también un nombre de grupo.

Opciones.

-RCambia recursivamente el propietario (y, opcionalmente, el grupo al que pertenecen los directorios, junto con todos sus contenidos.
-v (o --verbose)Salida de chown más descriptiva.
--versionVer el número de versión del programa.
--dereferenceActúa sobre enlaces simbólicos en lugar de hacerlo sobre el destino.
-h (o --no-dereference)En el caso de enlaces simbólicos, cambia el propietario del destino en lugar del propio enlace.
--referenceCambia el el propietario de un fichero, tomando como referencia el propietario de otro.

Utilización.

chown [opciones] usuario[:grupo] fichero(s) o directorio(s)

Mandato chgrp.

El mandato chgrp se utiliza para cambiar el grupo al que pertenece un fichero o directorio. Puede especificarse tanto el nombre de un grupo, así como un número de identidad de grupo (GID).

Opciones.

-RCambia recursivamente el grupo al que pertenecen los directorios, junto con todos sus contenidos.
-v (o --verbose)Salida de chgrp más descriptiva.
--versionVer el número de versión del programa.
--dereferenceActúa sobre enlaces simbólicos en lugar de hacerlo sobre el destino.
-h (o --no-dereference)En el caso de enlaces simbólicos, cambia el grupo del destino en lugar del propio enlace.
--referenceCambia el grupo de un fichero, tomando como referencia el propietario de otro.

Utilización.

chgrp [opciones] fichero(s) o directorio(s)

Ejemplos.

El siguiente mandato realiza el cambio de propietario a fulano, sobre el fichero algo.txt.

chown fulano algo.txt

El siguiente mandato realiza el cambio de propietario a fulano y el grupo desarrollo, sobre el fichero algo.txt.

chown fulano:desarrollo algo.txt

El siguiente mandato realiza el cambio de propietario a fulano y el grupo mail, del subdirectorio Mail, junto con todo su contenido.

chown -R fulano:mail Mail

El siguiente mandato realiza el cambio de grupo a desarrollo, sobre el fichero algo.txt.

chgrp desarrollo algo.txt

miércoles, 10 de octubre de 2007

Estructura directorios linux

/
bin Binarios de comandos esenciales
boot Archivos estáticos de cargador de arranque(boot-loader)
dev Archivos de dispositivos
etc Configuración del sistema local-máquina
home Directorios home de los usuarios
lib Librerías compartidas
mnt Punto de montaje de particiones temporales
root Directorio hogar del usuario root
sbin Binarios del sistema esenciales
tmp Archivos temporales
usr Segunda jerarquía mayor
var Información variable

lunes, 23 de julio de 2007

enlazar (links en el sistema de archivos)

ln : Crea accesos directos (vínculos) modo empleo: ln opciones:
-s Crea un enlace simbólico ejemplo:

ln -s /home/usuario/curriculum.doc /home/usuario/Desktop (crea un acceso directo del archivo “curriculum.doc” al escritorio)

ln -s origen_archivo_o_carpeta destino_donde_queremos_el_acceso_directo

miércoles, 11 de julio de 2007

chmod

CHMOD files, asignando permisos

Una de las dudas mas habituales cuando nos enfrentamos a la instalación de scripts (perl, php) es la asignación de los permisos correspondientes. Las preguntas sobre CHMOD suelen ser las mas habituales en todos los foros que se dedican a estos temas. En este artículo abordaremos que son los permisos, para que sirven, y como asignarlos.

Los script y los permisos

CHMOD ("Change mode") es un comando UNIX que permite cambiar los permisos de acceso de un archivo. Cada archivo tiene nueve clases de acceso, que pueden ser permitidas o denegadas. Se pueden aplicar diferentes permisos al dueño del fichero, al grupo al que el fichero pertenece y al resto de usuarios. Cada una de estas tres clases de usuarios (dueño, grupo, resto de usuarios) puede tener permisos de lectura, escritura y ejecución

Al instalar cualquier archivo en una página web, podemos definir sus propiedades, para determinar en que forma será accesible para los visitantes de la página.
Estas propiedades son lo que llamamos permisos y segun cuales asignemos a cada archivo este será solo de lectura, de escritura o ejecutable, o cualquier combinación de los tres.

Piensa por ejemplo en una página de html sencilla, respecto de la cual solo nos interesa garantizar que todo el mundo pueda verla pero no modificarla; el archivo que contiene esa página necesita unicamente permisos de lectura, pero no de ejecución ni de escritura. Por contra, si se trata de un script, necesitará probablemente permisos de lectura y de ejecución, etc.

La orden CHMOD

En este documento nos referimos a la asignación de permisos en servidores unix (unix, linux, freebsd, todos ellos pertenecientes a la familia unix, y con diferencia los mas difundidos en la red). La asignación de permisos se hace mediante el comando CHMOD. Por eso, cuando al leer las instrucciones de instalación de cualquier aplicación web te encuentres con la misteriosa frase "haz chmod 666 tal_archivo.htm" ten en consideración que nos estan diciendo los permisos que ese archivo necesita.

Los servidores Windows tienen su propio sistema de permisos, en los que no vamos a entrar aqui.

El concepto de usuario en UNIX

El sistema operativo UNIX esta diseñado para ser multiusuario. Por ello UNIX permite tres niveles de acceso a los archivos, para tres categorias diferentes de usuarios:

owner (propietario) La persona que el sistema reconoce como dueño del archivo.

Group (grupo): Conjunto de usuarios con permisos similares. Muy usado en entornos de trabajo, es de escasa aplicación en páginas web.

Other (otros): Cualquier otra persona.

Es un error asociar el concepto de usuario a una persona real. Se trata de una abstracción, que se refiere no a personas sino a categorias. Por ejemplo, si nosotros creamos un script, somos efectivamente sus autores y propietarios; pero ese script esta destinado a la red. Nosotros, y el resto de personas, accederan al archivo no a traves de nuestra maquina local sino por internet. Es frecuente en los servidores la creación de usuarios genéricos (root, www, www-user etc). En definitiva no olvides que cuando asignas permisos a un script, el owner puede ser cualquiera que visite la página, lo cual será necesario si como es normal se trata de scripts que se administran via web.

Tipos de permiso de acceso:

Read (lectura): Permiso para ver el archivo o directorio, sin hacer cambios.

Write (escritura): Permiso de escritura: puede escribir el archivo, y por tanto, cambiarlo.

Execute (ejecución): El archivo o directorio puede ser ejecutado. Se usa para directorios con scripts, formularios, etc ...

Y tratándose de directorios:

read listar los archivos de un directorio

write añadir nuevos archivos al directorio

execute acceder a los archivos del directorio

Como conozco los permisos de un archivo ?

Si tenemos acceso ftp al servidor, tecleamos el comando ls -l y vemos algo asi:


-rw-r--r-- 1 irvnet irvnet 1272 Sep 28 07:31 index.php
| // / | | | |
| | | | | | tamaño nombre del archivo
| | | | | |_ nombre grupo
| | | | |
| | | | |_ nombre usuario
| | | |
| | | |_ Permisos genericos
| | |
| | |_ Los siguientes tres digitos los permisos del Group
| |
| |___ los siguientes tres caracteres determinan los permisos del owner:
| r de real, lectura; w, write, escritura y x de
| execute, ejecución
|
|
|___ El primer carácter indica si nos encontramos ante un directorio o un
fichero: d significa directorio, - significa fichero,
l significa link


Advierte que tenemos TRES categorias de usuarios ("user," "group," y "other") y para categoria pueden asignarse TRES tipos de permisos: "r," "w," y "x".

Fijando permisos

La orden chmod puede usarse con letras o numeros. La forma mas corriente es expresar los permisos numericamente. Seguro que lo has visto por ahi, chmod 777 etc ...
Para comprender el significado tienes que tener en cuenta que convencionalmente 4 significa permiso de lectura. 2 permiso de escritura y 1 permiso de ejecución. Sumando estos valores vemos que un archivo puede tener los siguientes permisos (por cada tipo de usuario):


4= lectura
2= escritura
1= ejecución

6 (4+2)= lectura y escritura
5 (4+1)= lectura y ejecución
3 (2+1)= escritura y ejecución
7 (4+2+1)= lectura, escritura y ejecución

Todo ello para los tres tipos de usuario.

Asi, un chmod file 777 significa que owner, group y others tienen permiso de lectura, escritura y ejecución. chmod 766 significa que el owner tiene permiso de lectura, escritura y ejecución, y el group y others permiso de lectura y escritura. Chmod 744 significa que el owner tiene permisos de lectura, escritura y ejecución, y group y others unicamente permisos de lectura.

Como ves, son tres digitos, de izquierda a derecha designan los permisos del owner, group y others.

Vemos a continuación su equivalente en letras:

0  =  ---  =  sin acceso
1 = --x = ejecución
2 = -w- = escritura
3 = -wx = escritura y ejecución
4 = r-- = lectura
5 = r-x = lectura y ejecución
6 = rw- = lectura y escritura
7 = rwx = lectura, escritura y ejecución

Asi, en el ejemplo de antes:

  rw-r--r--

significa que el owner tiene permisos de lectura y escritura (rw-); el group permisos de lectura unicamente (r--) y other, permiso de lectura (r--). ¿como seria el equivamente numerico? sería chmod 644.

La sintaxis para usar chmod con texto:

chmod [ugo][+-][rwx] [nombre_archivo]

Donde [u=user, g=group y o=other]; [+/- activa o desactiva los atributos siguientes] [r=read, w=write, x=execute]

Por ejemplo, chmod go+r index.php significa que asignamos permisos de lectura para group y others en index.php

De esta forma solo cambiamos los atributos que especificamos, pero no alteramos otros compatibles que pudieran estar asignados anteriormente) por ejemplo, no modifica la atribucion anterior a group de un permiso de ejecución).

Si queremos fijar de nuevo todos los permisos, la sintaxis sería:

chmod go=r index.php donde asignamos a group y other permiso de lectura sobre index.php y eliminamos cualquier otro permiso para ambos.

Ten encuenta asimismo que puedes usar comodines:

chmod 644 *.html etc ...

lunes, 9 de julio de 2007

Video Linux suse

Lo que llega a hacer youtube

Para cambiar la fecha en Linux desde la consola escribir:

$ date -d mm/dd/aa
ó
$ date --date=mm/dd/aa

donde mm=mes, dd=dia y aa=año.

Para cambiar la hora desde la consola:

$ date -s hh:mm:ss
ó
$ date --set=hh:mm:ss

donde hh=hora, mm=minuto, ss=segundo

La utilidad screen

Supongo que a todos nos ha pasado alguna vez que trabajando via ssh o telnet se nos ha cortado la conexión y hemos perdido lo que estabamos haciendo. screen nos ayuda a solventar este problema y nos aporta mucho más.


Lo primero que tenemos que hacer es instalar la utilidad screen ya sea desde un paquete deb, rpm o un tar.gz

Básicamente, screen nos permite abrir consolas virtuales y desconectarnos y reconectarnos a ellas. El juego de instrucciones básico que debemos saber es el siguiente

screen

Este comando abre una pantalla nueva, nos aparecerá un mensaje para avisarnos y después de pulsar Intro podemos trabajar en nuestra nueva consola
screen -list

Aqui podemos ver la lista de pantallas que tenemos abiertas, nos interesa especialmente el número que aparece y el estado de la ventana (Atached o Deatached), un listado típico de este comando sería el siguiente

suse@linux:~$ screen -list
There are screens on:
22113.pts-0.servidor (Attached)
21576.pts-0.servidor (Detached)


screen -d

Con este comando liberamos la pantalla en la que estamos trabajando, lo que se esté ejecutando en esa pantalla seguirá en marcha, lo único que hacemos es dejar de verla
screen -r numero

Esto sirve para conectarnos a una pantalla libre, si ejecutamos screen -r 21576 tendriamos acceso a ver que es lo que está pasando en la pantalla 21576
exit

Si estamos en una pantalla, la cierra de forma definitiva

Y eso es todo: tenemos muchas más opciones para investigar, pero para eso está el man.

viernes, 6 de julio de 2007

miércoles, 27 de junio de 2007

Modificar inicio sesion en consola

Si queremos editar los inicios de sesion con un mensaje y demás cosas, tipo modificacion del archivo autoexec.bat de windows lo editaremos en /etc/profile (comun a todos los usuarios)

mensaje de inicio de sesion:

/etc/profile

martes, 26 de junio de 2007

Instalacion deletemail en suse

como no se encuentra por defecto en el pac de suse, lo deberemos de buscar de internet, recompilarlo e instalarlo en nuestro suse.

asi pues primero buscamos gracia a san google el deletemail
...

Como debremos de compilar... recuerdo que hay que tener instalado make install (lo instalamos facilmente a traves de yast2)

para instalar paquetes en formato tar.gz debes primero desempaquetarlos con la siguiete instruccion


tar xvfz paquete.tar.gz


(nota de Jano, ¬¬, ejem ¿como quieres instalar algo desde las fuentes sin compilador?)

hemm... desto, necesitamos como minimo el gcc con yast2 y despues hacemos lo de los pasos sisguientes.

el te creara un directorio con el nombre del paquete ahora lo que tiene que hacer es ingresar al directorio creado
cd directorio_creado_paquete
todos los paquetes traen un instructivo de instalacion por lo general llama INSTALL O README estos te daran una gia,
ahora ejecuta ./configure
despues make .- - - lo compila
make install - - - - instala el programa

Deletemail se puede descargar de aqui
http://www.jhweiss.de/software/deletemail.html

RPM, compilar a partir de un tar.gz

Algunos tar.gz vienen incluyendo la información para convertirse en rpm. No son todos! Sólo los de los autores que se toman en trabajo de incluir la información de spec.

Por ejemplo, el spamassassin y el rkhunter.

Supongamos que queremos instalar el ultimo spamassassin y que sólo tenemos su tar.gz, lo bajamos de aqui: http://spamassassin.apache.org

Ahi bajamos el tar.gz de la ultima versión y ejecutamos:

rpmbuild -ta Mail-Spamassassin-3.1.8.tar.gz


verifica que la versión se corresponda con la que hayas bajado, al momento de éste howto es la 3.1.8

El sistema se demorará un rato compilando y obtendrás el rpm.

Lo mismo puedes intentar con cuando tar.gz encuentres. Te garantizo que la mayoría no compilará pues no contienen el .spec.. pero algunos sí.

Si no lo puedes compilar desde tar.gz con rpm, te sugiero crees un rpm basándote en algún .spec que por ahi encuentres.

jueves, 21 de junio de 2007

Apuntes de un minicurso

Estos son mis apuntes:

Ctrl + Alt + Fn F1, F2, F3... cambia de consola de Linux

comando "top" como el administrador de tareas.
-La columna PID indica la prioridad del proceso y sulue ser desde -20 a 20, es decir -20 = Prioridad Maxima, 0 Normal y 20 Minima prioridad.

Ctrl + alt + Blackspace (la de borrar, no supr) reincia únicamente el entorno gráfico.

para saber la version instalada de linux: "uname -a"

Comando parecido al "type archivo.txt" sería "cat archivo.txt"

Para saber los últimos 1000 comandos usados por un usuario escribiremos el comando "history", si por el contrario queremos buscar un comando llamado ls, escribiremos "histrory |grep ls" con grep decimos que busque en el contenido.

La carpeta "/home" seria la equivalente al document and settings de windows

"k3b" seria la utilidad de grabación parecida al Nero
"xmms" seria la utilidad equivalente al winamp

"opartool" utilidad gáfica para poder ver las particiones del disco duro.

Particiones en linux:
1 swat (tamaño minimo = memoria del PC x 2) ej. 256mb x 2 = 512MB de swat
/boot /tamaño recomendado 128MB (pero esto depende de la distribución)
El resto del sistema ext3

Otras distribuciones:
wifislax - distribución especifica para crackear redes wifi o bluetooth.
riplinux - Analisis forense del PC (vamos para saber que narices a pasado)

lunes, 18 de junio de 2007

Más sobre mail / mailx

Si lo que queremos es borrar a saco paco todos los mails de todos los usuarios, (hablamos siempre de mail / mailx que quede bien claro) es tan sencillo como hacer un del *.* del dos.

Primero para saber en que directorio se encuentra, es lógico ya que no podemos hacer un del *.* asi por las buenas..

si nos situamos en el directorio /var/mail/ y realizamos un dir o un ls podremos ver una lista con todos los usuarios que tienen correo.

pues bien aque escribiremos como root o con un usuario que tenga permisos para ello "rv *" y con esto ya hemos borrado todos los correos de todos los usuarios.

otra cosa ya mucho más aburrida seria utilizar el comando mailx -u nombreusuario y una vez dentro escribir "d *" para que borrara todos los mensajes, esta forma "rm *" es muy practica si no queremos entretenernos a borrar mails o simplemente no queremos saber saber nada de lo sucedido (lo que seule pasar a veces con el visor de suecesos de windows)

Tema relacionado

miércoles, 13 de junio de 2007

Tareas, Procesos y Administrador de tareas

Tareas y procesos



En este punto tendremos que empezar a determinar que es un proceso y una tarea. Anteriormente dijimos que un programa se transformaba en proceso en el momento en que este se ejecutaba y estaba en memoria. Además del nombre que el proceso recibe, que es el nombre del programa que esta corriendo, recibe también un número identificativo llamado PID (process ID, o ID de proceso). Si ejecutamos el comando ps veremos los procesos que están ejecutando en este momento con nuestro UID, es decir que estamos corriendo nosotros mismos


[shrek@pantano:~]$ ps
PID TTY STAT TIME COMMAND
172 p0 S 0:00 -bash
184 p0 R 0:00 ps
[shrek@pantano:~]$


Se puede ver que están corriendo dos procesos, el bash (que es el intérprete de comandos) y el proceso ps que es el que estamos usando en este momento en una terminal determinada. Como se puede ver el primer número es el PID que el sistema le asigna al proceso y en la columna COMMAND se puede ver el nombre del proceso. De ninguna manera estos son todos los procesos que se están ejecutando en el sistema. Si se quisieran ver todos los procesos tendrían que poner ps -ax con lo que obtendrían un listado con todos los procesos que se estén ejecutando. Como se puede apreciar, están ambos procesos ejecutándose al mismo tiempo, pero solo uno de ellos esta activo, el comando ps. Nos podemos dar cuenta de esto ya que en la columna STAT aparece en la línea del bash la letra S de SLEEP, ya que en ese momento el intérprete de comandos esta esperando a que el proceso ps termine. Y es aquí donde esta la diferencia entre proceso y tarea. Aunque ambos son procesos, una tarea se refiere al proceso que esta corriendo. Este calificativo solo lo da el shell del sistema cuando se utilizan los controles de tareas dado que no todos los intérpretes de comandos soportan este tipo de control.

Primer y segundo plano



Cualquier proceso puede estar en primer o segundo plano. Lo único a tener en cuenta es que solo un proceso estará en primer plano al mismo tiempo y es con el que estemos trabajando e interactuando en ese momento. Un proceso que este en segundo plano no recibirá ninguna señal de parte nuestra, es decir que no nos podemos comunicar con él a través, por ejemplo, del teclado. La utilidad de enviar un programa a segundo plano esta dada por el hecho de que existen tareas que no requieren de nuestro control para que se ejecuten. Por ejemplo, bajar algún archivo de Internet, compilar el kernel u otro programa. Estas son tareas que pueden ser lanzadas tranquilamente en segundo plano. Para lanzar un proceso en segundo plano, tendremos que poner a continuación del comando el símbolo &. Para ejemplificar esto usaremos el comando find y dejaremos que busque todos los archivos que existen en el disco


[shrek@pantano:~]$ find / -name "*"


Esto nos mostraría una lista bastante larga de archivos por pantalla y nos quedaríamos sin el control del intérprete de comandos mientras esta ejecutándose. Podríamos usar el dispositivo null, que si recuerdan era como un agujero negro donde todo lo que se enviaba a él desaparecía, para redirigir la salida y que no saliera por pantalla


[shrek@pantano~]$ find / -name "*" > /dev/null


Igualmente así no contaríamos con la atención de nuestro interprete de comandos hasta que terminara el trabajo el comando find. La forma de tener la atención del shell inmediatamente después de lanzar el proceso find es enviándolo en segundo plano


[shrek@pantano:~]$ find / -name "*" > /dev/null &
[1] 192
[shrek@pantano:~]$


Como se aprecia, regresó de inmediato al shell, pero antes envió un mensaje a la terminal. El [1] representa a un número de trabajo que el shell asigna a cada uno de los procesos que pasa a segundo plano. Inmediatamente después vemos el número de PID del proceso. Podremos identificar al proceso por cualquiera de los dos números mientras se encuentre en segundo plano. Para ver cuantos trabajos están ejecutándose en este momento podemos usar el comando jobs.


[shrek@pantano:~]$ jobs
[1]+ Running find / -name "*" >/dev/null &
[shrek@pantano:~]$


Podremos eliminar un proceso que se esta ejecutando con la ayuda del comando kill seguido bien sea del número de trabajo precedido de un signo % o del número de PID. De esta forma estamos matando al proceso pero puede darse el caso de que este tarde en desaparecer dado que tiene que limpiar el entorno, por esto muchas veces parecerá que no nos a hecho caso. En realidad el proceso esta haciendo una limpieza del sistema evitando así el mal funcionamiento del mismo y/o una inconsistencia en los datos con que trabajaba. Como ejemplo usaremos otro comando muy típico, el comando yes. Este comando enviará a la salida estándar continuamente la letra y. Sirve este comando para que en caso de que se requiera contestar afirmativamente a las peticiones de un programa pudiéremos mediante una redirección contestarle con un y a cada pregunta. Si lo ejecutáramos sin redirigir la salida a /dev/null, nos llenaría la pantalla con una columna infinita de y. Por esto lo enviaremos a segundo plano redirigiendo la salida y luego lo mataremos con el comando kill.


[shrek@pantano:~]$ yes > /dev/null &
[1] 201
[shrek@pantano:~]$ kill %1
[shrek@pantano:~]$ jobs
[1]+ Terminated yes > /dev/null &
[shrek@pantano:~]$


Como podrán ver, en el momento en que se mando el comando kill, no hubo ningún mensaje. Solo después de ejecutar el comando jobs se nos informo que el trabajo número 1 había finalizado (TERMINATED). Podemos también hacer lo mismo empleando el número de PID con lo que obtendremos idénticos resultados.


[shrek@pantano:~]$ kill 201


Como parar y relanzar tareas



Los procesos pueden ser suspendidos temporalmente hasta que nosotros dispongamos, para así relanzarlos y que continúen ejecutando donde se habían quedado. Esto es de gran utilidad. Supongamos que se esta trabajando con el editor de texto Vi y no queremos trabajar en otra consola, solo tenemos que enviar al programa Vi a dormir un rato y tendremos el intérprete de comandos a nuestra disposición. En la mayoría de los programas, se envía una señal de terminación utilizando las teclas Ctrl-C, para poder enviar un trabajo a dormir utilizaremos otra combinación de teclas Ctrl-Z. Hay que tener en cuenta que no es lo mismo un trabajo en segundo plano que uno que es enviado a dormir. Un trabajo en segundo plano sigue ejecutándose, en cambio uno que se envía a dormir queda esperando en el lugar donde estaba hasta que sea despertado. Para ejemplificar esto, enviaremos al comando yes a segundo plano y luego lo pondremos a dormir.


[shrek@pantano:~]$ yes >/dev/null &
[shrek@pantano:~]$ yes >/dev/null


Ahora presionamos Ctrl-Z


[shrek@pantano:~]$ yes >/dev/null &
[shrek@pantano:~]$ yes >/dev/null
[2]+ Stopped yes >/dev/null
[shrek@pantano:~]$ jobs
[1]- Running yes >/dev/null &
[2]+ Stopped yes >/dev/null


Como pueden ver, el proceso que se envió a segundo plano todavía se esta ejecutando (Running), en cambio la que se mando dormir estaparada esperando que la relancemos (Stopped). Para ponerlo en primerplano o despertarlo a cualquiera de los dos podemos usar el signo "%"seguido del número del proceso o bien el comando fg.


[shrek@pantano:~]$ %1
yes >/dev/null &


Ahora presionamos Ctrl-Z


[shrek@pantano:~]$ fg %1
yes >/dev/null


Podremos enviar también un comando que esta durmiendo a que ejecute en segundo plano a través del comando bg


[shrek@pantano:~]$ jobs
[1]- Stopped yes >/dev/null
[shrek@pantano:~]$ bg %1
[1]+ yes >/dev/null &
[shrek@pantano:~]$ jobs
[1]+ Running yes >/dev/null &


Cabe decir que tanto fg como bg son comandos internos del intérprete de comando. Esto es así porque es el mismo intérprete quien hace el control de tareas. Puede darse el caso de que existan intérpretes de comandos que no tengan soporte para control de tareas.

Programas de seguimiento (ps y top)



Los sistemas GNU/Linux cuentan varios programas para efectuar el seguimiento de los procesos que se están ejecutando en el sistema. Entre los mas usados en la interfase de texto están los programas ps y top.

ps



Sin ninguna opción dará la lista de procesos que están corriendo desde la terminal donde se ejecuto el ps


[shrek@pantano:~]$ ps
PID TTY TIME CMD
9648 tty2 00:00:02 bash
9659 tty2 00:00:00 ps
[shrek@pantano:~]$


Las columnas que nos quedan por explicar son TTY y TIME. TTY identifica la consola donde se esta ejecutando el proceso. En este caso es una terminal local. La columna TIME nos indica la cantidad de tiempo total que el proceso se ha estado ejecutando. Como se puede ver el tiempo es de 2 segundos. Aunque este horas el sistema encendido, el bash pasa su mayor parte del tiempo esperando que se le envie algún comando para ejecutar, mientras tanto esta esperando dormido. Puede verse en la columna STAT en que estado se encuentra el programa. Por ejemplo, que vemos que el bash en el momento de ejecutarse el comando ps esta dormido (S) y que el proceso ps esta activo (R). Si añadimos la opción l tendremos un listado largo del comando ps. En algunas versiones se usa la opción -l


[shrek@pantano:~]$ ps l
F UID PID PPID PRI NI VSZ RSS WCHAN STAT TTY TIME COMMAND
4 100 9648 1 9 0 4368 1400 11b1d0 S tty2 0:01 -bash
4 100 9660 9648 17 0 2676 732 - R tty2 0:00 ps l


Dentro de esta información esta la columna del UID que identifica el dueño del proceso. El PID del proceso y también el PPID que es el PID del proceso padre. Podemos apreciar que el padre del comando ps l es el -bash. NI viene de nice y es un nivel que se otorga a un proceso para requerir cierto privilegio. En este caso tiene uno muy bajo por ende un proceso que tenga un valor mayor tendrá más tiempo de procesador para trabajar. SIZE es el tamaño que tiene el proceso. RSS es la tamaño del proceso que se encuentra residente en la memoria. WCHAN es el nombre de la función del kernel donde el proceso esta durmiendo. Esta expresado en forma hexadecimal.

Otra forma en la que podemos ver el padre de cada proceso es a través del modificador f.


[shrek@pantano:~]$ ps f
PID TTY STAT TIME COMMAND
9648 tty2 S 0:02 -bash
9660 tty2 R 0:00 \_ps f
[shrek@pantano~]$


Aquí se puede ver que el comando ps f depende del -bash.

top



Ahora bien, el comando ps nos muestra una radiografía de los procesos en el momento, pero no nos muestra los cambios que se van teniendo. Para esto contamos con el comando top. El mismo muestra en tiempo real la situación de los procesos que se están ejecutando en el sistema, ordenados por defecto según el porcentaje la CPU que estén usando. Al ejecutarlo se podrá ver otra información adicional, como la cantidad de usuarios que están en el sistema, cuantos procesos están corriendo y de estos cuantos estas activos, cuantos durmiendo, cuantos en proceso de terminar (ZOMBIE) y cuantos finalizados. Además se podrá ver la cantidad e memoria física total, la cantidad usada y la cantidad libre; así como también se podrá obtener la misma información de la memoria swap.

Lo más importante es que esta información de ira actualizando automáticamente cada tanto tiempo, por defecto 5 segundos, y que podremos ir alterando lo que va mostrando. Por ejemplo podemos hacer que ordene los procesos de acuerdo a la cantidad de memoria que esta usando con solo presionar la tecla M. U ordenarlos de acuerdo al tiempo que llevan corriendo. Otra utilidad es que podríamos matar algún proceso con solo presionar la tecla k y luego darle el número de PID.

El listado que nos mostrará contendrá el número de PID, el usuario que lo está ejecutando, la prioridad del proceso (PRI), el valor nice (NI), el tamaño del proceso (SIZE), el tamaño total del proceso junto con los datos que maneja (RSS), el tamaño usado por el proceso en la memoria (SHARE), el estado del proceso(STAT), el tamaño de las librerías del proceso (LIB), el porcentaje de CPU ( %CPU) y de memoria (%MEM) así como también el tiempo de ejecución (TIME) y el nombre del proceso (COMMAND).

Algunos comandos

comandos pasa saber los ID de los procesos:

ps aux

kill -9 + [nºID del proceso] mata el proceso actual. Ejemplo: kill -9 7563

martes, 12 de junio de 2007

¿Cómo puedo leer y contestar correo con mail/mailx?

¿Cómo puedo leer y contestar correo con mail/mailx?



El correo electrónico en Linux no puede considerarse como un extra al sistema operativo, sino que forma parte del mismo pues es una característica casi inherente a todo Linux. Esto quiere decir que aunque no hayamos instalado ningún cliente de correo como Netscape o Pine, probablemente dispondremos en el sistema de herramientas ya preparadas para ello.

Dentro de casi cualquier sistema Linux disponemos de un programa básico de email en consola (modo texto) llamado Mailx que nos permitirá el envio, lectura y contestación de mensajes de correo electrónico. En resumen, posibilita el envío de texto y datos dentro de una estructura coherente llamada mensaje, con su cabecera (campos: FROM (persona que envía el mensaje), TO (persona destinataria del mismo), SUBJECT (tema del que trata el mensaje) y CC o carbon copy (lista de personas que recibirán una copia del mismo).) y su BODY (cuerpo del mensaje), pudiendo incluir además ficheros añadidos que vienen incluidos dentro del paquete del mensaje (attach).

Para explicar el uso de mailx se va a usar un sencillo ejemplo en un máquina con un sólo usuario: sromero, además del obligatoriamente existente root (puede obternerse la lista de usuarios presentes en el sistema y en qué terminal están trabajando simplemente ejecutando la orden who). Suponga os que somos el usuario sromero y queremos enviarle un mensaje a root para testear las capacidades de envio de email. La manera más sencilla de enviar un mensaje a un usuario de la red es ejecutar mail :


[sromero@localhost info]$ mail root
Subject: Prueba de MailX.
Esto es el cuerpo del mensaje. Es una prueba de mailx.
Un mensaje se acaba con un punto (.) al principio de línea.
.
Cc: (intro)


Al ejecutar mail root se nos ha preguntado el tema (subject), el cuerpo del mensaje (acabado en punto (.)), y a quién se le deseaba enviar copias del mismo (Cc), cosa que hubiera sido bastante útil si nuestro mensaje fuera una invitación a un grupo de amigos o una información para un grupo concreto de personas. Tras escribir esto, el mensaje escrito se graba como un fichero de texto (con el mismo nombre que el destinatario del mensaje, y al que se añadirán más mensajes conforme se le vayan enviando a dicho destinatario) en el directorio /var/spool/mail, a la espera de que el usuario destino los lea y vayan siendo eliminados del mismo.

Si root está conectado o entra más tarde en cualquier terminal del sistema, recibirá un mensaje de aviso indicando que el sistema ha detectado la llegada de correo para el usuario:


You have mail.


Para realizar la lectura del correo electrónico, simplemente se invoca al programa mail, obteniendo una lista del correo pendiente y esperando el programa a que el usuario lo lea, responda, borre o almacene para más tarde:

[root@localhost /root]# mail
Mail version 8.1 6/6/93. Type ? for help.
"/var/spool/mail/root": 3 messages 3 new
>N 1 sromero Thu Jul 30 17:04 17/55 "Prueba de MailX."
N 2 sromero Thu Jul 30 17:15 17/50 "Pregunta sobre adm"
N 3 sromero Thu Jul 30 17:16 15/44 "Felices vacaciones!"
& _



Como puede verse, mail nos muestra los mensajes pendientes (en este caso 3) por responder, con su usuario de origen (sromero), la fecha y el tema, con el cursor virtual (>) situado sobre el primero (es decir, indicando sobre cual actuará una orden de lectura, respuesta o borrado), y con un promtp (el carácter &) a la espera de recepción de órdenes sobre qué hacer con dicho correo.

Estas órdenes son:


'número' -> Listar el mensaje .
't' -> lista el mensaje actual (el apuntado por >)
'n' -> Pasar al siguiente mensaje y visualizarlo.
'd' -> Borrar mensaje.
'e' -> Editar mensaje
'r' -> Responder mensaje.
'q' -> Salir de mailx.



A la mayoría de estas opciones se les puede pasar un nº de mensaje (desde 1 hasta n) para indicar sobre qué mensaje realizar la acción (ejemplo 'd 3' o 'delete 3'). Otras opciones, obtenidas mediante la ayuda de mailx, son:

& ?
Mail Commands
t listar mensaje
n ir al mensaje especificado y listarlo.
e editar mensaje
f ver cabeceras del mensaje
d borrar mensaje
s añadir mensajes a un fichero
u recuperar mensajes borrados
R Responder a los remitentes del mensaje
r Responder al remitente y a todos los destinatarios.
pre hacer ir los mensajes de nuevo a /usr/spool/mail
m enviar mensaje a los usuarios especificados.
q salir grabando mensajes en mbox
h mostrar cabeceras activas.
! permite ejecutar una shell o comandos de shell


En el caso de no disponer de correo en ese momento, mail nos avisa con un:

[root@localhost root]# mail
No mail for root



Otro fichero asociado es el fichero .signature de nuestro directorio home, utilizado como fichero de firmas y cuyo contenido es incluido al
final de los emails escritos y respondidos por nosotros, pudiendo editarse y rellenarse con cualquier editor estándar de Linux para
incluir nuestra firma personal. Este fichero es utilizado por la mayoría de gestores de correo de Linux como fichero de firmas por
defecto, tal y como hace Mail, Pine, Netscape, Kmail, etc.

Algunos ejemplos:
Para borrar todos los mensajes desde un Id hasta otra...

borrar mensajes del 22 al 30 --> "d 22-30"

Imprimir desde linea de comandos

Tal y como vemos en esta foto, dentro de yast2 configuraremos la impresora en red de la sigueinte forma:

Nombre para la impresion:
Este será el nombre de la cola de impresion o nombre del puerto como queramos llamarle.

Descripción de impresora:
Esto es básicamente para saber de que impresora se trata.


lpr -P HP4500ADMIN [nombrearchivo a imprimir]


en nuestro ejemplo enviamos a imprimir un archivo de texto a la impresora hp de administracion por ejemplo.




Imprimir bajo Linux




Esta sección comenta cómo imprimir ficheros, examinar la cola de impresión,
eliminar trabajos de la cola, formatear ficheros antes de imprimirlos, y
configurar tu entorno de impresión.




Histórico




El sistema de impresión de Linux (el sistema lp) es una adaptación del código
escrito por los Regents de la Universidad de California para la versión

Berkeley Software Distribution (BSD) del sistema operativo UNIX.




Lo básico de imprimir




La forma más simple (con mucho) de imprimir en el sistema operativo Linux es
enviar el fichero a ser impreso directamente al dispositivo de impresión. Una
manera de hacer esto es usar el comando cat. Como usuario root, uno puede hacer
lo siguiente:






# cat tesis.txt > /dev/lp



En este caso, /dev/lp es un enlace simbólico al verdadero dispositivo
de impresión (una matricial, láser, tipográfica o plotter). Mira la página del
man ln(1) para más información acerca de enlaces simbólicos.



Para el propósito de la seguridad, sólo el usuario root y los usuarios de su
mismo grupo como el demonio de impresión son capaces de escribir directamente
a la impresora. Es por esto por lo que se tienen que usar comandos como lpr, lprm y lpq para acceder a la impresora.


Por esto, los usuarios tienen que usar lpr para imprimir un fichero. El
comando lpr es responsable de preocuparse por el trabajo inicial para
imprimir un fichero, pasando entonces el control a otro programa, lpd, el

demonio de las impresoras de líneas.


Este demonio le dice entonces a la impresora cómo imprimir el fichero.


Cuando lpr es ejecutado, primero copia el fichero a un cierto directorio
(el directorio de spool) donde el fichero permanece hasta que lpd lo
imprime. Una vez se le dice a lpd que hay un fichero para imprimir, creará

una copia de sí mismo (lo que los programadores llaman un 'fork'). Esta
copia imprimirá nuestro fichero mientras la copia original queda esperando otras
peticiones. Esto permite que hayan múltiples trabajos a la vez en una cola.


Las sintaxis de lpr(1) es bastante familiar,






$ lpr [ opciones ] [ nombre_fichero ... ]



Si no se especifica un nombre de fichero, lpr asume que la entrada
será efectuada por la entrada estándar (normalmente el teclado o la salida de
otro programa). Esto permite que el usuario redirija la salida de un programa
al dispositivo de impresión. Por ejemplo:







$ cat tesis.txt | lpr



o algo más potente, como





$ pr -l60 tesis.txt | lpr



El comando lpr acepta varios argumentos en la línea de comandos que
permiten al usuario controlar cómo trabaja. Algunos de los argumentos más
ampliamente usados son: -Pprinter especifica la impresora a usar, -h

suprime la impresión de la página, burst, -s crea un enlace simbólico en
lugar de copiar el fichero completo al directorio de spooling (útil para
ficheros grandes), y -#num especifica el número de copias a imprimir.
Un ejemplo de interacción con lpr podría ser algo como






$ lpr -#2 -sP dj tesis.txt



Este comando crearía un enlace simbólico al fichero tesis.txt en el
directorio de spool de la impresora llamada dj, donde debería ser
procesado por lpd. Además debería imprimir una segunda copia de tesis.txt.



Para ver un listado de todas las opciones que reconoce lpr, ver la página
del man lpr(1).




Viendo la cola de impresión




Algunas veces es útil saber qué trabajos están actualmente en una cola de
impresión particular. Esta es la única tarea del comando lpq.



Para ver qué hay en la cola de la impresora por defecto (definida por /etc/printcap), usa





$ lpq
lp is ready and printing
Rank Owner Job Files Total Size
active mwf 31 tesis.txt 682048 bytes





Cancelando un trabajo de impresión




Otra útil característica para cualquier sistema de impresión es la capacidad de
cancelar un trabajo que ha sido 'encolado' anteriormente. Para hacer esto,
usa lprm.





$ lprm -




El comando anterior cancela todos los trabajos de impresión que son propiedad
del usuario que envió el comando. Se puede cancelar un trabajo de forma
individual obteniendo primero el número del trabajo usando lpq, dando
entonces el número a lprm. Por ejemplo





$ lprm 31




cancelaría el trabajo 31 (tesis.txt) en la impresora por defecto.

Comandos Linux Vs DOS



DOS Linux

CD nombredir\ cd nombredir/
COPY fich1 fich2 cp fich1 fich2
DEL fichero rm fichero
DELTREE directorio rm -R directorio/
DIR ls
EDIT fichero vi fichero
emacs fichero
joe fichero
FORMAT fdformat
mount, umount
HELP comando man comando
MD directorio mkdir directorio/
MOVE fich1 fich2 mv fich1 fich2
NUL /dev/null
PRINT fichero lpr fichero
PRN /dev/lp0,
/dev/lp1
RD directorio rmdir directorio/
REN fich1 fich2 mv fich1 fich2
RESTORE tar -Mxpvf device
TYPE fichero less fichero
Cambiar fecha/hora

El fichero crontab o Programador de tareas


Cada uno de los ficheros crontab de configuración
están formados por asignaciones de valores a
variables de entorno y una línea por actividad que
queramos programar su ejecución. Las líneas
en blanco, los espacios iniciales y los tabuladores se
ignoran.




Los comentarios en este fichero son líneas completas
cuyo primer carácter que no sea un espacio es un
carácter #.



Las línea de programación de tareas siguen un
formato estándar formada por cinco campos que
indican un instante de ejecución y la ruta del
fichero que hay que ejecutar.




Los campos que describen el instante de ejecución
son por orden:



minuto 0-59



hora 0-23




día del mes 0-31



mes 0-12 (o sunombre con las tres primeras letras en
inglés)



dia semana 0-7 (0 or 7 indica domingo, o su nombre con las
tres primeras letras en inglés)




Un campo puede contener:



Un un asterisco (*) para indicar todos los posibles
valores.



Un valor fijo para indicar un minuto, hora, día o
mes.



Un rango de valores, dos números separados por
guiones. Un rango puede terminar en /numero para indicar el
incremento.




Una lista de valores separados por comas.



Un valor */numero para indicar todos los valores con
incremento de "número".



Ejemplos




Vemos diversas formas de configurar la ejecución de
la orden /usr/bin/fetchmail:



Ejecutarlo a las 12 de la noche cada día









"computeroutput">0 0 * * * /usr/bin/fetchmail



Ejecutarlo a las 12 :15 de la noche cada día









"computeroutput">15 0 * * * /usr/bin/fetchmail




Ejecutarlo 15 después de cada hora exacta, a las y
cuarto









"computeroutput">15 * * * * /usr/bin/fetchmail



Ejecutarlo el día 1 del mes a las 6:30









"computeroutput">30 6 1 * * /usr/bin/fetchmail



Ejecutarlo cada dos día a las 6:30









"computeroutput">30 6 */2 * * /usr/bin/fetchmail




Ejecutarlo los días 1,3,7,12,15 y 20 del mes a las
6:30









"computeroutput">30 6 1,3,7,12,15,20 * * /usr/bin/fetchmail



Ejecutarlo el día 1 de julio a las 6:30









"computeroutput">30 6 1 7 * /usr/bin/fetchmail



Ejecutarlo los lunes cada 10 minutos









"computeroutput">*/10 * * * 1 /usr/bin/fetchmail




Ejecutarlo de lunes a viernes a las hora en punto









"computeroutput">0 * * * 1-5 /usr/bin/fetchmail



Crontab predeterminados



Los sistemas, para facilitar la programación de
tareas de administración, disponen de un crontab
estándar que permite ejecutar tareas cada hora, cada
día, cada semana o cada mes; se crea un directorio
para cada una de estas tareas y todos los ficheros
ejecutables que pogamos allí, normalmente guiones de
shell, se ejecutarán automáticamente. Los
directorios en cuestión son, /etc/cron.hourly,
/etc/cron.dail, /etc/cron.weekly y /etc/cron.monthly.




El fichero /etc/crontab que ejecuta los contenidos de estos
directorios quedaría como:








SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly



Comandos más habituales de vi

Pongo aqui un breve resumen de los comandos más utilizados en el editor de texto predeterminado en linux (algo parecido como el edit del ms-dos), este se llama vi e incluso existe una versión mejorada llamada vim pero yo recomiendo nano (que es mucho más intuitivo de utilizar

Comandodescripción
iinsertar antes del cursor
aañadir detrás del cursor
oañadir una línea en blanco
xborrar un carácter
jborrar el final de línea (une dos líneas)
ddborra la línea completa
udeshacer la última edición
:qsalir
:q!salir sin guardar
:wguardar
:wqguardar y salir
:set numuestra números de línea
:set nonuoculta números de línea
:n copy mcopia la línea n detrás de la línea m
:n1, n2 copy mcopia desde la línea n1 hasta la línea n2 detrás de la línea m
:%s/b/r/donde b = cada de texto a buscar y r cada de texto por la que reemplazar

configurar un usuario fetchmail

Previamente deberiamos de tenere instalado en nuestro linux lo siguiente:

fetchmail
deletemail

el primero sirve para trabajar con los e-mail: lo coge de un servidor externo pop3 y lo movemos a nuetro exchange, vamos que trabaja sobre smtp para que nos hagamos una idea.

Mientras que el delete mail lo que hace es que cuando pase x tiempo elime los mensajes del servidor.

Esto de mantener los mensajes en el servidor es por propia copia de seguridad.

Partiendo el usuario origen que vamos a llamarlo UsrOrigen vamos a crear otro usuario llamado UsrDestino, el primero sus datos en el servidro externo son:






Hosting ExternoExchange
Dirección:emailusrorigen@dominio.extemailusrdestino@dominio.local
Login del servidor:pop3usrorigenexchgusrdestino
Contraseña de la cuenta:passwordusrorigenpasswordusrdestino
Servidor pop3:pop3.dominio.extsrvexchange


que archivos copiar:
/home/usuarioorigen/.fetchmailrc
/home/usuarioorigen/.deletemailrc

ambos archivos se han de copiar dentro de la carpeta home de cada usuario, este paso lo haremos con el usuario root

Contenido del archivo .fetchmailrc

poll pop3.dominio.ext protocol pop3
username [nombre de usuario pop3], with password [contraseña usuario pop3], to "[login]" here;


[nombre de usuario pop3]
Aqui pondriamos el login de pop3 que solemos colocar en el outlook, en nuestro ejemplo será pop3usrorigen

[contraseña usuario pop3]
Yo creo que esta muy claro es colocar la contraseña que le toque, bueno por si eres muy cazurro en nuestro ejemplo seria: passwordusrorigen

[login]
Aqui ponemos lo que bienen antes de @dominio.local es decir la cuenta del usuario de destino (exchange), me explico: recordamos que la cuenta de origen es emailusrorigen@dominio.ext y queremos enviarlo a emailusrdestino@dominio.local, pues aqui tan solo hemos de colocar emailusrdestino. Esto no necesariamente ha de ser igual al del usuario que inicie la sesion en el exchange.

Contenido del archivo .deletemailrc


GLOBAL # Valores por omision
# ssl: no # use SSL for secure IMAP connections
days: 15 # delete mail which is older than two weeks

ACCOUNT # Cuenta del usuario
host: pop3.dominio.ext # POP server
user: pop3usrorigen # username
pass: passwordusrorigen # password



Paso a paso:
ssl: no por defecto esta en este valor si necesitaramos habilitar ssl para el acceso al correo substituiriamos 'no' por 'yes'

days El número de dias que se han de mantener los correos en el servidor externo, en nuestro caso le hemos puesto 15 dias, este valor variará dependiendo del trafico de datos que se generen.

host nombre del servidor externo
user usuario con el que se ha de iniciar la sesion en el servidor externo
pass Como és lógico es la contraseña del usuario que ha de inciar sesion en el servidor

ahora tan solo falta configurar preparar el crontab o Tareas programadas.

para ello deberemos de iniciar en linux como el usuario qu equeramos realizar la programación. para ello en la linea de comandos escribiremos crontab -e el hecho de colocar -e es para editar el programador de tareas para ese usuario.

Crontab

*/10 * * * * /usr/bin/fetchmail -k -S [nombre DNS del servidor de exchange] -D [nombre del dominio] -U
00 12 * * 0 /usr/bin/deletemail -u

Notas generales Fetchmail Exchange

Para configurar los ficheritos de cada usuario

Fechmail.rc
Deletemail.rc

Ambos se encuntran en la carpeta home de cada usuario

Programador de tareas
Crontab –e
1-Lunes
0-domingo

Para salir y guardar cambios en vi :wq

-K deja copia en el servidor
-S host smtp en nuestro caso EXCHANGE
-D dominio (dominio.com)
-u sabe si es nuevo los mails o no, si no le ponemos esto, se descargaria todos los mails constantemente.

Para ver las entradas del programador de tareas:

Contrab –e
Cambiar chmod 600 los ficheritos de los usuarios

Chown para cambiar el propietario y deletemail.

chown nuevopropietario nombredelficherito” le cambiamos el propietario a .fetchmailrc


Para copiar usamos "cp archivo.origen archivo.destino"