Campus, Linux, Networking, Opensource, python, RaspberryProject

Raspberry Beginners Guide

This guide is aimed at helping newcomers to the the Raspberry Pi (or Linux in general) get up and running with their fantastic new toy and move on to the fun stuff.

I’m going to assume you have the Model B (although most of this will work for Model A too – with the exception of the VNC setup) and some form of Windows.

We’ll be installing the Raspbian “wheezy” Debian Linux distribution for Raspberry Pi. If your using the old “squeeze” distro then upgrade now! The Raspbian “wheezy” distribution is much faster.

What you need

You’ll need the following bits and pieces:

  • A Raspberry Pi of course. Head over to Farnell/element14 or RS Components pick one up. I’d strongly recommend the Model B as this has an Ethernet port for easy access to your home network
  • A compatible SD Card. This is important, I had a few Class 6 Kingston cards and assumed they would work. They didn’t. Checkout the list of compatible SD cards over at eLinux. Or buy a bundle with compatible card (some come with Linux pre-installed). Go for a 4GB card minimum.
  • Micro USB Power Cable. Any micro USB cable or phone charger will do, or pick one up when you purchase the Pi. You can power it from mains, computer USB port or even one of those portable USB power supplies!
  • TV/Monitor* with either HDMI or Composite in (HDMI highly recommended)
  • USB Keyboard and Mouse*.

* The TV/Monitor, Keyboard and Mouse are semi-optional. If you have the Model B Raspberry Pi we can remote desktop into the Pi from any Windows or Linux pc/laptop connected to the network. We’ll just need the TV keyboard etc to do the initial setup.

Installing Linux on your SD Card

We’ll be using the Debian Raspbian “wheezy” Linux distribution here as it comes with a lot of examples and apps right out the box. Head over to the Raspberry Pi Downloads section to grab it.

You’ll also need Win32 Disk Imager to write the downloaded image. Make sure you click on the right download and not one of the annoying ads made to look like the download (you should always stay on

  • Unzip the Linux download
  • Run Win32DiskImager (if you have issues right click and run as Administrator)
  • Select the *.img image file you unzipped
  • Select SD card Drive (make sure its the SD Drive and not c: or any other drive you need)
  • Click Write
  • When done remove the SD card and insert into the Raspberry Pi

Note: if you need to reuse the SD Card in Windows again you may find it can’t be read or shows a very small capacity. If so you need to re-write the file system. I found the easiest way was to put the card into a digital camera and format from there. You should now be able to read the card in Windows.

Running the Raspberry Pi Desktop

Right, now we’re getting somewhere. Make sure the SD card is inserted and the Pi is connected to the TV.

Now connect the power. You should see the Pi kick into life. Don’t worry if you see some errors here, let it finish and you’ll get to a login prompt.

If you are having trouble booting, take a look at the above section on compatible SD cards again.

The default username and password are:

Username: pi
Password: raspberry

When you hit the command prompt enter the following to launch the desktop:


Congratulations! You now have a fully working desktop environment on £20 computer!

Updating and Upgrading Debian Raspbian “wheezy” Linux Distribution

Before you begin to install any software it’s best to make sure the package index files are up-to-date (essentially just a file pointing to the latest version of compatible software – for example when we install VNC later in the guide). Make sure you have an internet connection and run the following command. It may take a few minutes.

sudo apt-get update

Followed by:

sudo apt-get upgrade

Now’s also a good time to make sure the who Linux distribution is up-to-date. You can do this now, or later (it may take a while). Again make sure you have an internet connection and run:

sudo apt-get dist-upgrade

You can run these commands every now and again to make sure you have the latest software. If you’re asked to confirm anything, just hit ‘y’ on the keyboard.

Installing VNC on the Raspberry Pi for Remote Access

You may find it a bit cumbersome having a keyboard and mouse connected to the Raspberry Pi. What’s the point in having a computer smaller than your TV remote if you need to connect a massive Keyboard?

Installing VNC will allow for remote access via laptop etc while the Pi remains hidden away behind the TV or next to the router.

Giving the Pi a Static IP Address

So we always know where the Pi is let’s give it a static IP address. if you’re not sure what your local network range is open a command prompt from a Windows PC.

Start > Run and enter:


Now type:


You should see something like:

IPv4 Address. . . . . . . . . . . :
Subnet Mask . . . . . . . . . . . :
Default Gateway . . . . . . . . . :

We give the Pi the same details excluding the last 3 digits of the IPv4 Address. Let’s make it easy to remember:

Back in the Raspberry Pi goto the command prompt again, don’t start the desktop.


sudo nano /etc/network/interfaces

This will bring up the network interface configuration file in the nano text editor. The word sudo simply runs this command with super user privileges.

You can save yourself a lot of time at the Linux command prompt by using Tab to auto complete.

You should see:

iface lo inet loopback
iface eth0 inet dhcp

Change this to (your IP details maybe different depending what you got from ipconfig):

iface lo inet loopback
iface eth0 inet static

Use Ctrl X to exit. Hit Y when prompted to save.

Now restart the network interface to apply changes without a reboot:

sudo /etc/init.d/networking stop

Followed by (can you guess?):

sudo /etc/init.d/networking start

Now your Raspberry Pi will always have the same IP address. Try pinging it from the Windows command Prompt:


Installing VNC on the Pi

We’re going to use Tight VNC here (server on the Raspberry Pi and Viewer on Windows).

There’s an excellent tutorial over at Penguin Tutor if you need more information.

First of all install the Tight VNC Server from the command prompt:

sudo apt-get install tightvncserver

Let it finish installing (if you’re asked to confirm anything, just hit ‘y’ on the keyboard). When complete start the server:


You’ll be asked to create a password, enter one and confirm. I used raspberry for ease of use, but probably not the most secure!

When asked to create a view only password, say No.

Every time you start VNC you’ll see something like:

New 'X' desktop is raspberrypi:1

Note the :1. This is the desktop session created. You can add more by running VNC again.

Head over to TightVNC on your windows box and install the viewer.

To connect run the VNC Viewer and enter:

Tight VNC Login

Where the IP address matches the one entered before and :1 matches desktop session.

When prompted enter the Password used when installing VNC Server.

The VNC Connected to Raspberry Pi

Start VNC Server Automatically on Bootup

There’s no point in having VNC if you have goto to the Pi, login and start the server manually. So let’s start it on bootup before the login prompt.

Create a new file in the init.d directory:

sudo nano /etc/init.d/tightvncserver

Enter the following details:

# /etc/init.d/tightvncserver
case "$1" in
        su $VNCUSER -c '/usr/bin/tightvncserver :1'
        echo "Starting TightVNC Server for $VNCUSER "
        pkill Xtightvnc
        echo "TightVNC Server stopped"
        echo "Usage: /etc/init.d/tightvncserver {start|stop}"
        exit 1
exit 0

Give the script executable permission:

sudo chmod 755 /etc/init.d/tightvncserver

We can now start or stop the service manually:

sudo /etc/init.d/tightvncserver start
sudo /etc/init.d/tightvncserver stop

But let’s make Tight VNC Server start every time the Raspberry Pi starts up:

sudo update-rc.d tightvncserver defaults

Now just power off the Raspberry Pi. Make sure it’s connected to the network and power back on. You can now connected across the network using the VNC Viewer!

The Raspberry Pi Config Tool

The Raspberry Pi Configuration Tool (aka Raspi-config) is a very useful tool pre-packaged with the Raspbian “wheezy” distro. You’ll probably see it during installation; but you can launching manually for the terminal with the following command:

sudo raspi-config


I’d recommend running the following as soon as possible:

  • expand_rootfs: This will expand the file system to the full size of your SD card; allowing you to use the full capacity for programs etc.
  • change_pass: Change the default password!
  • change_locale: Change your location. This will be used by some 3rd party installer to install the correct config for your setup.
  • change_timezone: Change the timezone so, well, so you have the right time.

Useful Terminal Commands

Shutdown your Pi in 1 minute:

sudo shutdown -h 1

Reboot your pi in 1 minute:

sudo shutdown -r 1

Get manual for any command:

man [command]


man shutdown



Cisco, Networking

PAT (Port Address Translation)


Router#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#host ISP
ISP(config)#no ip do
ISP(config)#no ip dom
ISP(config)#no ip domain-lookup
ISP(config)#int fa0/0
ISP(config-if)#ip add
ISP(config-if)#no shut

%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up
ISP(config-if)#int lo0

%LINK-5-CHANGED: Interface Loopback0, changed state to up

%LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to up

ISP(config-if)#ip add
%SYS-5-CONFIG_I: Configured from console by console

ISP#copy r
ISP#copy running-config s
ISP#copy running-config startup-config
Destination filename [startup-config]?
Building configuration…
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up

Set ROUTER Company

Router#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#host Company
Company(config)#int fa0/0
Company(config-if)#ip add
Company(config-if)#no shut

%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up

%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up

Company(config-if)#int fa0/1
Company(config-if)#ip add
Company(config-if)#no shut

%LINK-5-CHANGED: Interface FastEthernet0/1, changed state to up

%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up

Company(config)#ip r
Company(config)#ip route
Company(config)#access-list 1 pe
Company(config)#access-list 1 permit
Company(config)#ip nat inside so
Company(config)#ip nat inside source list 1 int fa0/1
Company(config)#ip nat inside source list 1 int fa0/1 overload
Company(config)#int fa0/0
Company(config-if)#ip nat inside
Company(config-if)#int fa0/1
Company(config-if)#ip nat outside
%SYS-5-CONFIG_I: Configured from console by console

Company#copy r
Company#copy running-config s
Company#copy running-config startup-config
Destination filename [startup-config]?
Building configuration…

Linux, Networking, Server

Samba [Pengertian(Copas dari PI)]

Tulisan kali ini gw copas dari Penulisan Ilmiah gw, yang  judul nya “Membangun Samba Server pada Linux Centos”


Samba atau SMB yg disebut juga Server Message Block, sebuah protokol yang dapat berjalan pada multi platform untuk menangani file sharing dan printer sharing. Samba bisa juga dibilang sebagai jembatan untuk menyembatani sebuah komputer yang hendak melakukan sharing pada platform yang berbeda.

Samba dapat menangi klien dari Os windows, OS X, linux dan Unix. Namun untuk sisi server samba yang di gunakan adalah platform Unix dan Linux. Samba memiliki beberpa keunggulan, gratis, dapat berjalan pada platform yang berbeda, konfigurasi mudah dan samba merupakan opensource.

Bulan Desember 1991, merupakan sejarah kelahiran Samba Server, yang dibuat oleh seorang Andrew Tridgell, mahasiswa PhD (Doktor) Ilmu Komputer di Australian National University (ANU), Canberra, Australi. Singkatya, tahun 1992 project Samba dibuat untuk mengatasi persoalan yang muncul dikala dia hendak menghubungkan komputer miliknya (Linux) dengan komputer (Ms.Windows). (Sebenarnya samba telah dibuat sebelumnya namun belum diporting ke Sistem Operasi Linux.  Tahun 1992, merupakan awalnya berdiri team Samba yang pada waktu itu beranggotakan Jeremy Allison, Jochen Hupert, Matthew Harrell, Frank Varnavas dan beberapa hacker lain yang tersebar diseluruh dunia.

$ sudo Masuk Sebagai Super User
#yum install samba Install Samba
#useradd <user> Menambahkan samba user
#smbpasswd –a <user> Menammbahkan password pada user
#nano /etc/samba/smb.conf Configurasi Samba dengan nano
#service samba start Mengjalan kan samba