Thursday, May 2, 2013

Installing GNS3 on CentOS/RHEL 6

  1. Login as root and run the following (accept all dependencies):
    yum install python python-devel xorg-x11-proto-devel libXext-devel gcc-c++ libXrender* PyQt4 PyQt4-devel qt qt-devel qemu-img libvirt
  2. Download the latest GNS3 source, unpack it to /opt, create symbolic link, create subfolders and set permissions (at this time, the GNS3 version is 0.8.3, but a newer version might be available – it’s your call as to which version to use):
    wget http://iweb.dl.sourceforge.net/project/gns-3/GNS3/0.8.3/GNS3-0.8.3-src.tar.gz
    tar -xvf GNS3-0.8.3-src.tar.gz -C /opt
    cd /opt
    ln -s GNS3-0.8.3-src GNS3
    cd GNS3
    mkdir Dynamips IOS Project Cache Temp
    chmod o+rw Project Temp 
  3. Change directory into Dynamips, download the binary and make it executable (at this time, the Dynamips version is 0.2.8-RC3, but a newer version might be available – it’s your call as to which version to use and the URL to download it):
    cd Dynamips
    wget http://downloads.sourceforge.net/project/gns-3/Dynamips/0.2.8-RC3-community/dynamips-0.2.8-RC3-community-x86_64.bin
    chmod +x dynamips*.bin
  4. Download GNS3 icon from here and link in the right locations:
    cd /opt/GNS3
    wget http://www.rehmert.com/wp-content/uploads/2012/08/gns3-150x150.png
    ln -s /opt/GNS3/gns3-150x150.png /usr/share/icons
    ln -s /opt/GNS3/gns3-150x150.png /usr/share/pixmaps
  5. Create a /usr/bin/gns3 with the following content:
    #!/bin/bash
    python "/opt/GNS3/gns3"

  6. Set +x on /usr/bin/gns3:
    chmod +x /usr/bin/gns3
  7. Create app for use in app menu and launcher creation
    Create /usr/share/applications/gns3.desktop with the following contents:
    [Desktop Entry]
    Name=GNS3
    Comment=GNS3
    Exec=gns3
    Icon=gns3-150x150.png
    Terminal=0
    Type=Application
    Encoding=UTF-8
    Categories=Development
  8. Now you’ll find GNS3 listed in the Applications -> Programming menu location and can create application launchers in panels or on the desktop with ease…
  9. Edit /opt/GNS3/src/GNS3/Node/AbstractNode.py to comment out the following lines:
    if QtCore.QT_VERSION >= 0x040600:
    flags = flags | self.ItemSendsGeometryChanges

    To avoid the following error message:
    AttributeError: 'xxxxxxxxxxx' object has no attribute 'ItemSendsGeometryChanges'
    Source: http://www.rehmert.com/2012/08/installing-gns3-on-centosrhel-6/

No comments:

Post a Comment