Documentos de Académico
Documentos de Profesional
Documentos de Cultura
IO-Scheduler MODIFICACIN
Se comprueba la velocidad del disco con:
hdparm -Tt /dev/sdX
Para comprobrar el scheduler por defecto:
cat /sys/block/sdX/queue/scheduler # X es la letra de nuestra SSD
noop deadline [cfq] # aparece entre corchetes
Esto comprueba y saca por pantalla scheduler todos los discos:
for f in /sys/block/sd?/queue/scheduler; do printf "$f is "; cat $f; done
Para cambiar scheduler de forma manual:
sudo echo noop > /sys/block/sdX/queue/scheduler # X letra de la SSD
o aadiendo al archivo /etc/sysfs.conf
block/sdX/queue/scheduler = deadline
Si el sistema est compuesto de diferentes tipos de discos duros, SSD y HDD
podra ser interesante ajustar un scheduler diferente a cada uno de ellos con una
regla UDEV:
Creamos:
/etc/udev/rules.d/60-ssd-scheduler.rules
Dentro de este archivo introducimos lo siguiente:
set deadline scheduler for non-rotating disks
# seleccion de deadline como scheduler para los HDD, (discos rotativos)
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue
/scheduler}="deadline"
Archivo: /e
time,discard,errors=remount-ro 0
2
# /home was on /dev/sda3 during installation
UUID=1be86fb9-ab24-4351-a1ee-08ff95e3de61 /home
xfs
defaults
0
2
# /var was on /dev/sda1 during installation
UUID=d4a79e1e-39c2-4b7e-8ee7-d1cc0091cd88 /var
xfs
defaults
0
2
# swap was on /dev/sda2 during installation
UUID=d1745346-cae9-429f-bf29-15bba59db6ab none
swap
sw
0
0
#MONTO DISCO DURO EXTERNO AL ARRANQUE
#UUID="2E2E-A2A9" /home/javier/Toshiba_external_HDD
vfat rw,auto,user,asyn
c,suid,dev,exec,umask=0000
0 2
tmpfs /tmp tmpfs noatime,mode=1777 0 0
tmpfs /var/tmp tmpfs noatime,mode=1777 0 0
tmpfs /home/javier/.cache/google-chrome tmpfs noatime,nosuid,nodev,mode=1777
0 0
tmpfs /var/spool tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/log tmpfs defaults,noatime,mode=0755 0 0
#tmpfs /var/log/apt
tmpfs defaults,noatime
0 0
tmpfs /var/cache/apt/archives tmpfs defaults,noexec,nosuid,nodev,mode=0755
0 0
#tmpfs /home/javier/.config/google-chrome tmpfs noatime,mode=1777 0 0
#FTP
#curlftpfs#jmarp1:jmarp1@77.27.131.129 /home/javier/FTP_ruben21.d fuse auto,user
,noatime,uid=1000,allow_other,_netdev 0 0
*******************************************************************
*** CONEXION RED *******************
Configure the following /etc/sysctl.conf settings for faster TCP
GNU nano 2.2.6
Archivo: /etc/sysctl.conf
#
# /etc/sysctl.conf - Configuration file for setting system variables
# See /etc/sysctl.d/ for additional system variables.
# See sysctl.conf (5) for information.
#
#kernel.domainname = example.com
# Uncomment the following to stop low-level messages on console
#kernel.printk = 3 4 1 3
##############################################################3
# Functions previously found in netbase
#
# Uncomment the next two lines to enable Spoof protection (reverse-path filter)
# Turn on Source Address Verification in all interfaces to
# prevent some spoofing attacks
#net.ipv4.conf.default.rp_filter=1
#net.ipv4.conf.all.rp_filter=1
# Uncomment the next line to enable TCP/IP SYN cookies
# See http://lwn.net/Articles/277146/
# Note: This may impact IPv6 TCP sessions too
#net.ipv4.tcp_syncookies=1
*********************************
systemctl status hdparm.service
************* MONTAR DISCO DURO EXTERNO DESDE fstb ***********************
***** OBTENER UUID DE LOS DISCOS **********
Varias formas
ls -l /dev/disk/by-uuid
o tambin:
blkid /dev/sdX
*************************
montar disco:
#MONTO DISCO DURO EXTERNO AL ARRANQUE
UUID="2E2E-A2A9" /home/javier/Toshiba_external_HDD
,suid,dev,exec,umask=0000
0 2
**************
vfat rw,auto,user,async
First we have to add keys to access the repository. To do that, we have to run,
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E985B27B
Now lets update & install infinality font.
sudo apt-get update
sudo apt-get install fontconfig-infinality
Xfce
Go to Settings -> Appearance.
Tick the checkbox to Enable anti-aliasing
Set Sub-pixel order to RGB
Set Hinting to Slight
Xfce4 Font Setting
Gnome
Gnome does not have options to configure font rendering methods. So you need to
install gnome-tweak-tool which can be done by running the following command.
sudo apt-get install gnome-tweak-tool
Then change the settings
Open Gnome tweak tool and to fonts setting.
Set Antialiasing to RGB
Set Hinting to Slight
Logout & login back to see the new font rendering.
terminal:
sudo gedit /etc/default/prelink
Se abrir el editor de textos. Ahora tenemos que modificar los siguientes parmetros
del archivo de configuracin:
Dentro del fichero veremos que hay el siguiente texto:
PRELINKING=unknown
Tenemos que modificar esta linea y dejarla como podis ver a continuacin:
PRELINKING=yes
Nota: Es posible que en vuestra distro el valor estndard de la variable PRELINKIN
G sea NO en vez de UNKNOWN. Si es este el caso lo nico que hay que hacer es cambiar e
l no por yes
Dentro del mismo archivo de configuracin tambin podemos modificar las opciones de
funcionamiento de prelink. Dentro del archivo de configuracin veremos una linea q
ue pone:
PRELINK_OPTS=-mR
-mR son las opciones de configuracin estndard de prelink. En mi caso las modifico
quedando del siguiente modo:
PRELINK_OPTS=-amR
El significado de cada una de las opciones de configuracin es:
a: Especifica que se haga un prelink de la totalidad de binarios y de las librera
s especificadas en el directorio /etc/prelink.conf.
m: Opcin que permite un ahorro de memoria cuando se enlazan los ficheros binarios
y las libreras compartidas. Lo consigue de la siguiente manera. Antes hemos dich
o que prelink asigna una direccin virtual nica a cada una de las libreras compartid
as. Pero bajo determinadas circunstancias prelink har que distintas librerias pue
dan tener la misma direccin virtual nica con el consecuente ahorro de memoria. Est
a opcin es sobretodo til en el caso que el nmero de enlaces a realizar sea alto.
R: El proceso de asignar direcciones a las librearas compartidas lo hace de forma
aleatoria.
Para tener una explicacin ms detallada del funcionamiento y de las diferentes opci
ones que tiene prelink podemos abrir una terminal y teclear:
man prelink
De este modo podemos ver y comprender la totalidad de opciones que nos ofrece pr
elink.
EJECUTAR PRELINK POR PRIMERA VEZ
Seguidamente iniciaremos prelink por primera vez. Para iniciarlo por primera vez
tenemos abrir una terminal e introducir el siguiente comando:
sudo prelink -amvR
Seguramente tendris que esperar un buen rato ya que en este momento se estn enlaza
ndo nuestras librearas compartidas con nuestros binarios. El proceso puede termin
ar con xito tal y como me paso con Xubuntu. Si el proceso termina con exito ya po
demos decir que la totalidad de nuestro binarios y nuestras libreras estn enlazado
s.
Tambin puede ser que se generen errores durante el proceso como me paso en Debian
Testing y en Debian Sid. En el caso que se den errores en medio del proceso de
DESINSTALAR PRELINK
En el caso que no estemos satisfechos con el rendimiento de prelink podemos desh
acer la totalidad de acciones que hemos realizado siguiendo el siguiente proceso
:
Abrimos una terminal y tecleamos:
sudo gedit /etc/default/prelink
Una vez tengamos abierto el editor de texto buscamos la linea:
PRELINKING=yes
y la modificamos por:
PRELINKING=no
Guardamos el fichero. Abrimos una terminal y ejecutamos el siguiente comando:
sudo /etc/cron.daily/prelink
Seguidamente abrimos el archivo de configuracin de apt introduciendo el siguiente
comando en la terminal:
sudo gedit /etc/apt/apt.conf
Una vez abierto el editor de texto borramos la siguiente linea:
DPkg::Post-Invoke {"echo Ejecutando prelink, por favor espere...;/etc/cron.daily
/prelink";}
Finalmente ya solo nos queda ejecutar los siguientes comandos para no dejar rast
ro de prelink en nuestro sistema:
prelink -au
sudo apt-get remove --purge prelink
PROBLEMAS CONOCIDOS CON PRELINK
No se aconseja usar prelink en sistemas operativos que tengan un versin de kernel
inferior a 2.4.10. Creo que a da de hoy prcticamente no quedan sistemas que funci
onen con esta versin de Kernel.
Como hemos comentado prelink estar modificando los binarios de nuestras aplicacio
nes. Por lo tanto si tenemos instalados los paquetes checksecurity y tripwire no
s estarn dando advertencias constantemente. En principio estos paquetes no vienen
instalados de serie. Los 2 paquetes realizan comprobaciones bsicas de seguridad
en el sistema y tambin comprueban la integridad de los archivos y de las carpetas
.
Se aconseja no usar prelink en ordenadores en que tengamos problemas de espacio
en el disco duro. Se recomienda un espacio mnimo de al menos 50 MB. El motivo es
que prelink aade informacin tanto a nuestras libreras compartidas como en nuestros
ficheros binarios. Por lo tanto si no hay espacio suficiente para poder realizar
estas modificaciones podemos llegar a romper nuestro sistema.
Nota: Con todo lo citado en el post prelink puede llegar a parecer peligroso. No
obstante llevo tiempo usndolo y nunca me ha dado ningn problema. Tampoco he encon
trado casos en Internet de gente que le haya destrozado el sistema por el uso de
prelink. En definitiva prelink siempre me ha funcionado correctamente tanto en
sistemas de 32 bits como en sistemas de 64 bits.
INCREMENTO DE RENDIMIENTO PROPORCIONADO POR PRELINK
La verdad es que ha sido difcil encontrar gente que reporte sobre las mejoras obt
enidas con prelink. nicamente he hallado una fuente que reporta resultados. Los
resultados son los siguientes:
**************************************************************
******************** DPkg::Pre-Invoke ************************
/etc/apt/apt.conf.d
DPkg::Pre-Invoke {" date >> /home/javier/.trim/registroTrimInstalaciones.txt; e
cho Ejecutando fstrim antes de instalar paquete >> /home/javier/.trim/registroTr
imInstalaciones.txt; fstrim -v / >> /home/j$
**************************************************************
******SEMAPHORES***********************
Ver semaforos:
sysctl -A | grep kernel.sem
ipcs -ls
vi /etc/sysctl.conf
kernel.sem = 250 32000 100 128
or
sysctl -w "kernel.sem = 250 32000 100 128"
or
sysctl -w "kernel.sem=4096 512000 1600 2048"
from avg 50% to 20%]
cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
*********************************************