Mostrando entradas con la etiqueta Trucos. Mostrar todas las entradas
Mostrando entradas con la etiqueta Trucos. Mostrar todas las entradas

jueves, 16 de mayo de 2013

Encontrar maquinas KMS en tu dominio.

Una forma fácil de encontrar máquinas KMS en tu dominio es realizando:
nslookup -type=all _vlmcs._tcp

An easy way to find KMS machines in your domain is doing:
nslookup -type=all _vlmcs._tcp

martes, 15 de enero de 2013

Cambiar la carpeta por defecto del explorador de Windows 7

Para que al abrir el explorador de Windows 7, se nos abra directamente la carpeta que queramos, debemos ir a las propiedades del explorador de Windows y donde pone destino añadir un espacio y la ruta que queramos a continuación de %windir%\explorer.exe. Ej.: Si queremos que se abra la unidad c: pondremos %windir%\explorer.exe c:\

jueves, 3 de enero de 2013

Windows detectó que este archivo puede llegar a ser perjudicial.

Windows Vista/7/8 bloquea ciertos archivos que detecta sospechosos. Una de las soluciones posibles es:

- Hacer clic derecho sobre el archivo.
- Clic en propiedades.
- En la pestaña general hacer clic en el botón "Desbloquear Archivo"

Windows Vista/7/8 locks certain types of files it considers suspicious. You can bypass this issue, by unlocking the file:

- Right click the file

- Click Properties
- Go to the "General" tab
- Click on "Unlock file"
- Click OK

miércoles, 17 de agosto de 2011

Sin audio en Windows 7

Hace poco tuve que formatear el PC por un fallo al restaurar una imagen corrupta y después de volver a instalar todo de nuevo me dediqué a parar servicios innecesarios.
Bueno pues después de arrancar, todo correcto excepto el Audio. Me salía un aspa roja diciéndome que no funcionaba el audio. Fui a ver los servicios en ejecución y vi que "Audio" y "Compilador de extremo de audio de Windows" estaban parados y no me dejaba iniciarlos. Al final he descubierto que este misterioso suceso se debe a que deshabilité el servicio "Energía".

martes, 27 de abril de 2010

Restablecer capas LSP (Layer Service Provider) mediante netsh


En raras ocasiones, cuando se desinstala algún programa que ha insertado capas LSP en la pila TCP, éste no realiza correctamente la desinstalación y deja la pila en un estado inestable, con la consiguiente pérdida de toda conectividad de red. A partir de Windows Server 2003 SP1, Vista, Se7en y 2008, Microsoft ha introducido 2 nuevos comandos para reparar esto.
netsh winsock reset catalog: Restablece la configuración predeterminada del catálogo winsock. Debe usarse con mucha precaución pues habrá que reinstalar de nuevo los LSP borrados.
netsh winsock show catalog: Muestra la lista de los LSP de winsock instalados en el equipo.
Podemos realizarlo en modo gráfico sabiendo muy bien lo que se está haciendo, con LSPFix

NOTA: NO me hago RESPONSABLE bajo ningún concepto de lo que pueda ocurrirle a su sistema. Debería estar completamente seguro de lo que hace y que este es prácticamente el último recursos que le queda por verificar.

martes, 16 de febrero de 2010

Entrar en Modo Recuperación de Servicio de Directorio (DSRM) en 2008 con bcdedit

1.- Ejecutar un cmd y escribir bcdedit /set safeboot dsrepair.
2.- Reiniciar el DC.

Para volver a reiniciar en modo normal escribir bcdedit /deletevalue safeboot y reiniciar.

1.- Run command prompt and type bcdedit /set safeboot dsrepair.
2.- Reboot DC.

To reboot again on normal mode type bcdedit /deletevalue safeboot and reboot.

jueves, 4 de febrero de 2010

Microsoft Windows Server Core 2008 parte II

La instalación es idéntica al resto de productos 2008. Elegimos Core y después de instalar, nos pide usuario y password. La primera vez que arrancamos NO HAY CONTRASEÑA, por lo que no ponemos password y le damos al enter, el cual, ahora sí, nos pedira que la cambiemos.
Después de logarnos, veremos una ventana con una típico prompt en negro esperando a que le pasemos comandos.

Lo primero, para ver información de la licencia:
cscript c:\windows\system32\slmgr.vbs /dli
para ver el tiempo que queda antes de que expire:
cscript c:\windows\system32\slmgr.vbs /xpr
para prolongar otros 30 días (máximo 3 veces)
cscript c:\windows\system32\slmgr.vbs /rearm
para introducir la clave: 
cscript c:\windows\system32\slmgr.vbs /ipk clave_del_producto
y finalmente para activarlo:
cscript c:\windows\system32\slmgr.vbs /ato

Para renombrar el servidor:
netdom renamecomputer %computername% /NewName:el_nombre_que_queramos_poner

Para  configurar la IP:
netsh interface ipv4 show interfaces
Aquí obtendremos el nombre de la conexión que utilizaremos como nombre_de_la_conexión
netsh interface ipv4 set address name="nombre_de_la_conexión" source=static dirección_IP máscara_de_subred puerta_de_enlace
Ej: netsh interface ipv4 set address name="Conexión de área local" source=static 192.168.1.22 255.255.255.0 192.168.1.1

Para configurar el DNS:
netsh interface ipv4 add dnsservers "nombre_de_la_conexión" address=IP_del DNS index=indice
NOTA: indice=1 para dns primario; 2 para dns secundario

Para unir la máquina al dominio:
netdom join %computername% /domain:nombre_dominio /userD:usuario_administrador_del_dominio /passwordD: *
NOTA: Si ponemos * nos pide la password y no se ven los caracteres.

No estaría mal revisar la configuración regional mediante:
control intl.cpl
control timedate.cpl

Si queremos cambiar la password de nuevo:
ctrl+alt+sup y elegir cambiar password ó
net user el_usuario_que_queramos_cambiar *

Para ver los roles y features disponibles y su estado de instalación:
oclist

Para instalar algún role o feature:
ocsetup nombre_del_componente
donde el nombre_del_componente es el que nos ha aparecido en oclist, por ejemplo si hago un oclist en mi máquina entre otras muchas cosas me aparece:

Not installed:DNS-Server-Core-Role

pues si quiero instalar un servidor DNS deberé escribir ocsetup DNS-Server-Core-Role

Para activar el escritorio remoto:
cscript c:\windows\system32\scregedit.wsf /AR 0
0=Enable, 1=Disable

Para activar las actualizaciones automáticas:
cscript c:\windows\system32\scregedit.wsf /AU 4
4=Enable, 1=Disable
y para instalarlas cscript WUA_SearchDownloadInstall.vbs

Para configurar el DNS/DFS:
dnscmd.exe ó dfscmd.exe

Eventos mediante linea de comandos:
wevtutil


domingo, 18 de octubre de 2009

Funciones FSMO (Flexible Single Master Operations)

Active Directory tiene 5 roles de maestro de operaciones. 2 son relativas al bosque y las otras 3 al dominio. Si tenemos 3 dominios en un bosque tendremos 2 + (3 + 3 + 3) = 11 maestros de operaciones.

Operaciones relativas al bosque:
- Maestro de nombres de dominio:
Se encarga de que no se repitan los nombres de dominio de un bosque; se utiliza al quitar o agregar dominios al bosque; es imprescindible que esté operativo al crear o eliminar un nuevo dominio dentro del bosque.

- Maestro de esquema:
Se encarga de hacer los cambios en el esquema del bosque de Active Directory; si no está operativo no se podrá cambiar el esquema (añadir propiedades a un usuario, etc.) o instalar aplicaciones que requieran de él. Registrando esta librería mediante
regsvr32.exe schmmgmt.dll obtendremos un nuevo snap-in disponible en la consola mmc para modificar la funcionalidad.

Operaciones relativas al dominio:
- Maestro de identificadores relativos (RID):
El maestro de identificadores relativos asocia secuencias de identificadores relativos a cada uno de los distintos controladores de su dominio. Los DC's de AD generan SID's (Security IDentifiers) asignando un único RID al SID del dominio. Estos identificadores son utilizados por los DC's adjudicandolos a los objetos que se crean. Otra finalidad del RID es la de borrar un objeto de su dominio y colocarlo en otro cuando el objeto es movido entre ellos.


- Maestro de infraestructuras:
En un entorno multidominio es normal que un objeto apunte a objetos de otro dominio (un grupo puede incluir miembros de otro dominio). El maestro de infraestructuras es responsable de actualizar las referencias de grupos y usuarios cada vez que hay alguna variación o cambio de nombre en los miembros de un grupo.

- Emulador PDC:
El emulador PDC realiza varias operaciones cruciales para el dominio:

* Emula al PDC para compatibilidad hacia atrás. Cuando existía sólo NT, sólo el PDC podía hacer cambios en el directorio. Si está en un dominio mixto (con BDC's de NT) o tiene clientes sin el software de cliente de Windows 2000 (w9x/NT), el equipo que hace de emulador PDC es el controlador principal de dominio y por tanto sin él no hay dominio para esos clientes o no hay dominio si no existe ningún otro DC de w200x y todo son BDC's de NT. El DC con el rol de emulador de PDC se registra a si mismo como PDC para que pueda ser localizado por aplicaciones anteriores (aunque después de casi 10 años de AD no quedan muchas).
* Se ocupa de procesar cambios de contraseña especiales. Cuando un usuario cambia la contraseña, el DC que hace el cambio lo replica inmediatamente al emulador PDC. Esto asegura que los DC's sepan el cambio lo antes posible. Si el usuario se loga inmediatamente y no ha llegado el cambio al dc, el dc preguntará al emulador PDC que verificará que la contraseña es correcta y le mandará al DC dejar logarse al usuario.
* Administra actualizaciones de GP's de un dominio. Si se modifica una GPO en 2 DC casi a la vez podría haber conflictos entre las 2 versiones del cambio. El emulador PDC actua como el nucleo central del cambio. Es decir, todos los cambios en las GPO, por defecto, se hacen en el emulador PDC.
* Proporciona un horario al dominio. AD, Kerberos, FRS necesitan de una buena sincronización a través de todo el sistema. El emulador PDC de cada dominio se sincroniza con el emulador PDC del bosque. Los DC's de sincronizan a través del emulador PDC del dominio.
* Actua como el examinador principal del dominio. En cada segmento de red, el emulador PDC crea la lista de equipos, dominios y servidores que utilizará después el servicio examinador de equipos para mostrar los sitios de red.

miércoles, 16 de septiembre de 2009

Averiguar de forma rápida si se está leyendo php.ini y desde dónde.

Una forma rápida que he averiguado para saber si apache2 está leyendo el fichero de configuracion de PHP llamado php.ini es creando un archivo .php con cualquier nombre con el siguiente contenido:
<?php
phpinfo();
?>
De esta forma llamamos a la función phpinfo() que nos dará todo tipo de detalles acerca de nuestro servidor Apache, MySQL, PHP, variables y demás.
Una vez guardado el fichero en algún sitio de Apache que tengamos acceso desde fuera, ejecutamos en un navegador. http://IP_servidor_Apache/info.php.
Si tenemos Apache bien configurado para ejecutar código php, nos aparecerá una tabla generada por php con toda la información de nuestro servidor.
En torno a la 6ª fila aprox. veremos algo similar a esto: Configuration File (php.ini) Path y debajo algo parecido a esto: Loaded Configuration File 

Pues bien, el primero nos dice desde dónde se está cargando el fichero php.ini (por lo que si anda perdido por algún otro lugar, deberemos copiarlo ahí si queremos que lo ejecute Apache al iniciar ) y el 2º nos dirá si lo está cargando o no. Si pone (none) como es de suponer no está encontrando ningún php.ini y si no, pues seguramente tenga el mismo dato que el anterior.

Find out quickly if php.ini is being read and from where.

A quick way I found out to see if apache2 is reading the PHP configuration file called php.ini  is creating a file with php extension with any name with the following contents:

<?php
phpinfo();
?>

This calls to the phpinfo() function which will give you a fully detailed file of your server, Apache, MySQL, PHP, and other variables.

After you save the file somewhere on Apache that you have access from outside, run in a browser. http://Apache_server_IP_address/info.php.

If you have Apache properly configured to run php code, you'll see a table generated by php with all the information about our server.

Around the 6th row approximately you'll see something like this: Configuration File (php.ini) Path and below something like this: Loaded Configuration File

Well, first row show you from where the server is loading the php.ini file (if it isn't there, you'll have to copy it to the appropriate location) and the second row will tell you if it's being loaded or not. If it shows (none) that means that the server isn't finding any php.ini. If it's working well you'll see the same data as previous row.

martes, 15 de septiembre de 2009

Cambiar esquema de colores vim

Hay veces que en vim no se ven muy bien las letras aún con syntax on activado o simplemente no nos gustan cuando estamos conectados desde una consola ssh.
Existe una forma rápida de cambiar el esquema de colores vim. Para ello:
1.- Creamos un DIRECTORIO llamado .vim/colors en nuestro sitio home. Por ejemplo:
mkdir -vp /home/zakky/.vim/colors
2.- Ahí pondremos ficheros con extensión .vim que podemos crear nosotros o bajarnos de Vim Colors Scheme Test, que será el esquema de color que hemos escogido. Por ejemplo: tango.vim
3.- Modificamos nuestro /etc/vim/vimrc y añadimos o modificamos:
:colorscheme tango o :colorscheme default si lo que queremos es dejarlo por defecto de nuevo.

Changing vim colors scheme
Sometimes vim doesn't show very well the letters even with syntax on activated or we don't like them when we connect from a ssh console.
There is a quick way of changing the vim colors scheme. To do this:
1.- Create a folder called .vim/colors in our home directory. For example:
mkdir -vp /home/zakky/.vim/colors
2.- There we will locate files file with .vim extension that we can create ourselves or get from Vim Colors Scheme Test, which will be the color scheme we have chosen. For example: tango.vim
3.- Modify our /etc/vim/vimrc file and add or modify:
:colorscheme tango o :colorscheme default if we want to leave it to the default configuration.

miércoles, 9 de septiembre de 2009

Compilar e instalar Apache2, MySQL y PHP5 desde cero y no morir en el intento.

Lo he montado en Debian con kernel 2.6.31, pero me imagino que en otras distribuciones será similar. También he añadido los siguientes flags para el compilador. Esto no es necesario y depende del procesador.
export CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"
export CXXFLAGS="$CFLAGS"
Nos bajamos los fuentes desde sus respectivas webs. Apache2, MySQL y PHP5. A ser posible tar.bz2 y los copiamos en /usr/local/src

APACHE:
tar -zxvf http-X.X.XX.tar.bz2
./configure --prefix=/usr/local/apache2 --enable-so
make
make install
useradd -s /usr/sbin/nologin apache

Cambiar en conf/httpd.conf user apache y group apache
Para probar instalación /usr/local/apache2/bin/apachectl start
En cualquier navegador o lynx http://localhost. Debe salir It works!

MySQL:
Como root creamos el usuario y el grupo mysql y añadimos el usuario al grupo:
groupadd mysql
useradd -g mysql mysql

Descomprimimos los fuentes (normalmente desde /usr/local/src):
tar -zxvf mysql-X.X.XX.tar.gz ó
gunzip mysql-X.X.XX.tar.gz y
tar -xvf mysql-X.X.XX.tar

Configuramos los fuentes antes de compilar:
cd /usr/local/src/mysql.X.X.XX
./configure --prefix=/usr/local/mysql

Compilamos e instalamos:
make && make install

Si todo ha ido correcto, instalamos las bases de datos:
scripts/mysql_install_db

Cambiamos los propietarios de los directorios:
cd /usr/local/mysql
chown -R root:mysql .
chown -R mysql var

creamos el archivo de configuración:
cp ../src/mysql-X.X.XX/support-files/my-medium.cnf /etc/my.cnf

Probamos el servidor:
bin/mysqld_safe --user=mysql &

Si no hay error, todo perfecto.
Si no se han creado los enlaces a los clientes de MySQL:
ln /usr/local/mysql/bin/mysql /usr/bin/mysql
ln /usr/local/mysql/bin/mysqladmin /usr/bin/mysqladmin

Para que arranque en el inicio hay que copiar support-files/mysql.server en /etc/init.d/mysqld y crear un enlace en /etc/rc2.d. O sea:
cp /usr/local/src/mysql-X.X.XX/support-files/mysql.server /etc/init.d/mysqld
ln -s /etc/init.d/mysqld /etc/rc2.d/S91MySQL

Para establecer una password para el usuario root:
/usr/local/bin/mysqladmin -u root password 'La_contraseña_nueva'
/usr/local/bin/mysqladmin -u root -h 'Nombre_máquina_local' password 'La_contraseña_nueva'

También se puede ejecutar:
/usr/local/mysql/bin/mysql_secure_installation
que te dará la posibilidad de quitar las bases de datos de prueba y el usuario anónimo creado por defecto.

Para arrancar el demonio MySQL:
/usr/local/bin/mysqld_safe &
Para comprobar el demonio MySQL en perl:
cd /usr/local/mysql/mysql-test ; perl mysql-test-run.pl

PHP:
apt-get install libxml2-dev
tar -zxvf php-X.X.XX.tar.bz2
./configure --prefix=/usr/local/php5 --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache2/bin/apxs
make
make install
una de estas 2 según nuestro entorno desarrollo o producción:
cp /usr/local/src/php-X.X.XX/php.ini-development /usr/local/lib/php.ini
cp /usr/local/src/php-X.X.XX/php.ini-production /usr/local/lib/php.ini

En el httpd.conf de apache descomentamos o añadimos según proceda:
LoadModule php5_module modules/libphp5.so

AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps

Compiling and Installing Apache2, MySQL and PHP5 from scratch and not to die trying it.

I've ridden it in Debian with kernel 2.6.31, but I imagine that other distributions will be similar. I've also added the following flags to the compiler. This is not necessary and depends on the processor.
export CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"
export CXXFLAGS="$CFLAGS"
Get the sources from their respective websites. Apache2, MySQL and PHP5.
Whenever it's possible download it with the .tar.bz2 extension and copy them into the /usr/local/src directory.
APACHE:
tar -zxvf http-X.X.XX.tar.bz2
./configure --prefix=/usr/local/apache2 --enable-so
make
make install
useradd -s /usr/sbin/nologin apache
In the conf/httpd.conf file change into the following: user apache and group apache
To test the installation we must type /usr/local/apache2/bin/apachectl start
Type in any browser or lynx http://localhost. You should see It works!

MySQL:
As root we create the mysql user and group: 
groupadd mysql
useradd -g mysql mysql
Unzipping the source (usually from /usr/local/src):
tar -zxvf mysql-X.X.XX.tar.gz or
gunzip mysql-X.X.XX.tar.gz and
tar -xvf mysql-X.X.XX.tar
Configuring the sources before compiling: 
cd /usr/local/src/mysql.X.X.XX
./configure --prefix=/usr/local/mysql
Compiling and installing:
make && make install
If everything is Ok, install the databases:
scripts/mysql_install_db
Changing the owners of the directories:
cd /usr/local/mysql
chown -R root:mysql .
chown -R mysql var
Creating the configuration file:
cp ../src/mysql-X.X.XX/support-files/my-medium.cnf /etc/my.cnf
Testing the server:
bin/mysqld_safe --user=mysql &
If no error, everything is perfect.
If you haven't created the links to the MySQL client you must create them now:
ln /usr/local/mysql/bin/mysql /usr/bin/mysql
ln /usr/local/mysql/bin/mysqladmin /usr/bin/mysqladmin
To start at the beginning you have to copy support-files/mysql.server in / etc / init.d / mysqld and create a soft link in / etc/rc2.d. That is:
cp /usr/local/src/mysql-X.X.XX/support-files/mysql.server /etc/init.d/mysqld
ln -s /etc/init.d/mysqld /etc/rc2.d/S91MySQL
Setting a password for root:
/usr/local/bin/mysqladmin -u root password 'A_new_password'
/usr/local/bin/mysqladmin -u root -h 'Localhost_name' password 'A_new_password'
You can also run:
/usr/local/mysql/bin/mysql_secure_installation
to give you the ability to remove the test databases and anonymous user created by default.
Starting MySQL daemon:
/usr/local/bin/mysqld_safe &
Testing MySQL daemon in perl:
cd /usr/local/mysql/mysql-test ; perl mysql-test-run.pl

PHP:
apt-get install libxml2-dev
tar -zxvf php-X.X.XX.tar.bz2
./configure --prefix=/usr/local/php5 --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache2/bin/apxs
make
make install
One of this depending of if we have a development environment or a production one
cp /usr/local/src/php-X.X.XX/php.ini-development /usr/local/lib/php.ini
cp /usr/local/src/php-X.X.XX/php.ini-production /usr/local/lib/php.ini
In the Apache httpd.conf file, uncomment the following lines or add them as needed:
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps

viernes, 4 de septiembre de 2009

Salir de tu cuenta gmail de forma remota

Si has estado en un cybercafé u otro sitio público visitando el correo de gmail y se te ha olvidado cerrar la cuenta, se puedes hacerlo en remoto.

En la parte inferior de "Recibidos" se muestra la información de la hora y ubicación de la actividad de tu cuenta más reciente.
Haz clic en "Información detallada" para ver si tu cuenta sigue abierta en otra ubicación y "Cerrar todas las demás sesiones" para salir de las sesiones abiertas.

jueves, 23 de julio de 2009

Deshabilitar IPv6 en Core y demás versiones.

IPv6 está habilitado por defecto en Windows Server 2008. Si queremos deshabilitarlo sólo debemos realizar los siguientes pasos:

1.- Ejecutar “regedit” y buscar HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters

2.- Crear un nuevo valor DWORD, llamado “DisabledComponents” con valor “FF

3.- Reiniciar.

viernes, 17 de abril de 2009

Instalar WSUS 3.0 SP1 en Server 2008

Para instalar WSUS (Windows Server Update Services) en 2008 debemos tener instalado previamente IIS, por lo que nos vamos al Server Manager y en Roles o Funciones, agregamos IIS.
Por defecto nos aparecerá una ventana informándonos que requiere de otros componentes para instalar ISS, así que aceptamos y nos aparecerá otra ventana con los servicios de funciones que se van a instalar, podemos aprovechar e instalarlos o mediante linea de comando posteriormente. Los servicios de función necesarios son:
  • Windows Authentication
  • ASP.NET
  • 6.0 Management Compatibility
  • IIS Metabase Compatibility
Y si queremos instalar el servidor ISS y sus funciones mediante línea de comando escribiremos:

servermanagercmd -i Web-Server Web-Windows-Auth Web-Asp-Net Web-Mgmt-Compat Web-Metabase

Aparte, también necesitamos instalar Microsoft Report Viewer Redistributable 2005 si queremos usar la interfaz de administración. Este paso se puede realizar tanto antes como después de la instalación de WSUS.

jueves, 18 de septiembre de 2008

Exchange en DC

¿Es buena idea instalar Exchange en un dc? Generalmente la respuesta suele ser NO.

El servidor debe ser un Catálogo Global (no un DC).

Separar los 2 roles para obtener un mejor rendimiento. El controlador de dominio ya tiene otras tareas a las que dedicarse. Si se instala Exchange sufrirá un gran impacto en el rendimiento.

El servidor NO debe ser un cluster. Microsoft no permite los clusters de Exchange 2003 co-existiendo en servidores Active Directory.


El servidor tarda mucho en apagarse. Cuando Exchange 2003 se instala en un controlador de dominio, tardará alrededor de 10 minutos en apagarse. Se debe a que el servicio Active Directory (LSASS.EXE) se para antes que el servicio de Exchange, provocando a DSAccess varios reintentos antes de pararse. Lo mejor es detener manualmente los servicios de Exchange antes de apagar el servidor.

Gestión de memoria. No es bueno poner /3G en boot.ini para evitar que Exchange monopolice la memoria.

Seguridad. Puede disminuir la superficie de ataque no instalando Exchange en un controlador de dominio. Ya que todos los servicios funcionarán bajo LocalSystem, cualquier atacante que obtenga acceso a Active Directory también podrá acceder a Exchange.

miércoles, 30 de julio de 2008

Microsoft Windows Server Core 2008 parte I

Ahora que me estoy preparando el certificado MCITP Enterprise Administrator voy a hablar del server core y cómo configurar sus funciones básicas (cambiar nombre máquina, cambiar IP, añadir a un dominio y hasta hacerlo DC con dcpromo).
Para empezar, Server core es un server en el que no hay entorno gráfico sólo arrancan los servicios mínimos para que sea más estable y sobre todo más seguro. Se puede administrar usando herramientes remotas gráficas, pero si lo hacemos localmente tiene que ser bajo línea de comandos. La instalación mínima es de 3 Gb y menos de 256 Mb de RAM.

Server Core soporta 9 Roles:
- Active Directory DS (Domain Services)
- Active Directory LDS (Lightweight Domain Services)
- DHCP Server
- DNS Server
- Servidor de Ficheros
- Servidor de Impresión
- Servidor de Streaming
- Hiper-V (Servidor de virtualización)
- IIS (Sólo servidor de Web estáticas)

... y 11 Features:
- Failover Cluster
- NLB
- Subsistema para aplicaciones basadas en UNIX
- Backup
- Multipath I/O
- Administrador de Almacenamiento Removible
- Encriptación Bitlocker
- SNMP
- WINS
- Cliente Telnet
- QoS

lunes, 14 de abril de 2008

Compilar el kernel en Debian - Primera parte

A lo largo de esta semana y las siguientes voy a explicar cómo compilar un kernel de linux desde 0. Espero que os sea útil.

¿Por qué compilar el kernel?
¿por qué compilar el kernel si ya funciona bien?. Hay varias razones por las que hacerlo.
- La primera porque te has comprado un nuevo hardware que no está soportado en el kernel actual pero sí en los nuevos.
- La segunda, puede que estés teniendo algún error o fallo de seguridad que haya sido corregido en otras revisiones.
- Finalmente quieres evitar toda la carga inutil de dispositivos que no utilizas y ocupan espacio y quieres que la máquina vuele literalmente, arrancando con lo mínimo imprescindible y sólo tu hadware real.

Lo primero que tenemos que hacer es bajarnos la última versión del kernel, lo mejor es hacerlo desde la propia web, http://www.kernel.org. Aquí tendremos para elegir la ubicación más cercana a nosotros, EEUU ó Europa y el protocolo por el que bajarlo, HTTP, FTP o RSYNC. Después nos aparecen las diferentes versiones de los kernels disponibles (2.2, 2.4, 2.6) y el tipo (completo, sólo el parche, etc...). Bien, elegiremos la última versión y haremos clic en el vínculo a la letra F (Full) que aparece. Con esto nos bajaremos la última versión completa (en este caso 2.6.24.4) en formato tar.tz2. Concretemente yo utilizo lynx para bajarlo, pero eso es indiferente.

Mientras tanto iremos realizando unos pequeños retoques necesarios en nuestro sistema. Tenemos que instalarnos los siquientes paquetes mediante apt-get install paquete:
  • make,
  • g++,
  • gcc,
  • libncurses5-dev,
  • tar,
  • bunzip2.

Bueno, después de bajarnos los 44.6 Mb de kernel, mediante el comando mv lo movemos a /usr/src y allí lo decomprimimos mediante: tar jxvf linux-2.6.24.tar.bz2. Si en vez de tar.bz2 está empaquetado mediante tar.gz o tgz entonces sustituiremos la j de jxvf por una z quedando tal que así zxvf.

Después crearemos un enlace simbólico mediante: ln -s linux-2.6.24.4 linux y entramos en el enlace que hemos creado: cd linux, con lo cual debemos estar en el directorio /usr/src/linux.

Antes de ponernos a hacer nada más, necesitamos recopilar alguna información de la máquina que nos vendrá muy bien más adelante. Debemos instalar y ejecutar update-pciids y update-usbids, esto se conectará a internet y nos bajará las ultimas actualizaciones de los listados de hardware. Después ejecutaremos en la máquina: lspci -vv >lspci.txt e imprimiremos todo lo que nos aparezca, ésto es la mayoría de nuestro hardware (tipo de placa base, tarjeta de red, de sonido, controladoras ide, etc). Haremos lo mismo con lsusb. Por último nos será tambien útil y nos vendrá bien saber cuales son los módulos que tenemos cargados ahora mismo. Esto lo haremos con lsmod. Así que tenemos un montón de hojas impresas con la información de:
lspci, lsusb y lsmod.
No estaría de más echarle un vistazo a la salida del comando dmesg.

La idea principal es tener un conocimiento lo más detallado posible de nuestro hardware. Por ejemplo, debemos saber que nuestra tarjeta de red es una Realtek, pero además tenemos que saber el modelo exacto (ej. Realtek 8139). Si hacemos esto con todos los componentes hardware no tendremos el más mínimo problema para compilar nuestro kernel de forma fiable y con éxito.

También debemos saber el sistema de ficheros (ext2/3, reiser, xfs) que tenemos en nuestra máquina, aunque eso lo podremos averiguar luego.

Empezamos con el tema, pero eso será en la parte 2. :-) Hasta la vista.

sábado, 15 de diciembre de 2007

Optimizaciones para Exchange 2003

Configuración del modificador /3GB

De manera predeterminada, Windows 2000 Advanced Server y Windows Server 2003 asignan 2 GB de espacio de direcciones virtual a los procesos de modo de usuario como Store.exe. Si un servidor tiene 1 GB o más de memoria física, establezca el modificador /3GB en el archivo Boot.ini para aumentar el espacio de direcciones virtual.
Sólo debe establecer el modificador /3GB en los servidores que cumplan los criterios siguientes:
- El servidor aloja buzones o carpetas públicas de Exchange 2003.
- El servidor tiene 1 GB de memoria física como mínimo.

Configuración de /USERVA y SystemPages
Si el servidor ejecuta Windows 2000, debe configurar la clave del Registro SystemPages con un valor comprendido entre 24000 y 31000. Esta clave se encuentra en la siguiente ruta de acceso:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\SystemPages
Si el servidor ejecuta Windows Server 2003, configure el valor SystemPages como cero y establezca el parámetro /USERVA=3030 en el archivo Boot.ini. Esta configuración le permite incluir un mayor número de entradas de las tablas de las páginas del sistema en el sistema, lo que representa un aspecto fundamental para sistemas de escalado.

Configuración de la clave HeapDeCommitFreeBlockThreshold del Registro
La clave del Registro HeapDeCommitFreeBlockThreshold controla el volumen de espacio libre necesario antes de que el administrador de la pila libere memoria. El valor predeterminado es cero, lo que significa que el administrador del montón libera cada página de 4 KB que quede disponible. Con el tiempo, el espacio de direcciones virtuales puede fragmentarse. En los servidores que tengan 1 GB o más de memoria física, puede establecer la clave del Registro con un valor mayor para reducir o eliminar la fragmentación. Establezca la clave del Registro como se muestra en la siguiente tabla y, a continuación, reinicie el servidor.
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager
Parámetro: HeapDeCommitFreeBlockThreshold
Tipo: REG_DWORD
Valor predeterminado: Cero
Valor recomendado decimal: 262144

Ajustar el tamaño de la caché de la base de datos de almacén
La caché de base de datos de almacenamiento (también denominada búfer Motor extensible de almacenamiento) almacena las transacciones de la base de datos antes de que se entreguen a la base de datos. De manera predeterminada, Exchange 2003 asigna 896 MB si el modificador /3GB no está establecido en el servidor y 576 MB si no se ha establecido la opción /3GB. En los casos siguientes, el ajuste del tamaño máximo de búfer puede aumentar el rendimiento:
- Si el servidor ejecuta 2003 y otras aplicaciones de servidor, reduzca el búfer para limitar el uso que hace Exchange de la memoria.
- En servidores con más de 2 GB de memoria, aumente el tamaño del búfer (hasta un máximo de 1200 MB).
Antes de aumentar el tamaño máximo del búfer, utilice Registros y alertas de rendimiento para supervisar la instancia de almacenamiento del contador Virtual Bytes (en el objeto Process) en una situación de carga normal. Este contador muestra el tamaño actual (en bytes) del espacio virtual de direcciones que utiliza el proceso Store.exe. El valor debe ser inferior a 2,8 GB si se establece el modificador /3GB e inferior a 1,8 GB si no se establece dicho modificador. Si los valores son superiores, no aumente el tamaño máximo del búfer. Si los valores son inferiores, puede aumentar el tamaño máximo del búfer hasta 1200 MB. Por ejemplo, si se establece el modificador /3GB, y el recuento de bytes virtuales es 2,5 GB en una situación de carga elevada, puede aumentar su tamaño máximo de búfer en unos 300 MB.
Tenga presente que en los servidores en los que se produzcan problemas de espacio de direcciones, el aumento del tamaño del búfer puede tener repercusiones desfavorables en el rendimiento del servidor. Un búfer mayor significa un mayor consumo de espacio de direcciones virtual; el aumento del búfer puede dar lugar a la inestabilidad del sistema.
Para ajustar el tamaño máximo del búfer, utilice Edición de la interfaz del servicio Active Directory (ADSI) para modificar el valor msExchESEParamCacheSizeMax. Para obtener más información acerca de cómo modificar el valor msExchESEParamCacheSizeMax, consulte en Microsoft Knowledge Base el artículo 266768, "XSTR: Cómo modificar el tamaño máximo de caché de la base de datos de almacenamiento" (http://support.microsoft.com/?kbid=266768). Una vez que haya establecido el valor, espere a que el servicio de directorio Active Directory® replique el valor en todo el bosque. A continuación, reinicie el servicio Almacén de información de Microsoft Exchange.
Importante:
Tenga cuidado de no seleccionar el valor msExchESEParamCacheSizeMin.

miércoles, 12 de diciembre de 2007

Crear RAID 0 y RAID 1 con mdadm en Debian

Preparar el disco duro

Se va a crear un RAID-0 o un RAID-1. Para RAID-5 necesitará añadir más discos. Cree una particion en cada disco con el máximo tamaño:

Hay que hacer los mismos pasos para todos los discos que vayan a formar el RAID:

#fdisk /dev/dispositivo (hda, hdb, sda,sdb, etc...)
d y nº partición para borrar todas las existentes.
n para crear una nueva, p para decirle que es primaria y
1 para decirle que es la1ª.
t para indicar el tipo, fd que es el que corresponde a Linux RAID autodetect
w para escribir los cambios en la tabla del disco y salir

Device Boot Start End Blocks Id System
/dev/hda1 1 79780 40209088+ fd Linux raid autodetec

RAID-0 (¡sin redundancia!)

Use mdadm para crear un RAID-0:

mdadm --create /dev/md0 --chunk=64 --level=raid0 --raid-devices=2 /dev/hda1 /dev/hdc1

# cat /proc/mdstat
Personalities : [raid0]
read_ahead 1024 sectors
md0 : active raid0 hdc1[1] hda1[0]
80418048 blocks 128k chunks

RAID-1 (¡con redundancia!)

Use mdadm para crear un RAID-1:

mdadm --create /dev/md0 --chunk=64 --level=raid1 --raid-devices=2 /dev/hda1 /dev/hdc1

# cat /proc/mdstat
Personalities : [raid0] [raid1]
read_ahead 1024 sectors
md0 : active raid1 hdc1[1] hda1[0]
40209024 blocks [2/2] [UU]
[>....................] resync = 0.7% (301120/40209024) finish=17.6min speed=37640K/sec

Antes de reiniciar tiene que esperar a que se complete la sincronización

Guarde la información de los arrays recien creados

# mdadm --detail --scan >> /etc/mdadm.conf
# cat /etc/mdadm.conf
DEVICE /dev/hd* /dev/sd*
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=d876333b:694e852b:e9a6f40f:0beb90f9

Obtener información sobre los dispositivos RAID y los discos

Mostrar el estado actual de los dispositivos raid

cat /proc/mdstat

Salida de un RAID-1 degradado con un disco que falla:

Personalities : [raid0] [raid1]
read_ahead 1024 sectors
md0 : active raid1 hdc1[2](F) hda1[0]
40209024 blocks [2/1] [U_]
unused devices:

Salida de un RAID-1 degradado con un disco quitadoi:

Personalities : [raid0] [raid1]
read_ahead 1024 sectors
md0 : active raid1 hda1[0]
40209024 blocks [2/1] [U_]
unused devices:

Salida de un RAID-1 recostruyéndose:

Personalities : [raid0] [raid1]
read_ahead 1024 sectors
md0 : active raid1 hdc1[2] hda1[0]
40209024 blocks [2/1] [U_]
[=======>.............] recovery = 37.1% (14934592/40209024) finish=11.7min speed=35928K/sec
unused devices:

Obtener más detalles sobre los dispositivos RAID

# mdadm --query /dev/md0
/md0: 38.35GiB raid1 2 devices, 3 spares. Use mdadm --detail for more detail.
/dev/md0: No md super block found, not an md component.

# mdadm --detail /dev/md0
/dev/md0:
Version : 00.90.00
Creation Time : Mon Jan 20 22:53:28 2003
Raid Level : raid1
Array Size : 40209024 (38.35 GiB 41.22 GB)
Device Size : 40209024 (38.35 GiB 41.22 GB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 0
Persistence : Superblock is persistent

Update Time : Tue Jan 21 00:49:47 2003
State : dirty, no-errors
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0


Number Major Minor RaidDevice State
0 3 1 0 active sync /dev/hda1
1 22 1 1 active sync /dev/hdc1
UUID : d876333b:694e852b:e9a6f40f:0beb90f9

Obtener más detalles sobre los discos

# mdadm --query /dev/hda1
/dev/hda1: is not an md array
/dev/hda1: device 0 in 2 device active raid1 md0....

# mdadm --query /dev/hdc1
/dev/hdc1: is not an md array
/dev/hdc1: device 1 in 2 device active raid1 md0....

Administrar dispositivos RAID (RAID-1 y superiores)

Configurando el fallo de un disco:

# mdadm --fail /dev/md0 /dev/hdc1

Quitando un disco que falla de un array:

# mdadm --remove /dev/md0 /dev/hdc1

Borrando cualquier información de un raid anterior de un disco

# mdadm --zero-superblock /dev/hdc1

Agragar un disco al array

# mdadm --add /dev/md0 /dev/hdc1

lunes, 24 de septiembre de 2007

Guardar videos de YouYube en avi

Guardar videos de YouYube en avi.

Los videos de YouTube se almacenan en formato flv. Existen aplicaciones entre otras Chermenin YouTube Downloader para guardar los video en formato avi.

Saving YouTube videos in avi format.
YouTube videos are saved in flv format. There are many aplications from which Chermenin YouTube Downloader can save them in avi format.