Netbook Server – Sharing An External Hard Drive In Linux

So if you have followed my instructions, you now have a:

Computer that runs Debian Linux
http://www.ramblingmoose.com/2016/02/the-netbook-server-installing-debian-or.html
Computer that you can look into using Remote Desktop
http://www.ramblingmoose.com/2016/02/the-netbook-server-you-need-to-be-able.html
Computer that you can share part of the local hard drive
http://www.ramblingmoose.com/2016/02/the-netbook-server-how-to-actually.html
Congratulations.  You now have a file server!

If you followed those directions, it also installed a bunch of other programs that will let you do other things.  I noticed that something called “CUPS” was installed, and that will let you plug a printer into the same machine and act as a “Print Server” or a “Network Printer” – if you can find the instructions on how to configure it.

Debian and Raspbian both come with enough that you could use that machine as your one and only daily driver computer.  The browser is called “Iceweasel” and is Firefox, rebranded.  You have Libre Office to write letters, work with spreadsheets, and make presentations that are all compatible with Microsoft Office.

Yes, it really is, I use it every day.  No, you don’t have to pay for it.  Ever.

There are more apps, and I would suggest looking into some of the software that is out there, all free.  If you start “synaptic” from your terminal as root or “sudo synaptic &” you will find so much free software that your mind will fog up and get tired before you find everything you want.

But that all is just the preamble to this discussion.  You came here to share an external drive.  This is like any other shared drive on the network, you have to have it plugged into the server (USB Port on your netbook), you have to tell the computer where it is, and you have to tell it how it is to be shared.

Remember, I am trying to write this for a Windows audience so I’ll go as basic as I can.  You Windows folks are in a new world, and you will want to have this go well.  If you are a Linux expert or even intermediate, you may find this needlessly wordy.   Not to worry, you’ll be right.

One Step At A Time.  Divide and Conquer.

First step – Make sure you can read the drive from Linux.


Before you get anywhere, start the computer.  Log in.  Get to your desktop.  Then plug in the drive.

Start your terminal session by clicking on the (start) “Applications Menu”, then click on Terminal.  Sign in as root by entering “su” and your root password.  You will eventually need this

Now, launch the file manager by clicking on the (start) “Applications Menu”, then click on “File Manager”.

In the left pane of the file manager you will see Devices, Places and Network.  In “Places” your external drive will come up with a little eject arrow to the right of it.  Click on the icon for the drive.  A little wait icon will start to rotate.  When it is through it will do one of two things:

Success is if you are dropped into a view of whatever files are on the disc.  It means that all the drivers are in place.  Most likely this drive is something called “vfat” or “fat32”.  Remember this for later.

Failure is if you get a big ugly warning message up.  That means that you don’t have the drivers for the format that the drive has on it.  Most likely you will have to install the set of drivers called “ntfs-3g”.  This would be where your external is a really big drive and you did it to make things faster.  To install that do the following steps:

  1. apt-get update
  2. apt-get upgrade
  3. apt-get install ntfs-3g
  4. shut down the server
  5. unplug the drive (It isn’t shared yet and you don’t want to wait for the computer to release it)
  6. start the server
  7. and plug in your drive when you have logged back in to the desktop, terminal, and file manager.

No matter what, at this point, you should be able to read your external drive.

You also need information.  When you worked with the server software “samba” you created a user and a password, and you will need that later.
 

Next step – finding where Linux thinks that drive actually is.

Here is where Linux people will be saying “gparted“.  If you know how, go for it, this is the slower but less risky method.

To determine what is plugged into your machine type into the terminal:

  • dmesg | tail -30

Linux keeps a log of whatever is important to the system.  Since you “just” plugged that external drive into the computer, the last thing on that very long stream of text will be what was reported when the computer detected the hardware.  The “tail” bit will tell terminal to just show the last 30 lines of what are in the display of messages (dmesg).

The clue there are the lines that say “usb 1-2” and “sdb”.  When I plugged in the drive, it said “new high-speed USB device number 2”.  So what we’re going to tell the system is that the drive is sitting on a device called sdb.  The partition we will be using will be the first one, so it is officially “/dev/sdb1”.  In windows, it would come up as your D drive if there is no DVD/CD drive present, E Drive if it is, this is the same thing.

Since my stick is formatted to be removable on Windows, it is a format that Linux calls “vfat“.    My big 4 TB drive is formatted NTFS, so I would have to mount it as “ntfs-3g

Create a place to store the data in.  In my case, it is “/home/bill/external“.  You should change “bill” to the name of your user that you logged into when you started this exercise.  To make the directory, open terminal again as a regular user and enter this command:

  • mkdir /home/bill/external
  • chmod 0770 /home/bill/external

You just created the directory and set it up so that you and root can use it.

There is one file that you need to edit in Terminal with the following command:

  • nano /etc/fstab

This file tells linux where all of your disc drives sit, so be careful and don’t delete anything.  You will be adding a line, as below:

  • /dev/sdb1 /home/bill/external vfat defaults 0 0″

That says – put the external drive’s first partition “in” the /home/bill/external directory.  It also says that it is “vfat” format so change that if it is an ntfs-3g format.  The defaults are lengthy and you can go into them in great detail on the Wikipedia Article.

If you wanted to go further and add multiple partitions for other people, you could do it in /etc/fstab by adding multiple entries.

Once you restart the computer, you should be able to find the drive on Windows, and you are on your way.  Just find the drive in Windows File Manager, enter in your login from Linux, and you’re good to go.

One final wrinkle

What this does is to “bind” the external hard drive or memory stick to the server.  It is now set to automatically mount and share the drive whenever the power comes back on.  If you do not have a drive plugged in, Linux will boot, but put you into a terminal session as root into what is called “Single User Mode”.  You can do the following edit at that point with the commands below.

To remove the hard drive so that the server is no longer looking for the drive at boot, in terminal as root:

  • nano /etc/fstab
  • find the line with the external drive and enter a # as the first character in the line
  • save the file and restart the computer

This now turns your server into a machine that only serves the local hard drive.

Advertisements

The Netbook Server – How to Actually Share Part Of The Hard Drive

First, you installed Linux to a RaspberryPi or a Netbook, or whatever you had on hand.

Second, you made it so you could look into that machine from anywhere on your network.

If all you wanted was a taste of how to run Linux and have fun with all those free goodies there, you could have stopped.  Now I’m going to show you how to take a part of the hard drive (a folder) and share it out to the network.

Why?

So you can copy your pictures/recipes/important crap somewhere else.

So you can back up your computer across the network.

So you can brag to the co-workers that you have a proper Linux Home Server and sound like you know what you’re doing.

Well the deal is that it took me a half hour to do this last night.  I was distracted by what was on the TV so it would have taken less time.

I did this on a RaspberryPi first.

 

Since my instructions were written there I then repeated the steps on my Netbook running Debian, so the instructions work.  It also works on anything derived from Debian Linux, so that if you have found this article using Linux Mint, Ubuntu, or any of the other derivatives from the Debian Family, you SHOULD be able to get this working with very little fuss.

If you are familiar with Linux and the way things work, you’re used to finding instructions that promise to do something, get totally frustrated that the instructions are geeked out, and then realize that while it’s working you don’t actually understand WHY things are done this way.

I’m going to attempt to do it differently.  This way when I have to look at it later, I can look at my own B.S. here and say “Oh yeah, I remember this”.

The information you need:

1) Your sign on name – this will be written assuming you are “bill”.  Just change that to your own name from when you created the machine.

2) Your “root” and regular user (bill) Passwords.  

3) The name you gave the computer when you installed Linux.  It could be pi or rudolph or any other name you came up with.  

I will make assumptions and try to explain it all away.  Don’t worry, I followed these same steps last night and the server now “serves” files out to the network.  As long as your network has a firewall, your stuff is safe.

Get the machine “up to date”:

  1. Start your Terminal from the start menu.
  2. su and hit enter – Get “root” by giving it the root password.
  3. apt-get update – pull down all the headers of new stuff since the last time you got on the machine
  4. apt-get upgrade  – actually get all the upgraded software

Answer yes or Y to the prompt asking if you really want to update things, go make yourself something from the kitchen and come back in a bit.  It may take time.  There are always updates.  But if you never make changes to your “Repositories” on Debian or Raspbian, you are safe and free from any nasty viruses.

 

 

Get the Server Software Installed:

You’ll be shocked how little has to be done here.   The server software is called SAMBA.  You know, like the great music from Brazil?   The current name has been made less fun – CIFS.  People tend to say it as “Siffs”.

Geeks.

One line gets the software.  In terminal from the last part, as root enter the next line:

apt-get install samba samba-common-bin

Configure the Server Software:

You have to roll up your sleeves here.  You are actually going to change a text file, but I’m going to give you the information.  Remember – I am entering it as “bill”.  If you are on RaspberryPi, your regular user will most likely be “pi”.    Change “bill” to what you need it to be.

 

Second, a comment starts with a hash tag.  #

 

1) In terminal where you are signed on as “root”, enter the following line to get into the “Nano” editor:

 

nano /etc/samba/smb.conf  

2) Find the line with “wins support” and change the line to read:

wins support = yes

3) Find “Share Definitions”.  You are going to enter in a block of text.  Remember to change the path from “bill” to match your login name.

 

[Downloads]
comment = Downloads Directory
path = /home/bill/Downloads
browseable = no

    writeable = yes
only guest = no
create mask = 0770
directory mask = 0770
public = no

 

#browseable limits logins to only see this directory and what is created there.  “yes” shares everything.

 

4) ctrl+x to exit, type y to save the file, then enter to get yourself back out to the root terminal prompt.

5) add a Samba user to be able to share that directory.  In terminal enter the following:

smbpasswd -a bill

Enter in a password, then enter it in again.  This is the password you will need to have to be able to get at the files from out on the network on another machine.  You will log in as (bill) and (password) from that other machine when you try to get there using File Manager.  Same thing with Mac or Linux.  They all need that password.

Write down your password.  I recommend using the same as your regular user password.  If you made them all the same as the Root password, well that may be easier.  You can also leave it blank, but I do not recommend that.  In fact, forget I mentioned it (or not…).

6) restart the computer


At this point, the netbook server is now visible on the network.  It is sharing the default login’s “Downloads” directory.

If you go into File Manager in Windows, you will be able to get to the files that are stored in the netbook’s /home/bill/Downloads directory from any other machine on the network as long as you know the default user’s login.  It will ask you for user and password.

If you have followed this, you can use the computer’s name from when you created it.  I now have two servers “rudolph” for the netbook and the raspberryPi.  If computer names aren’t your thing, you can also find them via IP addresses.

But at this point you have a functioning File Server.

You’re done.  Next time it’s getting this machine to serve out files from an external drive that you plugged in.

The Netbook Server – You Need to be Able To Look In Remotely With XRDP

Blogs have many purposes.  One that is not often stated is that it serves as a place to put things that the writers feel they need to remember.  I have a habit of creating Linux computers for my own personal desktop use or as a server from time to time.  It isn’t often enough for me to memorize everything, and you do forget things.

So to make it easier, I’m going to do this in a couple of steps.  Last time I wrote, I talked long and hard about setting up either a RaspberryPi or a Netbook as a server.  The reality is that these instructions work with pretty much anything that takes a version of Debian as the operating system.  Since Debian has been copied and serves as one of the main “seeds” of the trees of distributions, the instructions can be used elsewhere.

If you followed those instructions, at this point you now have a computer that has Debian.  It’s time to get it Up To Date, and set up so that it can be seen from other computers on your network.  The reality is that this is pretty simple and if I cut out the editorializing, it could be written in about three well crafted paragraphs.

Most Linux distributions take a “You’re the boss” attitude.  If you break it, you can fix it, but it will allow you to break it if you know the right commands.  Most also take the attitude that it will only install what you need to be a “role” of a desktop/laptop or a server.  Debian Linux is an excellent desktop or laptop for general home or office uses.  I use it for 95% of my own computing needs, but there are some things that need to be added.

—-

Firstly, start the computer, and log in.

Second, get your terminal started up.  Terminal will look like the old style DOS computers.  It’s a command line interface – you type stuff in.  Not to worry, all the commands I type in can be copied from this blog article and pasted directly into your terminal session.

Third, you have to be “Root”.  Root is the administrator of the computer.  When you created your computer you gave it two passwords.  They may be the same one, but the one that you need is your root password.  In Terminal type in: su .  Enter in your root password.

The result is that everything that you do in the terminal window has full control over your computer.  It will allow you to completely remove everything, so be careful.  It is after all, at your own risk.

Fourth – get the computer up to date.  In terminal you need to enter in three commands, one after another.  Each time, if there are changes, it will ask you to enter a “y” or “n” depending if you want to continue.  If you simply hit enter under Debian 8, it will assume you want to continue.

  • apt-get update
  • apt-get upgrade
  • apt-get dist-upgrade

What that says is update the list of programs that you know about.  Then find out if there are any upgrades and give you the option to upgrade or not.  Then if there is a distribution upgrade, give you the option to upgrade or not.  Distribution upgrades are rare.  Sometimes there are updates that require you to enter in some information.  In this case, you will need to consult the internet for what is going on.  Mine was asking for a “Root Certificate” update and put up a list of changes. I read it, typed q to quit, and it went back to installing “stuff”.  Major changes could be much more involved.

Depending on what is installed, you may want to restart your computer.  Linux does not require this, but sometimes you should.  It’s up to you, I did, and all that took me a good half hour to get to this point.  Get something to drink and settle in.  When you get back, get yourself back to a terminal and log in as root.

I’ll wait.

Next step.  Remote Desktop.  Why you need this is that if you get this beast up and running you may decide to put it in a closet somewhere.  Inconvenient.  You might want to do work on it directly.  So why not be able to start a window up and actually look at the desktop.  Windows has the software available to look at it installed on the newer versions – RDP.

It also makes it easier for me to sit at one computer and work on two at the same time.  Keyboard in lap is easier than two keyboards on a desk.  I can relax!

To install type:  apt-get install xrdp

To get it to work, you simply open up a remote desktop client to the computer name and you will get a windowed representation of the other computer.   This can be adjusted to size in the configuration files.  Without any tweaks, it worked on my Linux machine using Remmina.

What it is actually doing is getting you to log into another session on the remote Linux machine.  If this were windows, it would take over the existing session.  Linux gives you the option to do it that way as well, but you would need to reconfigure it.

It is a little odd to see the default behavior.  I had the computer up under remote desktop, and it was sitting on my desk near me.  Screensaver came on on the table, but not on the remote desktop.  Then when remote desktop went to screensaver, it was different from the table.  Shows that you’re under a completely different session by the default behavior.

 

To actually use the machine remotely:
You need to know what IP Address the remote computer is “at”.   Most times the machine name you gave it when you installed the operating system will be visible to the world.  I find that usually shows up when the network is set up with sharing via something called Samba.  Installing Samba can be an annoying process.

ifconfig –  the old school way of doing things.

open that terminal prompt on the computer and log in with su as root.  Once there, type in ifconfig.  You will get a bunch of text.  If the computer is connected with an “ethernet” wire to the network, you need to look at the “eth0” otherwise, “wlan0” is most likely how you are connected with Wifi.

The line you are looking for will be the second one in the group for wlan0 or eth0.  Look for “inet addr:” and you will find your internet address.   In the case of the picture below, I am on wlan0 (wifi), and my internet address is 192.168.1.208 .

Open your remote desktop program.  You may have to actually install one in windows.  Since I use mine so heavily I might have done that literally years ago.  Mine was found by clicking:

 

  • start
  • all programs
  • windows accessories
  • remote desktop connection

For me to connect to my server, I enter the IP address 192.168.1.206 in the computer box, then click connect.

There you will have to enter in the log in information to log into xrdp.

  • sesman-Xvnc
  • your login will be your username on the computer
  • your password for the computer

Hopefully you will get there and you will see a desktop – here’s mine!

The Netbook Server – Installing Debian or Raspbian

Funny how writing a blog can be.  I have been thinking how to write this bit for a couple weeks now.  I came to the decision that the easiest way is to step back and let someone else do some of the “heavy lifting”.

If all this information is a big much, I will make the links you really need to follow in bold.  So if you trust my blog, just jump to the link and click.  If it is “later” and the link is broken, you can click an earlier link.

Remember, if you are installing an operating system onto a computer you WILL lose everything that was previously on the hard drive.  Back it up before proceeding.

Also, standard internet weasel words – This is obviously at your own discretion.  I have done these instructions as I wrote them down, they worked for me.  So at your own risk, I’m not responsible for any damage or time wasted, extra electricity burned, or whether your netbook sprouts wings and demands to be fed an offering periodically.  Lawyers are respectfully welcome to take their lawsuits, roll them into a little ball and file them where they will not effect (or affect?) me.

I have done both processes successfully more than once.  With Debian, all but one of my computers run that operating system.  I wrote this guide while doing the steps for Debian, so it should be pretty close.

Finally – take your time.  If you’ve only ever used Windows, Linux is a completely different philosophy.  Everything is free, but you pay for support.  So if you have a question, look to your favorite search engine, and see if you can find it yourself.  You would be shocked at how much information is out there for Linux, and the quality of the write ups are usually much better than I find for windows.

RaspberryPI

If you have one of these beasts, I am assuming you have already looked into and installed the operating system once.  That simplifies my own tasks.

Get yourself an unused memory chip, I strongly recommend larger than 8GB.  16 is acceptable.  Why is because I found that Raspbian has a quirk or a bug in it.

If you want to copy a lot of files to a shared drive on Raspbian, it looks at the empty space on your chip and says that is the maximum you are going to be able to copy to it.  When you install Raspbian, go back in to the preferences and make sure that Noobs releases the entire chip to be used.  Typically, it will be set for 2GB, noobs will let you reclaim your entire 16GB plus.

Why Raspbian?  Because it is based on Debian, and because it has “official images for recommended Operating Systems”.  That and since Debian is so stable and well known, it works for my own knowledge – I can do it in two places but only write one set of instructions once you’re “there”.

RaspberryPi’s instructions really are simple, and you can follow them on this page.

https://www.raspberrypi.org/documentation/installation/installing-images/

 
Debian – You want this.

There are other Linux distributions that are more “user friendly” but few are anywhere near as stable as Debian.  You could put a computer inside a wall running Debian and as long as it gets power, you can ignore it and let it happily run.

Since this is Netbook oriented, I am pointing you to a 32 bit copy of Debian.  If you discovered this blog posting elsewhere, consider for yourself whether a 64 bit copy is right for you.  It will not work on a netbook, but on a Core 2 Duo or newer, it may be right for you.

One other decision to make.  Debian has another quirk.  Debian’s maintainers are very adamant about not having any software on their operating system that is owned by other companies.  It is called “Non-Free”.  To you and I, that can get in the way of having what you need on your computer.  In the case of my Lenovo S10-2 netbook that I will use for this project, I need the Non-Free version of the wifi drivers.

Thankfully someone else has put all that together for you.  If you don’t need the Non Free version of Debian, or you want to see what on earth I am talking about, go and download the other version.

In my case, the Non-Free saves me the step of waiting on the network cards.

I know, it all sounds very odd because Windows has all that stuff “on the DVD”.  In reality, since Windows is 95% of the market, they make sure that Microsoft has the drivers needed.

For most this is all you will need.  There still was a file it wanted during the install.  Broadcom Wifi Drivers are a BEAR.  So I stopped the install after I found the ones I needed online.  It was looking for b43/ucode15.fw series of drivers.  The solution is actually to install Non-Free Debian with an ethernet cable plugged in to the Netbook for the network.

While Servers should be connected to the network with ethernet for speed, this is just a sloppy omission – Non-Free or Not.  Since this bothers me and other owners of the Lenovo S10-2, I’ll solve it by restarting the install with ethernet plugged in.  Weirdly enough, after all of that on my first boot, it came up without a problem.  It must have found what it needed “magically” on the install disk or the internet.

For Debian, the DVD you want is on this link:
http://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/current-live/i386/iso-hybrid/

To explain what that file name means:

  • That “Including Firmware” is what you really need.
  • That “i386” says 32 bit operating system – for netbooks.
  • That “current-live” says I want to be able to test this on my computer and run it from the DVD without ever touching the hard drive because I don’t trust anything.

When you click on that link, it puts you with a bewildering list of weird scribbles and file names.  The one you want is the one with “xfce” and “iso” in the name.

Why?  Because the “place” in the file name tells you which desktop you are going to get.  That desktop is called xfce.
Why XFCE?  Because it has a balance of looking like Windows 7, is highly configurable, and is relatively lightweight so it will run well on older computers.  I trained a 69 year old little old lady how to use Linux as a daily driver using XFCE and her son uses it to this day after she passed on.  It really does look that familiar.

The direct link for the file, as of today, is:
http://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/current-live/i386/iso-hybrid/debian-live-8.2.0-i386-xfce-desktop+nonfree.iso

Click on the link, and save the file somewhere meaningful to you.

When this is finished, you need to make a copy of the operating system on a 2GB or larger USB Memory stick.  Remember, your Netbook will almost certainly not have a DVD drive on it, so you’re doing this most likely on your windows system.

The instructions for Linux and Windows are on the following link.  What they are telling you to do on Windows is download a program, install and run it, then tell the program where you put your copy of Debian.

http://crunchbang.org/forums/viewtopic.php?id=23267

When you go to run Win 32 Disk Imager You need to run it as an administrator.  Right click on the icon in the start screen/menu and select “Run As Administrator” and follow the instructions on how to create the disc by selecting the ISO Image File, and the correct Device, then click Write.

Now that you have all that on the USB Stick, you can test it in the Netbook by plugging it in to the USB port.  Then turn on the Netbook, but hit the key that you use to get into the temporary boot menu – typically F12 when you are booting.  To get to see what Debian looks like, select “Live (586)” and hit enter.

When your computer is up completely under Debian, check to make sure that you have Wifi connectivity, Ethernet connectivity, and that there isn’t anything missing.  Basically a Netbook is an old laptop these days and with the Live DVD or USB stick you just made, It would be pretty rare if you are missing anything on it, so just sniff around and make sure it found all your hardware.  When through you can shut everything down and take a breather.

Installing Debian from the Live USB Stick onto the Netbook.

It’s surprisingly easy.  The video at the end will help if you get worried or lost but it boils down to you need to enter just a few things in.

Start by selecting “Graphical Install” at the “Boot Menu”.

Language (English)
Location (United States)
Keyboard (American English)

Computer Name:  It will spend a bit gathering itself together then ask you for a name of the computer.   My own habit is to name it after large Moose, Reindeer, Elk and that sort of thing.  Really, It doesn’t have to be anything meaningful, so have fun with it.  My test installs were Rudolph and Blitzen.  Or be bland and call it “server”.  The default is “debian”.  But it has to be unique to the network.  Two computers with the same name cause confusion, just like the year I had five Karen’s in my classes.

Karen.  Should I call it Karen?… Naaaah!

Domain Name – if you know of one use it, but I leave this blank.

Setting up users and passwords.  

First there is the Root Password.  This is the Administrator on Windows but it is password controlled.  It’s one of the many reasons why Linux security is stronger than most.  If you have someone trying to install something on your linux computer, a window will come up and ask the user to enter in this password.  It should be meaningful, and ideally it should be complex.  Write it down because a Linux computer without a root password is useless.

Second, there is the Regular User Name.  This is the “Non-Root” user who gets to sign onto to the machine.  It is you, but it could be anything.  Just write this down or else you won’t be able to log onto the computer, and no you may not use Root.

Third,  you will need a password for the regular user.  It can be the same as the Root password, but if it is, don’t tell anyone because they will have full control over your computer.  Can’t have that can we?

Fourth, you need to enter in your time zone.  If you don’t know it, you are probably lost.

Partition Disks:

Here is where you end up losing everything on your hard drive to give the netbook a new life as a Linux Server.  If you did not back up your computer, proceeding will delete the old data.  That may be what you want, it may not be.  Now is the time to pause and backup the data, unless you want to delete it all.  It is a One Way Trip!

Partitioning disks is something I have always found easiest to simply take what they give me here.  The “Guided  – Use Entire Disk” prompt is what I select.

The Disk naming is different on Linux than Windows.  They call things HDA and HDB, and each partition on the disk gets their own number.  Typically what you will want to do is look for a disk that has the same size as your netbook.  Many netbooks have a 160gb or less drive in it.  The install stick may also be spotted – but you should be able to determine that logically.  Most likely it will be called sda…  Select that hard drive, tell it to create a new partition table, and if it looks right, click continue.  Mine actually had a string saying “SCSI3 (0,0,0) SDA – 60GB Hard Drive” and a second one on “SDB” that was the 2GB Generic Disk

When you are done setting up the disk with “All Files In One Partition“, you highlight “finish partitioning and write changes to disk“, and let the computer create your partitions.  It gives you a warning at the end to write changes where you have to select “Yes” and continue.

At this point, Debian will write the data out to the base system – your hard drive.  You are on the way to getting a new operating system.  Go make a sandwich or a cup of coffee and come back later…

Now that it is later…

Package Manager:

It will come back and ask you to configure a Package Manager.  Linux is free.  There isn’t one central place that all is kept.  You will be asked if you have a network mirror – and that is the location of the place that that software is kept.

Yes. (Always.)
Country:   United States.
Please Select the Debian Archive Mirror:  debian.gtisc.gatech.edu or a closer one
Proxy – leave blank unless you know otherwise.

All the software is spread around the world on different archive mirrors.  So Debian, and most other Linux distributions, share the burden of putting the free software out there by creating a place for it to reside.  Here in Florida, my nearest place is at Georgia Tech in Atlanta, but you could be using a server anywhere.  Pick one, nearest is best and you can change them later.

Here is where you can get your second mug of coffee and comeback later.

When it finishes installing all those packages, it asks you if you want to “Install Grub To Hard Drive”.  Yes.  Continue.  Why is so the computer will boot from the hard drive, so you really do not have a choice.

It will ask  you what drive to write it to.  /dev/sda is your main hard drive and that is your choice.  My generic USB stick was in /dev/sdb at that time and obviously you do not want that.

It will write out that GRUB which is a boot menu, then bring up a page saying to “Finish The Installation“.  Make sure you remove the memory stick, and click continue.

On the first boot:  “Welcome to the first start of the Panel

When you log into the computer the first time, XFCE will put up a message asking you to configure panels – you want to “Use Default Config“.  That gives you a control strip at the top, and a launcher at the bottom.  Both are completely configurable from your system settings.

Now you are running Linux on your netbook.   Have fun!

Video is at https://www.youtube.com/watch?v=TIuOFqQ-XTk

When You Need A Home Server, How About A Low Power Netbook or a Raspberry Pi?

I had a problem, and this is the thought process behind how I solved it.  It isn’t the solution itself.  I have to take pictures and write all that stuff down.  I simply haven’t yet.  That will come in the future.  By the end of the process, I’ll have created a nice tidy, low power consumption file server that can be ignored because it will just work.

What this does also is to take that computer that was slid into the back of the closet with data on it, and clean all that once- important stuff off of it, and give the machine another 3 to 5 years of very important use.

Great way to reuse something that you were wondering how to get rid of isn’t it?

But here is the thought process, if you are curious…

 

 

We like to collect “stuff”.

Drive down any street in Suburbia during the weekends and you are guaranteed to find a $20,000 or more car sitting in the driveway because the garage is stuffed with things you can’t bare to get rid of.

That extends to the digital world too.

On my Main Computer, I have a 128 GB memory chip that I use as an external drive.  You know, like the one you stuff into your camera?

On it are my resume, personal files, picture collection, and many many more files.  That stuff is very important to me and must be safeguarded by frequently backing it up in case that chip gets lost or destroyed.

Just a few years ago, that would have been an inconceivable amount of space, if you could have found it at all.  Now, that size of an actual hard drive is getting to be Low End and harder to find.

What do You do now?

You being An Average Home User.  You have a Main Computer.  It could be any given thing from Mac to Windows to, if you are “odd” like me, a Linux Workstation.   You may or may not have other machines in the house.  Phones where you take pictures.  Actual cameras.  iPods and your music collection.

Where do you put all that “stuff”.

First choice.  External hard drive.  They’re about $50 for a reasonable sized drive, or $100 for a drive that will take you years to fill up.

But where do you connect it.  You start with plugging it into your computer’s USB port.  That works for a while, until someone else wants access to it.  After all “they” have stuff to save too!

It’s that Digital equivalent of the Two Car Garage.  But that doesn’t help the phone, it is not exactly easy to plug an Android phone into a standard external drive, and forget it for the iPhone.

Not to go too deeply into this whole thing, The First Choice hard drive needs to be moved.  If you are lucky your Wifi Router will have a USB port.  A Slot.  If you look in the little slot, the plastic tab should hopefully be blue for USB 3.0, but at least it should be USB 2.0.

(Yes, I know that is an inexact way of saying things, but I have a very broad audience here)

If it isn’t in use, that is, you plug your drive in to that USB port and go surf the administrative page of the router.  Mine is at http://192.168.1.1 and it brings up a login box asking me for user and password.  That is the page you use to configure where and who has access to that drive and your network.

I could spend hours writing here on how to configure your router.  I’m not.  See this is more of an intro to something that has been sitting in my mind.

Why?

You see we have already used that port with something else that needs to sit there.   It’s in use with the backup for that 128GB chip I was talking about earlier.

So I had to decide what to do next.

I have been given a number of “old” or “low power” computers over the years.  I won’t say specifically “Obsolete” because there’s always something you can do with a computer that is too slow to run Windows.

And that’s the crux of it.

The first time I tried this, I had attempted to use a RaspberryPi as a server.  Now, a RaspberryPi, or at least the “Model B” I have has the computing power of a cell phone of a couple years ago.   When I first got it, I put a lot of energy into turning it into a web server.

Take my word for it, there are better ways to make a home web server than a RaspberryPi.  It’s too slow for that.   You have the base operating system, and when you add all that “web stuff” it runs too slow to be useful.

But, the RaspberryPi is “just enough” for you to use as a desktop machine, if you aren’t slapping it around too much.  By that I mean, one browser with one or two tabs open, or some programming tasks.  After all it is not meant to be a “Screaming fast” computer.  Small tasks.

I did find out that the Pi was “just enough” to be a file server.

There is a software bug in the main operating system as I had it configured that had me choose another machine.  The amount of data that you copy onto an attached drive on the version of Linux called “Raspian” was limited to the free space on the boot drive.  Since it is common practice to use a 4 or 8GB memory chip for that, I only had 3 gigs free.   Another solution would be to get a larger chip and try again.  I will later.

You see the Raspberry Pi runs with so little power itself that it is like one of those old glowy neon nightlights that were used for years before they ended up being an indicator light in a power strip.

In other words it’s a Low Power Consumption alternative – very “Green”.

But since that didn’t work without my buying a very large chip, I looked around for an alternative.

The solution was that I had an old Netbook that was gathering dust.  After all, it was a Windows XP Era machine looking for a use case.

A Netbook of that first era had a very small display, 10 inches, with a small display of 1024 by 600.

Never mind the numbers, it was designed to be the machine you would use on the couch while watching TV.  That was why it ended up being set aside, I do too much graphics work to be able to live with such a small display.

Despite that the old beastly big CRT Monitors of the last century would not be able to do that resolution.

So I put that Netbook back on the air as what I call a “Drop In File Server”.

A Drop In File Server would be a computer configured to accept an external hard drive, sit on the network, and serve files.

The reality is that when you install the needed software, the Print Server comes along for the ride.  Configure and plug in a printer as well and you can print anywhere on your network.  You end up having a lot of benefits from having a dedicated machine doing that work.  All from something that was slow when it was new.

Another very important benefit is that all that runs on less than 10 watts of power, a refrigerator bulb of power consumption for something that will be left on pretty much whenever I am awake, 16 or more hours a day.

Now, the high order of this is that once you install Debian or Ubuntu Linux to do the actual work, you’re able to take that little netbook and put it on someone else’s network and serve files there.

That sounds kind of a strange need, but the idea for this would be to hand the little machine off to someone else let them plug it into their network and their own drive into the machine and that way I don’t have to be involved with computer support for someone who is 200 miles away.

You know, a Loaner Server.  Something to serve a need but not need a lot of service.

But it worked.  It would also work with just about any laptop made within the last 10 years, just like that old computer you forgot about under your jeans in the closet.

All that will just have to wait for another time.

Raspbian Gets a New Browser – Epiphany

I saw an posting on Raspberry Pi‘s Blog announcing that the team behind the default browser on many Linux distributions called “Web” was being brought to the Pi the other day.

Great.  It’s an epiphany.  Ok, enough with that particular pun.

epiphany-browser” is the name of the package itself.  “Web” is what it calls itself when you look at the about screen.  No matter what it’s called, it’s there and it is an improvement on the older Midori browser that was shipped with the version of Raspbian that I installed on my Pi.

Midori is a scaled down browser using the same underpinnings as Safari.  That’s great for a limited memory computer but it was a bit too scaled down.

Epiphany will bring better HTML 5 support, a Javascript JIT “Just In Time” Compiler, as well as and most importantly to me, Hardware-accelerated Video Decoding.  It also will be the default browser in Raspbian in future installs.

It will result in a more robust experience.  Since I have basically “locked up” Midori with four tabs open, I’m looking forward to that.  On the other hand, I went to www.fullscreenweather.com and was able to get a radar map on Epiphany where Midori would have simply been too slow to use.

Just like anything in a Debian derived Linux Distribution, it’s easy to get.  It is available via Synaptic, or you can install it from the command line as usual:

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install epiphany-browser

The whole install took about 15 minutes on my Pi.

The reason why it’s called “epiphany-browser” and not just “epiphany”, by the way, is that there’s a game out there called epiphany which is a “boulderdash” clone.

Linux – Cloning Your Hard Disc on RaspberryPi and Raspbian

For a credit card sized computer, it’s been getting a lot of abuse.

I’ve been installing and uninstalling software since I got the thing from my buddy Craig in Atlanta, and not always having success.

Instead of completely reloading the operating system from the “official” image, I decided to do a backup of the computer.

Boring stuff that anyone who uses a computer on any operating system should do on a schedule.

While Windows can be made automatic, it’s fussy.  You don’t have the control over the operating system like you do in Linux, any Linux.  Anything I am doing on this little credit card sized computer, I can do on my bigger Thinkpad T60 laptop that is running a very similar version of Linux.  I would expect these same steps to work on my Debian computers, as well as any derived distribution like Ubuntu.   Just check your “switches” to make sure they “comply”.

That’s the strength and the weakness of Linux.  There’s so much flexibility it’s confusing, but in the flexibility you can get the operating system to do what you want and exactly what you want.

But you have to know what you’re doing.

Since the RaspberryPi only had an 8GB SDHC chip for it’s “disc drive”, it would be small enough and easy enough to backup.  Since it is Linux, why not just make a complete copy of the operating system and all the user data?

Clone the hard drive.

What I did was to cheat.  I did it from the desktop of the RaspberryPi.
Why is that a cheat?  Because files “could be left open” which means you are never 100 Percent Sure that everything gets copied.

The solution with the Raspi is to go into “raspi-config” and set the switch  in “Enable Boot to Desktop/Scratch” to go to “Console Text Console”.  That will put you in what we used to call “Single User Mode” and everything will be closed and there will be no doubt.

But, Me?  I’m cheating and it turned out fine.  No corruption and I was able to switch chips (hard drives) and it booted from the cloned chip with not a problem in the world.

On the other hand, I will be using these instructions to do exactly this on my “real” Linux laptop, an older Lenovo Thinkpad T60 machine.  I have the spare hard drives there too and why not?

Process:

  • Prepare a chip as a hard drive that is the same size or larger than your original drive.  That will need to be formatted FAT32 which can be done on any operating system that supports it.
  • Open a root terminal.
  • Close all other tasks that are running that aren’t essential.

Task 1:

  • In Terminal, run lsblk at a root prompt.  
  • This will tell you exactly what hard drives and media are connected to the computer on the /dev tree.
  • The picture shows the results of both commands.
  • Under the Name Column, the devices are shown as a tree.
  • What you need is not the name of the partition labeled as “part” but the actual root device called “disk”.
  • The internal media is the all important boot drive.
  • For mine, the internal media is on mmcblk0 – which is actually /dev/mmcblk0 .
  • For mine, the external media is on sda – which is actually /dev/sda .

Task 2:

  • Perform a “dd” statement from the internal to the external drive.
  • The statement is for my set up:  dd if=/dev/mmcblk0 of=/dev/sda bs=4096 conv=noerror,notrunc,sync
  • What that statement says is:
    • dd – Disc Dump or Copy
    • if=/dev/mmcblk0 – input file is /dev/mmcblk0 .  Since that is the root device, it will copy everything from that chip onto the output device.
    • of=/dev/sda – output file is /dev/sda .  Since that is the root device, it will copy everything from the input chip onto your output device, deleting anything that was on the chip.
    • bs=4096 – block your output data in 4K blocks for efficiency.
    • conv=noerror,notrunc,sync –  Convert the data but do not truncate any data (notrunc), do not stop on errors (noerror), and synchronize (sync) the file sizes by padding them with nulls in case there is an error on a file.

When that is all done, the dd statement will tell you how many records were copied in and out, and the record counts should be the same.  It will also tell you how large your chip was – here it was 7.9 GB.

Close enough.

If you want to test your clone, shut down your computer via a “shutdown -h now” in your root terminal, swap chips, then reboot.

It should “just work”.  It did for me.