wiki:Documentation

Version 4 (modified by stresslinux, 12 years ago) (diff)

--

How to image USB flash drives

  • on Linux
    • the GUI way (for SuSE users)
    • the dd way
      • In order to write your appliance to a USB stick, you will need to find the device to write to. After inserting the USB stick, open a terminal and type:
        df
        
      • You will see output similar to this:
        /dev/sda2             30969600  15533336  13863100  53% /
        udev                   1997904       108   1997796   1% /dev
        /dev/sda5             92888248  85548000   2621560  98% /home
        /dev/sda6             23671572    935276  21533836   5% /var
        /dev/sdb1              7816228      1492   7814736   1% /media/disk
        
      • The last entry should be the USB stick you just plugged in. If you're in doubt, try removing it, running df again, and see if the line disappears. The left column in df's output is the partition, and the path up to the number is the path to the device. In our example, '/dev/sdb1' is the partition, and '/dev/sdb' is the path to the device.
      • Important note: It is really, really important that you get the device path right - you can cause irreparable damage to your system if you don't.
      • After finding the device path, you will need to run dd to write your appliance to the USB stick. dd needs two arguments: the input file (your appliance), and the output file (the path to your USB device). In our example, the input file is named "/home/username/stresslinux.raw" and the path to the device is "/dev/sdb", so we would run this command from a terminal window:
        sudo dd if=/home/username/stresslinux.raw of=/dev/sdb bs=4k
        
      • The last argument (bs=4k) is optional, but adding it will make writing to the USB device much faster.
      • Please bear in mind that this will completely overwrite the USB device so make sure you don't have any important data on it first!
      • Writing to a USB stick is usually quite slow, so don't be alarmed if it seems like it takes forever. When dd has finished, it will tell you some statistics about how much data it has written to the USB stick. If your USB stick has a light on it that blinks when data is being written, wait until it stops blinking before removing it.
      • Note: As writing images blockwise is a critical process, please compare the md5sums of the raw image and the newly created device
        md5sum /home/username/stresslinux.raw
        md5sum /dev/sdb
        
      • Now you have stresslinux ready to be booted from your USB stick!
  • on Windows
    • Danger! This instruction is for experts!
      You can cause irreparable damage to your system if you make errors here.
    • In order to write your appliance to a USB stick in a Windows enviroment, you will need to the 'dd for windows' tool.
    • To find the device to write, after inserting the USB stick, open the command line (cmd) and type:
      dd --list
      
    • You will see output similar to this:
      C:\temp>dd --list
      rawwrite dd for windows version 0.5.
      Written by John Newbigin <jn@it.swin.edu.au>
      This program is covered by the GPL.  See copying.txt for details
      Win32 Available Volume Information
      \\.\Volume{ac56bf46-66cc-11dc-86f6-806d6172696f}\
        link to \\?\Device\HarddiskVolume1
        fixed media
        Mounted on \\.\c:
      
      \\.\Volume{ac56bf47-66cc-11dc-86f6-806d6172696f}\
        link to \\?\Device\HarddiskVolume2
        fixed media
        Mounted on \\.\d:
      
      \\.\Volume{d8bf0b41-66cd-11dc-a7a7-806d6172696f}\
        link to \\?\Device\CdRom0
        CD-ROM
        Mounted on \\.\e:
      
      \\.\Volume{65668b14-8a7b-11dd-ab31-545543445208}\
        link to \\?\Device\Harddisk1\DP(1)0-0+8
        removeable media
        Mounted on \\.\f:
      
      
      NT Block Device Objects
      \\?\Device\CdRom0
        Removable media other than floppy. Block size = 2048
        size is 695670784 bytes
      \\?\Device\Harddisk0\Partition0
        link to \\?\Device\Harddisk0\DR0
        Fixed hard disk media. Block size = 512
        size is 120034123776 bytes
      \\?\Device\Harddisk0\Partition1
        link to \\?\Device\HarddiskVolume1
      \\?\Device\Harddisk0\Partition2
        link to \\?\Device\HarddiskVolume2
      \\?\Device\Harddisk0\Partition3
        link to \\?\Device\HarddiskVolume3
        Fixed hard disk media. Block size = 512
        size is 6366334464 bytes
      \\?\Device\Harddisk0\Partition4
        link to \\?\Device\HarddiskVolume4
        Fixed hard disk media. Block size = 512
        size is 468808704 bytes
      \\?\Device\Harddisk1\Partition0
        link to \\?\Device\Harddisk1\DR7
        Removable media other than floppy. Block size = 512
        size is 1014497280 bytes
      \\?\Device\Harddisk1\Partition1
        link to \\?\Device\Harddisk1\DP(1)0-0+8
        Removable media other than floppy. Block size = 512
        size is 1014480896 bytes
      
      Virtual input devices
       /dev/zero   (null data)
       /dev/random (pseudo-random data)
       -           (standard input)
      
      Virtual output devices
       -           (standard output)
      
      C:\temp>
      
    • The entry we are looking for is the one that says removable media which is the USB stick you just plugged in. If you're in doubt, try removing it, running dd --list again, and see if the line disappears. The information we need is the
      .\f:
      \\.\Volume{65668b14-8a7b-11dd-ab31-545543445208}\
        link to \\?\Device\Harddisk1\DP(1)0-0+8
        removeable media
        Mounted on \\.\f:
      
    • Important note: It is really, really important that you get the device path right - you can cause irreparable damage to your system if you don't.
    • After finding the device path, you will need to run dd to write your appliance to the USB stick. dd needs two arguments: the input file (your appliance), and the output file (the path to your USB device). In our example, the input file is named "c:\temp\myappliance.raw" and the path to the device is "
      .\f:", so we would run this command from a terminal window:
      dd if=c:\home\suse\myappliance.raw of=\\.\f: bs=4k
      
    • The last argument (bs=4k) is optional, but adding it will make writing to the USB device much faster.
    • Please bear in mind that this will *completely overwrite the USB device so make sure you don't have any important data on it first!
    • Writing to a USB stick is usually quite slow, so don't be alarmed if it seems like it takes forever. When dd has finished, it will tell you some statistics about how much data it has written to the USB stick. If your USB stick has a light on it that blinks when data is being written, wait until it stops blinking before removing it.
    • Now you have a custom software appliance ready to be booted from your USB stick!

Quick steps until version 0.3.1

ISO distribution:

  1. Download the iso-image: .iso.zip on Win32 Systems or .iso.bz2 on Linux
  2. Unpack the iso and burn it with your favourite cd-r application (e.g. Nero on Win32 / cdrecord on Linux)
  3. Boot from your newly created disc.
  4. Type root and press RETURN on "stress login: "
  5. In the next dialog select your keyboard layout - for german you can press RETURN
  6. The second dialog will be the sl-wizard where you can select your mainboard-/vendor/type, this will load the needed modules for your hardware sensors.
  7. If the modules are successfully loaded and all sensors detected correctly then you can see the output of sensors on tty12.
  8. On tty11 he temperatures of your IDE/SCSI harddrives will be displayed.
  9. tty10 shows you a graphical ethernet throughput meter.
  10. Tools for testing your system are listed in the motd. For little help on these tools type <toolname> --help
  11. If you need to login into stresslinux via ssh, use the user "stress" with password "stress" . This is a 2nd root account.
  12. If you want to rerun sl-wizard, then execute "rm /tmp/sensors". Now run sl-wizard.sh.

PXE distribution:

  1. The pxe package includes a small readme, with requirements and some sample configuration files for dhcp,tftp,nfs

USB distribution: (not heavily tested)

  1. Get the pxe package and the mk_bootstick package.
  2. Extract the pxe distribution into the mk_bootstick folder, a folder _stresslinux should now exist.
  3. Then run./mk_bootstick /dev/<device-to-your-stic>, on some flash memorys you do not need a partition number
  4. follow the output from mk_bootstick