A quick simple one this time: Setting up a simple Samba file server on the Raspberry Pi so that you can copy files across or develop code on a Windows machine.
To most familiar with Linux this is not rocket science but I wanted to document the simple setup I use to allow non-restricted file sharing on the RPi.
This isn't designed to be a secure file server setup as it doesn't have any user authentication but for a local development node it allows quick and easy access.
This guide describes how to setup a Raspberry Pi as a Squeezebox server. It assumes a clean installation of Rasbian is setup and ready on the RPi. This will allow you to stream music from a central server to one or more players via your network. You can combine this with a wireless network and power your RPi from a battery to make this a truely portable music system.
Player clients can be either 'proper' Squeezebox products or you can use software players together in the same system. I will detail in a seperate post how to setup the RPi to be a Squeezebox client, you can have the player running on the same device as the server or you can have it running on a seperate RPi. You can also choose to synchronise multiple devices to the same music source and therefore stream the same music to multiple rooms!
I am going to publish a small series of articles on the Raspberry Pi and give setup instructions for the things I am going to be using it for. As much as anything else these articles are for future reference for myself and I hope may be useful to some others too.
This first article details my basic setup of a Pi including setting a static IP ready for it to be used on whichever project I need.
Download and setup Raspbian as per instructions on the Pi site, let it boot up and find it's IP address (I just let it boot and look at my routers DHCP table). Using Putty (or any other SSH terminal) login to your Pi (user: pi, password: raspberry).
The first thing I like to do is to run the configuration utility in order to set the timezone, change the login password and expand the file system to use all of the available SD space.
For anyone who's tried to setup VPN it is without a doubt a "black art". The information given by most sites on the net is incomplete, incorrect and sometimes just plain stupid. We setup VPN a while back at work with PPTP and after an initial learning curve managed it relatively easily. We quickly learnt that PPTP is not a very secure method to use and started to setup a L2TP/IPSec connection, this is where the fun really started!
Installing CrashPlan on my QNAP TS-210 NAS in headless mode means that I have an instant online backup of all of my archive data stored on my NAS drive. CrashPlan keeps revision history of all my files, allowing me to recover my NAS to a state at any date should I lose data or overwrite something.
Today at work we swapped from using CVSNT on a Windows server machine to using CVS for linux on a QNAP NAS storage box. All appeared to be working fine until I checked out a file that was committed as a binary file. I quickly realised that half of the repository was corrupt (i.e. all binary files). After a little bit of research it was clear that CVSNT and CVS for linux are not directly compatible any more as they store the fact that a file is binary in a different format.
In each repository file there are entries that specify file formats, cvs comments, versions, etc. In amongst these is a flag that specifies the file type.
A file specified as binary in CVSNT has a line reading (where the space is actually a tab):
A file specified as binary in CVS has a line reading (where the space is actually a tab):
If you need to boot of a usb drive in order to install an operating system then follow these steps on a Windows machine in order to make the drive bootable.
DISKPART> list disk
Disk ### Status Size Free Dyn Gpt
-------- ------------- ------- ------- --- ---
Disk 0 Online 149 GB 0 B
Disk 1 Online 3834 MB 0 B
Vista recently kept refusing to allow me to login to my NAS share because it was already connected with another user/session. I resolved this by forcing the connection to be disconnected.
From the command prompt enter:
This is my step by step instructions for how I setup Ubuntu server as a transparent Squid web cache.
Note: This post is by no means a definative guide on setting up a server, or squid, but is just the steps I took in getting it working in its most basic form.
- Install Ubuntu Server 9.10
- Logon to the server and login as root
- "sudo su"
I've spent a few days reading up and have managed to successfully (and fairly pain-lessly) setup Ubuntu Server 9.10. So far I have setup a clean install, installed OpenSSH and Squid and setup routing so that the Squid Caching is transparent to clients using the box as a gateway.
The server is setup with only one network card with 2 subnets, the system forwards requests on the HTTP port to the Squid port and provides a transparent cache. Requests coming in from either subnet pass through the server correctly however that is no isolation between the two networks.
Next I want to setup a 2nd network card and firewall between the two networks. I also want to setup Apache/PHP and serve an admin GUI for the system.
Step-by step configuration to follow....