Blog do programador e tecnico em redes ….

Categoria — shell

transformar link padrao do (UUID) em dispositivo no wheezy

Passei por um problema aqui com o novo Debian com comando df e outros que identificam o sistema de arquivos com um link simbólico
tipo UUID como /dev/disk/by-uuid/132a49f9-790a-49fb-3112-383e93187bf8 e isso é muito chato: a saída do comando é mais amplo e ilegível, difícil de decorar e o dispositivo atual não é mais identificado em alguns scripts.

a solução que encontrei foi criar o script abaixo e colocar ele em /etc/initramfs-tools/scripts/local-premount/rootdevice com o conteúdo:

#!/bin/sh
# transformar o link padrao do
# (UUID) no dispositivo normal.
set -e
[ "$1" = prereqs ] && exit 0
REALROOT=`readlink -f ${ROOT}`
[ "${REALROOT}" ] && echo "ROOT=${REALROOT}" >> /conf/param.conf
exit 0

colocar ele como executável:
chmod +x /etc/initramfs-tools/scripts/local-premount/rootdevice

e depois atualizar o initramfs:
update-initramfs -u

pronto tudo fica como era antes ;)…

30 / junho / 2013   Sem Comentarios

função shell script para calculo do modulo 10

abaixo uma função para calculo do modulo 10 em shell.


function modulo10()
{
cont_char=$(echo -n "$1" | wc -c)
cont_multiplicador=1

while [ $cont_char -ne 0 ]; do
char=$(echo $1 | cut -c $cont_char)
if [ $(($cont_multiplicador % 2)) == 1 ]; then
char_produto=$((char * 2))
else
char_produto=$((char * 1))
fi

if [ $char_produto -ge 10 ]; then
produto=$(($produto + $(echo $char_produto | cut -c 1) + $(echo $char_produto | cut -c 2)))
else
produto=$(($produto + $char_produto))
fi
cont_char=$(($cont_char - 1))
cont_multiplicador=$(($cont_multiplicador + 1))
done
if [ $(($produto % 10)) -eq 0 ]; then
echo "0"
else
echo $((10 - $(($produto % 10))))
fi
}

17 / setembro / 2010   Sem Comentarios