четверг, 24 мая 2012 г.

Криптуем bash-скрипты с использование SHC

  1. Качаем и устанавливаем shc
    $ wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.7.tgz
    $ tar xvfz shc-3.8.7.tgz
    $ cd shc-3.8.7
    $ make
    Удостоверяемся в работоспособности shc
    $ ./shc -v
    shc parse(-f): No source file specified
    
    shc Usage: shc [-e date] [-m addr] [-i iopt] [-x cmnd] [-l lopt] [-rvDTCAh] -f script
  2. Создаем тестовый скрипт
    $ vi random.sh
    
    #!/bin/bash
    
    echo -n "How many random numbers do you want to generate? "
    read max
    
    for (( start = 1; start <= $max; start++ ))
    do
      echo -e $RANDOM
    done
    Проверяем, что он работает
    $ chmod +x random.sh
    $ ./random.sh
    How many random numbers do you want to generate? 4
    16836
    14453
    15120
    11611
  3. Криптуем наш скрипт с помощью shc
    $ ./shc -f random.sh

Примеры использования df

  1. Для просмотра использования всех файловых систем используем опзию -a
    $ df -a
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/sda1            132239776   6210892 119311496   5% /
    proc                         0         0         0   -  /proc
    sysfs                        0         0         0   -  /sys
    devpts                       0         0         0   -  /dev/pts
    tmpfs                  4021876         0   4021876   0% /dev/shm
    none                         0         0         0   -  /proc/sys/fs/binfmt_misc
    /dev/sdb2             30969600    117740  29278696   1% /home/oracle
    /dev/sdc1            576310180     71232 546964104   1% /home/data
  2. Вывод информации о использовании ФС с указанием размера блока - -B 100
    $ df -B 100
    Filesystem         100B-blocks      Used  Available Use% Mounted on
    /dev/sda1           1354135307  63599535 1221749720   5% /
    tmpfs                 41184011         0   41184011   0% /dev/shm
    /dev/sdb2            317128704   1205658  299813848   1% /home/user
    /dev/sdc1           5901416244    729416 5600912425   1% /home/data
  3. Вывод информации в "человекочитабельном" виде - опция -h
    $ df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda1             127G  6.0G  114G   5% /
    tmpfs                 3.9G     0  3.9G   0% /dev/shm
    /dev/sdb2              30G  115M   28G   1% /home/user
    /dev/sdc1             550G   70M  522G   1% /home/data