4/13/2008


Comandos básicos de Vi/Vim

.===============================.
|«««««« PRÓLOGO »»»»»»|
'==============================='

Vi es el editor estándar de los Sistemas Operativos de la familia Unix/Linux. En principio puede resultar un poco difícil,

sobre todo para los usuarios de Windows.Sin embargo, dado que es prácticamente el único editor que puedes encontrar

pre-instalado en cualquier PC o Servidor con Unix/Linux, aprender a usarlo es absolutmatamente indispensable.

.===============================.
1.=|«««««« INVOCACIÓN VI »»»»»»|
'==============================='

$vi------------------------Editar un texto sin nombre
$vi archivo----------------Editar un archivo (nuevo o no)
$vi archivo1 archivo2------Editar lista de archivos
$vi +n archivo-------------Editar archivo en la línea n
$vi +/txt archivo----------Editar archivo en la 1a línea donde aparece txt


.========================================.
2.=|«««««« MOVIMIENTOS DEL CURSOR »»»»»»|
'========================================'

Arriba----k
Abajo-----j
Derecha---h
Izquierda-l

0---------Inicio de línea
$---------Fin de línea
w---------Word: Avanzar palabra
b---------Back: Retroceder palabra
e---------End: Al final de palabra
H---------Home: Esquina sup. izq. de la ventana
L---------Last: Esquina inf. izq. de la ventana
crtl+u----Window up: Subir ventana
crtl+d----Window down: Bajar ventana
crlt+b----Page back: Retroceder página
crtl+f----Page forward: Avanzar página
nG--------Go: Salta a la línea n.
1G--------A la primera línea
$G--------A la última línea
fcar------Buscar en la línea el carácter car (hacia delante)
Fcar------Buscar en la línea el carácter car (hacia atrás)



.================================.
3.=|«««««« INSERTAR TEXTO »»»»»»|
'================================'
i---Insertar (delante del cursor)
I---Insertar al principio de la línea
a---Añadir (detrás del cursor)
A---Añadir al final de la línea
o---Insertar una línea debajo de la actual
O---Insertar una línea encima de la actual


.==============================.
4.=|«««««« BORRAR TEXTO »»»»»»|
'=============================='

x---Borrar caracter actual
X---Borrar caracter anterior
dd--Borrar línea actual
D---Borrar hasta final de línea
dw--Borrar palabra


.===============================.
5.=|«««««« CAMBIAR TEXTO »»»»»»|
'==============================='

rcar--Reemplazar el caracter actual por car
R-----Reemplazar texto desde la posición del cursor
s-----Substituir el caracter actual por texto a insertar
S-----Substituir la línea actual
C-----Cambiar hasta el final de la línea
cw----Cambiar palabra
J-----Unir a la línea actual la siguiente


.================================.
6.=|«««««« COPIAR Y PEGAR »»»»»»|
'================================='

yy----Copiar en el buffer la línea actual
nyy---Copiar en el buffer n líneas desde la actual
p-----Pega el buffer detrás del cursor
P-----Pega el buffer delante del cursor


.=====================================.
7.=|«««««« BUSCAR Y SUBSTITUIR »»»»»»|
'======================================'

%-------------------Busca el caracter delimitador ( ) [ ] { } que balancea el actual (Dentro de un entorno salta al

delimitador inicial)
/ExpReg-------------Busca hacia delante la expresión regular ExpReg
?ExpReg-------------Busca hacia atrás la expresión regular ExpReg
n-------------------Repite la última búsqueda
N-------------------Repite la última búsqueda en el sentido contrario
:s/txt/txt2---------Substituye el texto txt por txt2 la primera vez que aparece en la línea
:s/txt/txt2 /g------Substituye todas las apariciones de txt por txt2 en la línea
:m,n s/txt/txt2 /g--Substituye en el rango de líneas [m,n]


.====================================.
8.=|«««««« REPETIR Y DESHACER »»»»»»|
'====================================='

.---Repetir último comando de actualización (Borrado/Inserción/Cambio)
u---Deshacer último comando de actualización
U---Deshacer todos los cambios en la línea actual


.====================================.
9.=|«««««« COMANDOS DEL SHELL »»»»»»|
'====================================='

:sh-----------Invoca un nuevo shell. Al salir continua la edición
:!CmdShell----Ejecuta un comando del sistema operativo
:r!CmdShell---Ejecuta un comando del S.O. e inserta su salida en la posición del cursor
:!!-----------Repite el último comando ejecutado en un shell


.===========================================.
10.=|«««««« OPERACIONES CON ARCHIVOS »»»»»»|
'==========================================='

:w----Graba las modificaciones efectuadas en el archivo
:w----archivo Escribe el texto actual en archivo (Sólo si no existía)
:q----Salir (si no hay cambios)
:q!---Salir (sin grabar)
:wq---Guardar cambios y salir
:x----Guardar cambios y salir
ZZ----Guardar cambios y salir


.==========================================.
11.=|«««««« ESTADISTICAS DE ARCHIVO »»»»»»|
'=========================================='

:=------Muestra el número total de líneas del archivo
:.=-----Muestra el número de línea actual
crtl+G--Muestra el nombre del archivo, línea actual, número total de líneas y porcentaje recorrido del archivo.


.======================================.
12.=|«««««« OPCIONES DE ENTORNO »»»»»»|
'======================================'

:set opción-----Activa la opción de vi correspondiente
:set noopción---Desactiva la opción de vi correspondiente

all-------Muestra todas las opciones y sus valores
number----Muestra numeración de líneas
list------Muestra caracteres de control
ic--------Ignora mayúsculas/minúsculas en las búsquedas

Fuente


Evitar ejecución de forkbombs

Ultimamente han comenzado a circular las Fork Bombs, que no son otra cosa que codigos de programación, los cuales consumen recursos de nuestra PC, dejandola totalmente inutilizable, vamos a ver algunos ejemplos y luego distintas soluciones que podemos darle a este problema
.
Uno escrito con Perl:

perl -e "fork while fork"

Otro con BASH:
:(){ :|:& };:

Este ultimo es el mas conocido y que se ha puesto de moda. Y es una versión ofuscada de:

forkbomb () {
forkbomb | forkbomb &
}
forkbomb

Lo que hace, es una función recursiva que se va llamando a si misma dos veces, creando un bucle interminable y consumiendo toda la memoria de nuestro sistema hasta dejarlo inutilizable, por lo cual no nos queda otra alternativa que reiniciar nuestro sistema.
Para ejecutar este codigo no debemos estar logueados como root, por lo cual cualquier usuario normal lo puede ejecutar y saturar todos los recursos de nuestra PC.

¿COMO SOLUCIONARLO?

Existe un comando interno de BASH llamado ulimit
(para mayor explicacion sobre el comando: man ulimit)
La opcion -u en este comando, nos permite configurar el numero maximo de procesos que los usuarios pueden ejecutar por lo cual, de esta manera al llegar la fork bomb al limite de procesos, no puede sobrepasarlo por lo cual con un valor bien configurado no nos probocaria problemas en el sistema.
Para ello ejecutamos

$: ulimit -u 50
Esta solución seria suficiente para solucionar esto, pero al momento de reiniciar nuestro sistema esta configuración se pierde.
Otra alternativa seria añadirlo al archivo /etc/profile y a /etc/bash.bashrc
Para evitar que se ejecute en sesiones de login y no-login.
Pero la forma estandar de hacerlo es añadiendolo a /etc/security/limits.confNOTA: En todos los script de BASH, como los que veeremos a continuación, todo lo precedido por # se lee como comentario. Siguiendo con el tema en una shell ejecutamos:

$: sudo nano /etc/security/limits.conf

Ponemos nuestra constraseña de usuario y veeremos en pantalla algo como esto:


# /etc/security/limits.conf
#
#Each line describes a limit for a user in the form:
#
#
#
#Where:
# can be:
# - an user name
# - a group name, with @group syntax
# - the wildcard *, for default entry
# - the wildcard %, can be also used with %group syntax,
# for maxlogin limit
#
# can have the two values:
# - “soft” for enforcing the soft limits
# - “hard” for enforcing hard limits
#
# can be one of the following:
# - core - limits the core file size (KB)
# - data - max data size (KB)
# - fsize - maximum filesize (KB)
# - memlock - max locked-in-memory address space (KB)
# - nofile - max number of open files
# - rss - max resident set size (KB)
# - stack - max stack size (KB)
# - cpu - max CPU time (MIN)
# - nproc - max number of processes
# - as - address space limit
# - maxlogins - max number of logins for this user
# - maxsyslogins - max number of logins on the system
# - priority - the priority to run user process with
# - locks - max number of file locks the user can hold
# - sigpending - max number of pending signals
# - msgqueue - max memory used by POSIX message queues (bytes)
# - nice - max nice priority allowed to raise to
# - rtprio - max realtime priority
#
#
##* soft core 0
% hard rss 10000
#@student hard nproc 20
#@faculty soft nproc 20
#@faculty hard nproc 50
#ftp hard nproc 0
% - maxlogins 4
% hard nproc 50
# End of file

Añadimos una linea (en el ejemplo ya esta añadida), con los siguientes valores.

% hard nproc 50

Con esto limitamos a 50 el numero maximos de procesos que puede ejecutar el usuario.
Guardamos la configuracion (Ctrl + O) y salimos (Ctrl + X).
Bien, ya estaria hecho ahora solo basta reiniciar el PC.$ sudo rebootY listo, ya estamos protegidos contra las fork bombs.
¿Como probarlo?, tipeamos lo siguiente:

$ ulimit -a

Y tendremos una salida como esta


core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 20
file size (blocks, -f) unlimited
pending signals (-i) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) unlimited
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 50
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited

Vemos el valor [max user processes] establecido en 50 (50 procesos como maximo puede
ejecutar el usuario).
Por lo cual si somos valientes y nos animamos a probar: :(){ :|:& };: podemos ver que
no pasa absolutamente nada en nuestro sistema y no se cuelga. =)NOTA: Si al configurar el valor de max user processes en 50, reciben cada tanto un error como este: bash: fork: recurso temporalmente no disponible, esto es debido a que su usuario esta ejecutando mas de 50 procesos normalmente, por lo cual para no recivirlo recomiendo modificar el valor a un nivel mas alto, como puede ser 100 (o de acuerdo a la cantidad de procesos que ustedes ejecuten normalmente) pueden saberlo utilizando el comando top.

Fuente

4/12/2008


La impostura tecnológica de Cristina Kirchner

Este tipo de noticias solo trae indignación y nos damos cuenta de quienes nos gobiernas tienen un carapazón de hipocresía tan grande como su ignorancia sobre muchos temas...

------------------------------------------------------------------------------------

El Gobierno pidió la renuncia a dos funcionarios clave en la informatización de la AFIP. Alberto Fernández y el fantasma de las presiones de Microsoft.


Para ambiente tecnológico local, la AFIP es el emblema de lo que no hay que hacer materia de software en el Estado.

Los programas provistos por el fisco están implementados de tal modo que sólo funcionan bajo algunas versiones de Microsoft Windows. Y bajo ninguna circunstancia funcionan con los sistemas operativos de otro proveedor.

Dos tipos molestos. Hace unas semanas, el Gobierno pidió la renuncia de Carlos Achiary, director de la Oficina Nacional de Tecnología Informática (ONTI), y José Carllinni, coordinador del Foro de Responsables Informáticos de la Administración Pública Nacional, dos funcionarios que estaban comenzando a revertir esa situación y trabajando en materia de estándares informáticos abiertos para la administración pública.

Un alto funcionario del Gobierno y un actual empleado de la ONTI contaron a Perfil.com que las presiones de Microsoft para que despidan a Achiary y Carllinni habrían llegado a la oficina de Alberto Fernández. Desbordado por el conflicto con el campo, el ministro contuvo el pedido y los intereses del gigante informático, que es el principal proveedor tecnológico del estado.

Los dos funcionarios ya abandonaron sus oficinas y no quieren dar entrevistas. Los sistemas de la AFIP, lejos de facilitarle los trámites a los contribuyentes, seguirán por un buen tiempo favoreciendo a Microsoft para ofrecer servicios del estado e información pública.

Eso sí, la impostura del Gobierno respecto de políticas tecnológicas, pese a que Cristina Fernández se vanaglorie de la “tasa de natalidad de empresas locales de software”, ya se ve en todo el mundo.

El Informe Global de Tecnologías de la Información que dio a conocer esta semana el Foro Económico Mundial, sostiene que la Argentina retrocedió once puestos en el ranking de desarrollo tecnológico. ¿La causa del retroceso según el informe? "La escasa atención del Gobierno a esta cuestión en su agenda nacional".

El plan digital del gobierno de Cristina Fernández de Kirchner está pasando de ser una incógnita a una seguidilla de errores y falsos anuncios.



* Editor de Perfil.com

Fuente


yes > config &

Este sera un post muy breve orientado a los principiantes en los sistemas GNU/Linux.
¿Alguna vez en un IRC alguien les dijo que tipeen yes > config &?, ¿qué es esto?.

Bien paso a explicar, este es un parecido a una fork bomb (aunque no tiene nada que ver con la funcion fork), se basa de tres partes, el comando en si (yes), la redireccion (>) y la ejecución en el background (&).

  • yes: produce una secuencia infinita de yes (si)
  • >: redirecciona la salida estándar (la terminal, en este caso)
  • config: la redirección va a parar a un archivo llamado config
  • &: ejecuta el proceso en el background (segundo plano, invisible a nuestros ojos).

Bien, como hemos visto yes, al producir una secuencia inifita de si mismo, sera redireccionado a un archivo llamado config, el cual sera ejecutado en el background invisible a los ojos del usuario. Este archivo, comenzara a crecer inmediatamente hasta colapsar la capacidad de almacenamiento quoteada para el usuario, y peor aun (si no estuviera quoteada), de la partición, en la cual fue ejecutada. No quedandole otro remedio, al usuario inexperto que reiniciar.

Veamos:

$: yes > config &
[1] 20711

Vemos que la consola nos devuelve la siguiente información, [ 1 ], este es el numero de job del proceso, osea, es un número natural, que identifica a el proceso que se esta ejecutando en el background, y el siguiente número 20711 es el PID, (Identificador del proceso), esta información es muy util, ya que al no poder enviarle una señal de interrupción desde el teclado, deberemos interrumpilo desde la línea de comandos. Para esto, en otra terminal escribimos:

$: pgrep yes
20711

Lo que hemos hecho es buscar el proceso yes, y este nos devuelve el numero de PID<, necesario para poder matarlo, y asi evitar que siga ejecutandose, asi que rapídamente en la shell escribimos:

$: kill 20711

Y listo!, ya hemos matado al proceso yes y detenido la ejecución de esta forkbomb.
Ahora, un dato extra para saber la cantidad que ocupo el archivo generado (config) y conocer realmente lo rapido que se propaga esta secuencia infinita de yes escribimos:

$: du -h /home/usuario/config
157M /home/usuario/config

Por supuesto, que debemos cambiar por la ruta (path) donde nosotros hemos ejecutado el comando, y donde se encuentra el archivo config, viendo esto, podemos decir que en mi caso (una ejecucion de 25 segundos aproximadamente), el archivo crecio de 0 a 157 Mb., osea a una velocidad increible.

Espero que esto le sirva a todos los novatos, y a los que estan un poco mas avanzados, que no sean tan estúpidos de hacerles ejecutar esto, ya que asi, los alejan cada vez mas del software libre.

Overclock_Orange
fmdlc.unix (–en–) gmail.com

Fuente


TuxInfo “Numero 5″ libre para la descarga

Bienvenidos a TuxInfo “Número 5″. este mes los agradecimientos van dirigidos a ustedes nuestros lectores ya que mes a mes siguen eligiendo descargar nuestra revista, y no solo el número actual, también los números anteriores. Por supuesto quiero agradecer a todos los que hacen posible la revista y brindarle la bienvenida a Roberto Allende como nuevo colaborador.
Terminados los agradecimientos les cuento que este número está plagado de artículos, la nota de tapa trata de Python como lenguaje de programación, dentro de la sección páginas encontrarán todos los proyectos web nuestros, (les recomiendo la visita a los sitios) tenemos una review de Firefox 3, como realizar temas con SuperKaramba, la cuarta parte del curso de C, en la sección distros podrán encontrar a Linux Mint, una solución para los discos SATA y mucha más información en todas sus páginas.
Para cerrar esta introducción, quiero invitarlos a leer una nueva promoción que realizamos en conjunto con LAD (Linux A Distancia) la cual encontrarán detalles dentro de la sección noticias.
Los agradecimientos de siempre no podían faltar.
Muchas gracias a todos,

Ariel M. Corgatelli

Descarga de alta 51 MB

Descarga de baja 4 MB

DESCARGA DE NUMEROS ANTERIORES

Contenido de la revista

  • Multimedia; Avidemux la gran solución.
  • Principiantes; de Windows a Linux III parte.
  • Servidores; Discos del Infierno, Introducción a LVM.
  • Laboratorio; Analizamos Firefox 3 Beta, ¿Que es Supekaramba? ¿Que es un Theme?
  • Distribuciones; Linux Mint “Daryna” KDE Community Edition La elegancia hecha GNU/Linux.
  • Laboxpress; GimpShop, SoundJuicer, SuperGrub Disk, Foxy Tunes.
  • Nota de tapa; Python el lenguaje todo terreno del software libre.
  • Programación; Seguimos con el curso de C cuarta entrega, Desarrollo de páginas web en Linux.
  • Juegos; Warzone 2100 RTS futurista.
  • Opinión; No, Canon NO.
  • Y mucho mas en sus 77 paginas.

4/11/2008


Programación Gráfica GTK2/Ruby en Gnu/Linux (I)

Bueno mi necesidad de aprender a programar en algún lenguaje para Gnu/Linux en modo gráfico viene desde hace tiempo, hay muchas maneras de crear GUIs (Interfaz Gráfica para el usuario), la mayoría de los lenguajes como C, Python, Perl, Php tienen librerías para crear aplicaciones Gtk2, las usadas por Gnome. Pero como me gané un librito de Ruby hace unos meses y lo tenía tirado por ahí decidí echarle una mirada y me gustó =D. Por eso lo que valla aprendiendo voy a ir subiéndolo a mi blog, así usted lector que no tiene conocimientos de programación gráfica en Gnu/Linux va a aprender junto conmigo, la creación de GUIs usando Ruby. La diferencia de muchos tutoriales donde el maestro se la sabe todas, yo solo voy a aportar mis conocimientos adquiridos al mismo paso que usted. Espero que les guste y les ayude. No me voy a centrar en la progración de Ruby en modo consola, solo explicaré conceptos si fueran necesarios para nuestra aplicación gráfica. Si algún programador con experiencia en gtk2/ruby o ruby quiere aportar, se encuentra bienvenido...

Empecemos, primero, ¿Qué es Ruby?


Ruby es un lenguaje de programación reflexivo y orientado a objetos(lenguaje interpretado), creado por el programador japonés Yukihiro "Matz" Matsumoto, quien comenzó a trabajar en Ruby en 1993, y lo presentó públicamente en 1995. Combina una sintaxis inspirada en Python, Perl con características de programación orientada a objetos similares a Smalltalk. Comparte también funcionalidad con otros lenguajes de programación como Lisp, Lua, Dylan y CLU. Ruby es un lenguaje de programación interpretado en una sola pasada y su implementación oficial es distribuida bajo una licencia de software libre.(es.Wikipedia)

Su sitio oficial no está nada mal, además también está en spanish...creo que eso me enamoró =P. Me voy a centrar mucho en la práctica por lo que si quieren saber sobre la historia de Gtk2 o de Ruby busquen en la web XD. NO voy a enseñar a fondo ruby, solo vamos a obtener conocimientos para desarrollar GUI, que algún experto no me reclame después..=P.

Instalación:

Arch Linux:

# pacman -S ruby ruby-gnome2

Debian o Ubuntu:

# apt-get install ruby ruby-gnome2

Ya estoy ansioso por empezar, asi que empecemos, a me olvidada, vamos a utilizar un editor de texto, a mi me gusta Vim pero pueden usar Emacs, Gedit o Mousepad o lo que le guste, guarden su programa como "holamundo.rb".

Creando el famoso "Hola mundo":

#!/usr/bin/env ruby
=begin
holamundo.rb
Nuestro Primer Programa =)
=end

require 'gtk2'

boton = Gtk::Button.new("Hola Mundo")
boton.signal_connect("clicked"){
puts "Me hicieron click"
}

ventana = Gtk::Window.new
ventana.signal_connect("delete_event"){
puts "Ventana cerrada"
#true
false
}

ventana.signal_connect("destroy"){
puts "Ventana destruida"
Gtk.main_quit
}

ventana.border_width = 10
ventana.add(boton)
ventana.show_all

Gtk.main


Explicación:

La primera línea de un programa en la mayoría de los sistemas *nix, le indica al sistema que lenguaje va a ser utilizado.

#!/usr/bin/env ruby

La siguiente estructura es un comentario ya que se encuentra entre =begin y =end. Otra manera de comentar es agregando # al principio de una línea.

=begin
holamundo.rb
Nuestro Primer Programa =)
=end

La siguiente línea vincula a la librería Ruby/GTK2 con nuestro programa:

require 'gtk2'

A continuación vemos lo siguiente:

boton = Gtk::Button.new("Hola Mundo")

Nos indica que creamos un objeto llamado "boton" que posee las características de un "Gtk::Button.new" y mostrará en su título "Hola Mundo".

button.signal_connect("clicked") {
puts "Me hicieron click"
}

Cuando hagamos click sobre nuestro botón ("boton.signal_connect("clicked")") mostrará en la terminal "Me hicieron click".

Ahora vamos a crear un objeto que sea del tipo "Gtk::Window.new", es decir una nueva ventana GTK, llamada "ventana":

ventana = Gtk::Window.new

Los parámetros normales o defaults son los siguientes:
  • Tamaño: 200x200
  • Estilo: Gtk::Window::TOPLEVEL
  • Título: el mismo que el nombre del programa "holamundo.rb"
Sigamos:

ventana.signal_connect("delete_event"){
puts "Ventana cerrada"
#true
false
}

Cuando la ventana sea cerrada, nos mostrará en la consola "Ventana cerrada", luego la línea que dice "false" quiere decir que la ventana desaparezca, prueben comentándola y descomentar #true a ver que sucede. Es decir de la siguiente manera podría probar =P :

ventana.signal_connect("delete_event"){
puts "Ventana cerrada"
true
#false
}

Una vez que la ventana fué cerrada exitosamente nuestro programa destruirá el objeto ventana y saldrá del programa mediante "Gtk.main_quit".

ventana.signal_connect("destroy"){
puts "Ventana destruida"
Gtk.main_quit
}

Por último nos queda las últimas 4 líneas:

ventana.border_width = 10
ventana.add(boton)
ventana.show_all

Gtk.main

La primera nos indica el ancho del borde, la segunda agrega nuestro objeto "boton" creado anteriormente a nuestro objeto ventana y la tercera nos muestra la ventana en pantalla con todos sus objetos.

Por último nos queda "Gtk.main" que será necesario en cada aplicación creada, ya que es otra llamada que verá Ruby/GTK2 en cada aplicación. Cuando el control llega a este punto, GTK se dormirá en espera de eventos X (como un botón o la presión de una tecla), el tiempo, o eventos en el archivo IO
de notificaciones.
En el ejemplo anterior, sin embargo, los eventos son ignorados.

Para ejecutar nuestro programa abrimos una terminal:

$ ruby holamundo.rb

Bueno terminamos nuestro primer programa, creo que así les habrá quedado...


Espero que este sea el primero de muchos artículos sobre ruby, y bueno, si a alguien le resultó util o le gustó o no, o si me equivoqué en algo me gustaría que dejaran sus comentarios. Saludos a todos y hasta la próxima =) !!

Referencia

4/05/2008


Proteger servidor Gnu/Linux contra ataques de fuerza bruta

Por motivos de quejas, ver el artículo de forat en http://www.forat.info


Comandos Útiles para Windows XP

Como sabrán este blog está dedicado a Gnu/Linux, pero no podemos vivir aislados de cualquier otro sistema por ende es necesario tener conocimientos de otros O.S también, no lo olviden que las batallas se ganas solamente conociendose a sí mismo y al enemigo. Hace 1 1/2 año que no utilizo win$ para nada en mi casa pero en la escuela lo tengo que utilizar por obligación y me siento frustrado por eso muchas veces quiero hacer esto y esto pero no lo recuerdo y me molesta por eso les dejo estos comandos que sólo se utilizan en Win$.

Archivos y sistemas de ficheros


cacls: Permite modificar los permisos en ficheros y carpetas, permitiendo o prohibiendo a cada usuario leer, escribir o modificar el contenido de dichos archivos o carpetas.

chkdsk: Comprueba el estado de una partición y repara los daños en caso de que encuentre alguno. Si lo ponemos sin ningún parámetro simplemente escaneará la partición, si queremos que además corrija los errores, deberemos añadir la opción /F, es decir, chkdsk /F.

cipher: Permite cifrar archivos, directorios o particiones siempre que se encuentren en el sistema de archivos NTFS.

comp: Compara archivos o carpetas y muestra las diferencias existentes entre ellos.

compact: Permite comprimir archivos o carpetas para ahorrar espacio en el disco duro. Para comprimir los archivos deberemos utilizar el modificador /c y para descomprimirlo en modificador /u. Por ejemplo, para comprimir la carpeta c:\pruebas debemos utilizar el comando compact /c c:\pruebas y para descomprimirla compact /u c:\pruebas.

convert: Convierte particiones FAT ó FAT32 a NTFS. Antes de utilizar este comando es recomendable realizar una copia de seguridad puesto que es posible que durante la conversión se pierdan datos.

defrag: Desfragmenta los archivos de una unidad, similar a la utilidad Defragmentador de discos de Windows pero en modo consola.

diskpart: Permite crear, eliminar y administrar particiones. Este programa en modo consola debemos utilizarlo con cuidado puesto que es fácil que eliminemos sin darnos cuenta todo el contenido del disco duro o de la partición activa.

find y findstr: Estos comandos buscan cadenas de textos en el interior de uno o varios archivos. Sin embargo, el comando findstr ofrece más opciones de búsqueda que el comando find.

iexpress: Este comando lanzará un asistente para crear archivos comprimidos .CAB autodescomprimibles.

openfiles: Muestra a un administrador los archivos abiertos en un sistema a un administrador y permite desconectarlos si se han abierto a través de red.


Configuración del sistema


bootcfg: Permite ver y modificar las entradas del archivo boot.ini. Estas entradas nos permiten seleccionar con que sistema operativo deseamos iniciar el equipo.

control userpasswords2: Permite modificar las claves y los permisos de los diferentes usuarios, así como requerir la pulsación de control+alt+suprimir para poder iniciar sesión, haciendo el inicio de sesión más seguro.

driverquery: Hace un listado de todos los drivers instalados en el sistema y muestra información sobre cada uno de ellos.

dxdiag: Lanza la herramienta de diagnóstico de Direct X, con la cual podremos comprobar la versión Direct X que tenemos instalada y permite comprobar mediante tests que todo lo referente a estos controladores funcione correctamente.

gpresult: Muestra información sobre las políticas de grupo aplicadas a un usuario.

gpupdate: Vuelve a aplicar las políticas de grupo.

msconfig: Desde esta aplicación en modo gráfico podremos seleccionar que programas y servicios se cargan durante el inicio de Windows así como los sistemas operativos que el usuario puede seleccionar para iniciar el ordenador.

pagefileconfig: Permite configurar el archivo de paginación de Windows.

prncnfg: Muestra información sobre las impresoras instaladas

prnjobs: Muestra información sobre los trabajos de impresión en cola.

reg: Permite ver y modificar valores del registro de Windows. Las opciones posibles son:

reg query => realiza una consulta en el registro
reg add => añade una entrada al registro
reg delete => elimina una clave del registro
reg copy => copia una clave del registro a otra parte del registro o a otro equipo
reg save => guarda una parte del registro en un archivo
reg restore => restaura una parte del registro de un archivo
reg load => carga una clave o árbol al registro desde un archivo
reg unload => descarga una clave o árbol del registro
reg compare => compara varios valores del registro
reg export => exporta el registro o parte del registro a un archivo
reg import => importa el registro o parte del registro de un archivo

regedit: Editor del registro en modo gráfico.

sc: Este commando nos permite administrar los servicios, ya sea iniciar uno, detenerlo, mandarle señales, etc.

sfc: Este comando permite buscar archivos del sistema dañados y recuperarlos en caso de que estén defectuosos (es necesario el CD de instalación del sistema operativo para utilizarlo). Para realizar una comprobación inmediata, deberemos ejecutar la orden sfc /scannow.

systeminfo: Muestra información sobre nuestro equipo y nuestro sistema operativo: número de procesadores, tipo de sistema, actualizaciones instaladas, etc.

taskkill: Permite eliminar un proceso conociendo su nombre o el número del proceso (PID).

tasklist: Realiza un listado de todos los procesos que hay. Útil si deseamos eliminar un proceso y no conocemos exactamente su nombre o su PID.


Redes


arp: Muestra y permite modificar las tablas del protocolo ARP, encargado de convertir las direcciones IP de cada ordenador en direcciones MAC (dirección física única de cada tarjeta de red).

ftp: Permite conectarse a otra máquina a través del protocolo FTP para transferir archivos.

getmac: Muestra las direcciones MAC de los adaptadores de red que tengamos instalados en el sistema.

ipconfig: Muestra y permite renovar la configuración de todos los interfaces de red.

nbtstat: Muestra las estadísticas y las conexiones actuales del protocolo NetBIOS sobre TCP/IP, los recursos compartidos y los recursos que son accesibles.

net: Permite administrar usuarios, carpetas compartidas, servicios, etc. Para un listado completo de todas las opciones, escribir net sin ningún argumento. Para obtener ayuda sobre alguna opción en concreto, escribier net help opción.

netsh: Este programa en modo consola permite ver, modificar y diagnosticar la configuración de la red

netstat: Mediante este comando obtendremos un listado de todas las conexiones de red que nuestra máquina ha realizado.

nslookup: Esta aplicación se conecta a nuestros servidores DNS para resolver la IP de cualquier nombre de host. Por ejemplo, si ejecutamos nslookup y escribimos www.hispazone.com, nos responderá con algo como:

Respuesta no autoritativa:
Nombre: www.hispazone.com
Address: 217.76.130.250

Esto quiere decir que la dirección web www.hispazone.com corresponde con la IP 217.76.130.250.

pathping: Muestra la ruta que sigue cada paquete para llegar a una IP determinada, el tiempo de respuesta de cada uno de los nodos por los que pasa y las estadísticas de cada uno de ellos.

ping: Poniendo detrás del comando ping el nombre o la dirección IP de la máquina, por ejemplo ping 192.168.0.1 enviaremos un paquete a la dirección que pongamos para comprobar que está encendida y en red. Además, informa del tiempo que tarda en contestar la máquina destino, lo que nos puede dar una idea de lo congestionada que esté la red.

rasdial: Permite establecer o finalizar una conexión telefónica.

route: Permite ver o modificar las tablas de enrutamiento de red.

tracert: Muestra el camino seguido para llegar a una IP y el tiempo de respuesta de cada nodo.


Varios


at: Permite programar tareas para que nuestro ordenador las ejecute en una fecha o en un momento determinado.

logoff:: Este comando nos permite cerrar una sesión iniciada, ya sea en nuestro ordenador o en otro ordenador remoto.

msg:: Envía un mensaje a unos o varios usuarios determinados mediante su nombre de inicio de sesión o el identificador de su sesión

msiexec:: Permite instalar, desinstalar o reparar un programa instalado mediante un paquete MSI (archivos con extensión .msi).

runas: Permite ejecutar un programa con privilegios de otra cuenta. Útil por ejemplo si estamos como usuario limitado y queremos hacer algo que necesite privilegios de administrador.

shctasks: Permite administrar las tareas programadas.

shutdown: Permite apagar, reiniciar un ordenador o cancelar un apagado. Es especialmente útil si hemos sido infectado con el virus Blaster o una de sus variantes para cancelar la cuenta atrás. Para ello, tan sólo tendremos que utilizar la sintaxis shutdown -a.


Microsoft Management Console (MMC)


Estos comandos nos darán acceso a distintas partes de la Microsoft Management Console, un conjunto de pequeñas aplicaciones que nos permitirán controlar varios apartados de la configuración de nuestro sistema operativo.

Para acceder a estas opciones, no es necesario entrar en la consola del sistema (cmd.exe), sino que basta con introducirlos directamente desde inicio - ejecutar.

ciadv.msc: Permite configurar el servicio de indexado, que acelera las búsquedas en el disco duro.

compmgmt.msc: Da acceso a la Administración de equipos, desde donde podemos configurar nuestro ordenador y acceder a otras partes de la MMC.

devmgmt.msc:: Accede al Administrador de dispositivos.

dfrg.msc: Desfragmentador del disco duro.

diskmgmt.msc: Administrador de discos duros.

fsmgmt.msc: Permite administrar y monitorizar los recursos compartidos.

gpedit.msc: Permite modificar las políticas de grupo.

lusrmgr.msc: Permite ver y modificar los usuarios y grupos locales.

ntmsmgr.msc: Administra y monitoriza los dispositivos de almacenamientos extraíbles.

ntmsoprq.msc: Monitoriza las solicitudes del operador de medios extraíbles.

perfmon.msc: Monitor de rendimiento del sistema.

secpol.msc: Configuración de la política de seguridad local.

services.msc: Administrador de servicios locales.

wmimgmt.msc: Configura y controla el servicio Instrumental de administración (WMI) de Windows.

Fuente

4/01/2008


Embichados, La Plaga Oficial

Si usted vive en argentina, sabrá que los pequeños productores del campo mantienen el corte de rutas por el interior del país hace aproximadamente 20 días, manifestándose en contra de las medidas arbitrarias tomadas por el gobierno, poniendo retenciones a la exportación de soja, tengo mis razones y apoyo al campo pero no las voy a analizar ahora, lo que les voy a mostrar una original forma de protesta....basada en la pelIcula "Bichos"...


GRID, la red más poderosa

GRID es el nombre de una nueva tecnología que amenaza con provocar una revolución similar a la producida tras la aparición de Internet.

La tecnología GRID, reja, malla o cuadricula según las diversas traducciones, es un nuevo paradigma de computación distribuida en el cual todos los recursos de un número indeterminado de computadoras( ya sea cómputo, almacenamiento y aplicaciones específicas) son englobados para ser tratados de manera virtual como una única súper computadora, sin estar sujetos a un control centralizado, por eso mucho expertos ya pronostican que la tecnología GRID transformará el mundo de las TIC de la misma manera que Internet cambió el modo en que personas y empresas se comunicaban y compartían información.

Básicamente, las redes Grid tratan de conectar múltiples sistemas heterogéneos de forma que los recursos e información almacenada en los mismos se puedan compartir. Así, se consigue optimizar los recursos al ponerlos en común para cargas de trabajo de gran capacidad y facilita la colaboración de empresas con socios comerciales y proveedores, así como la participación de diferentes organizaciones dispersas geográficamente en un mismo proyecto.

Hasta el momento se ha utilizado principalmente en universidades y centros de investigación ya que la increíble disponibilidad de recursos que las GRID proporcionan son fundamentales para trabajar en física, matemáticas, geología, medicina, ingeniería, entre muchas otras aplicaciones.
Transformar grandes cantidades de información en conocimiento es una tarea sumamente compleja y costosa, pero a través de estas nuevas redes el mismo se podría simplificar y economizar hasta límites impensados.

En Argentina la primera implementación de esta tecnología se produjo en un proyecto conjunto de las Universidades de Buenos Aires y la Universidad Nacional de Cuyo, a través del cual se busco que amabas casas de altos estudios pudieran compartir la capacidad de cómputo para ser aplicado a la resolución de problemas científicos. Conozca más sobre este proyecto a través de esta nota publicada en Nex IT 29

En este primer proyecto se busco la colaboración para sumar recursos con el fin de estudiar temas como la prospección sísmica o la simulación de la circulación atmosférica, los cuales requieren de computadoras muy poderosas y costosas. Sin embargo si se las utiliza en red a través de la tecnología GRID, los costos de comparten y se potencia la capacidad del conjunto.

Esta red nos permitirá contar con una herramienta de cálculo poderosa para trabajar en temas que están en la frontera del conocimiento como la simulación numérica en problemas de interconexionado eléctrico por medios electroquímicos y en el tratamiento electroquímico de tumores, mediante el pasaje de corriente eléctrica a través de un tejido vivo”, asegura Guillermo Marshall, profesor de la Facultad de Ciencias Exactas y Naturales de la UBA.

En general, las computadoras conectadas a Internet establecen una relación bipolar: unas son clientes y las otras servidores. Los clientes son los que requieren determinados servicios (acceder a páginas web, enviar y recibir correo electrónico, emitir o captar videoconferencias, etc.), y los máquinas servidores (servers) son las encargadas de brindárselos.

Lo que diferencia a la tecnología GRID es que incluye además un tercer elemento, un actor que va a intervenir en la relación cliente-servidor y este es el middleware. Se trata de la infraestructura virtual que media entre cliente y los servidores. Su trabajo consiste básicamente en dividir las tareas, asignarle a cada máquina conectada en la red un trabajo determinado en base a sus capacidades y disponibilidad en el momento que se requiere cada trabajo. El middleware es en resumen el organizador general de tareas y posibilita ganar en velocidad y eficiencia.

Sin embargo a pesar de los grandes beneficios que las redes GRID proporcionan no se han desarrollado de forma masiva por la falta de un estándar abierto que todos puedan seguir, dada la gran cantidad de plataformas y arquitecturas diferentes que existen hoy en día.

Globus es una comunidad de organizaciones y desarrolladores, integrada por algunas de las universidades más prestigiosas del mundo así como agencias de investigación gubernamentales y patrocinada por los gigantes IBM, Microsoft y Cisco. Lo que propone esta organización es promover el desarrollo de la tecnología GRID así como también desarrollar una serie de protocolos comunes y resolver los problemas técnicos que la misma presenta hasta el momento.

Por otro lado, la Unión Europea patrocina el desarrollo de XtreemOS , un sistema operativo de código abierto que sirva para operar computadoras, clusters y móviles conectados a los recursos de la Grid. Este sistema, basado en Linux, busca presentarse como una alternativa al programa norteamericano Globus y tiene el objetivo además de devolverle en el corto plazo al continente europeo protagonismo tecnológico, muy relegado en los últimos años por EE.UU. y Asia.

Según la coordinadora del proyecto, Christine Morin, "El sistema XtreemOS ofrecerá una alternativa a Globus, que en la actualidad es el sistema de middleware más extendido para administrar redes informáticas a pesar de su complejidad".

Está claro que GRID se constituye como el siguiente paso en el despliegue de infraestructuras para Tecnologías de la Comunicación e Información. El desafío es trasladar los beneficios de esta tecnología desde el campo académico y científico al ámbito empresarial y sobre unificar criterios y establecer estándares comunes para que el uso de la misma pueda masificarse.

Fuente