Iomega external USB 160 GB

Categoria: FreeBSD Publicado: Sábado, 24 Novembro 2007 Escrito por Helio Loureiro Imprimir

Uma das melhores aquisições em minhas viagens foi o HD externo de 160 GB da Iomega. Pequeno, leve e suportado pelo FreeBSD:

umass0: Iomega Iomega HDD USB2.0 Drive, rev 2.00/2.40, addr 2 
da0 at umass-sim0 bus 0 target 0 lun 0
da0: Fixed Direct Access SCSI-0 device
da0: 40.000MB/s transfers
da0: 152627MB (312581808 512 byte sectors: 255H 63S/T 19457C)

Ao formatar, decidi criar uma instalação de Ubuntu sobre o mesmo, utilizando uma partição (da0s1) como raiz, outra (da0s2) maior como home, uma para troca com usuários de windows (da0s6) e uma última com o que sobrou (da0s7), que ficou como "/mnt/ots".

Utilizando o fdisk-linux, disponível no ports, é possível criar e depois visualizar as partições.

musashi# fdisk-linux -l /dev/da0 

Disk /dev/da0: 160.0 GB, 160041885696 bytes

255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/da0s1 1 608 4883728+ 83 Linux
/dev/da0s2 609 12766 97659135 83 Linux
/dev/da0s3 12767 19457 53745457+ 5 Extended
/dev/da0s5 12767 12888 979933+ 82 Linux swap
/dev/da0s6 18242 19457 9767488+ b Win95 FAT32
/dev/da0s7 12889 18241 42997941 83 Linux
Partition table entries are not in disk order

Sendo que o tipo Ext3 (Journalling) é suportado pelo FreeBSD, nada melhor que o utilizar para guardar os dados, fazendo todo sincronismo de UFS para Ext3 e tendo um sistema backup, em Linux, disponível no HD externo.

Para fazer o mount/umount, criei um pequeno script, que segue abaixo, já que o sistema de automount não reconheçe perfeitamente os devices e respectivos pontos de montagem, fora o fato do mesmo alterar a posição de da0 para da1 ou qualquer outro da, dependendo de qual outro dispositivo estiver conectado.

mount_iomega.sh

#! /bin/sh 
case $1 in
    -m) ;;

    -u) ;;
     *) echo "Use: $0 [-m|-u]"
        echo " -m: mount disks "
        echo " -u: umount disks "
        exit 1
        ;;
esac

echo "Finding Iomega"
### Finding device
umass=`dmesg | grep -i iomega | tail -1|awk -F":" '{print $1}'`
umass_id=`echo $umass | sed 's/umass//'`
device=`dmesg | grep "umass-sim$umass_id" | tail -1 |awk '{print $1}'`

if [ ! $umass_id ] ; then
    echo "Impossible to find Iomega device"
    exit 1
fi

case $1 in
    -m) echo "Checking partitions"
        for id in 1 2 7
            do
            fsck.ext3 -y /dev/${device}s${id}
        done
        for id in 6
            do
            fsck_msdosfs -y /dev/${device}s${id}
        done
        echo "Mounting partitions"
        mount | grep "/dev/${device}s1" > /dev/null 2>&1
        if [ $? -ne 0 ]; then
            mount_ext2fs /dev/${device}s1 /mnt/ext2
        fi
        mount | grep "/dev/${device}s2" > /dev/null 2>&1
        if [ $? -ne 0 ]; then
            mount_ext2fs /dev/${device}s2 /mnt/ext2/home
        fi
        mount | grep "/dev/${device}s7" > /dev/null 2>&1
        if [ $? -ne 0 ]; then
            mount_ext2fs /dev/${device}s7 /mnt/ext2/mnt/ots
        fi
        mount | grep "/dev/${device}s6" > /dev/null 2>&1
        if [ $? -ne 0 ]; then
            mount_msdosfs -u 1000 -g 100 -o longnames -m 777 /dev/${device}s6 /mnt/msdos
        fi
        ;;

    -u) for dir in msdos ext2/mnt/ots ext2/home ext2
            do
            echo "Umounting: /mnt/$dir"
            umount /mnt/$dir
        done
        ;;
esac

 

Acessos: 8190
Mastodon Mastodon
We use cookies

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.