LinuxQuestions.org
Latest LQ Deal: Complete CCNA, CCNP & Red Hat Certification Training Bundle
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 12-21-2009, 02:26 AM   #1
Trimp
LQ Newbie
 
Registered: Dec 2009
Posts: 7

Rep: Reputation: 0
Building a Linux based home file server, have a few newbie questions.


I figure this question as a bit to heavy for the LQ Member Intro forum, and not advanced enough for the server forum, so I decided to place it here.

First off, I am not new to computers, just Linux. I have been working with computers for little over 10 years now(hobby). Mainly building, repairing, modding, over-clocking etc.. Unfortunately, I never really got into Linux, no matter how many people I knew told me to give it a try. I used Ubuntu for a week or so as a desktop replacement, but didn't have enough time to invest in learning that distro of Linux, and quickly ran back to Windows for efficiency and familiarity.

I recently decided, at 23, to change the direction my life was going (Political Science), and go back to school for my one true passion, computers. Specifically, Networking. I don't start until September 2010, and figured I may as well get as familiar with Linux, and building simple servers using Linux, so the first year will breeze by.

I downloaded and read "The Easiest Linux Guide you will ever read" by Scott Morris. It got me a bit more familiar with the KDE desktop environment (although I heard it recently changed a lot with 4.X). However, past that it was a bit to basic, and didn't jump into Command Line stuff as much as I hoped. So my first question is, do you recommend any other guides or books for beginners on Linux?

My next question is, what exactly do I need to create a file sever using Linux? I plan to use OpenSUSE or Debian as the backbone of the server, Past that, I am not really sure what to do next. I read you need to download and configure Samba, but I am not sure what that is outside of a program that can make Linux(unix) based machines talk to Windows based ones.

Since the server will be headless, I also want to be able to manage it remotely from a Windows based PC, but, I am also not sure what type of software I need to do that.

I also read you install Linux distro's differently if you are going to create a server environment then if you are going to use it for Desktop use. Any help with that aspect would be great also.

Sorry if this has been asked before. I have done a lot of reading but I am still not clear on how to set it all up. If you have any links to information, or can provide me with help on the questions above I would be very grateful.

I am excited to get into, learn about, and support Linux, but instead of jumping in head first and messing something up, I thought asking here would be better.

(The machine will be Intel Atom based, or running something like an X2 5200. 2gb of ram, 500gb-1TB drive, possibly create a raid array once I am familiar with Linux.)
 
Old 12-21-2009, 03:35 AM   #2
Kenichi Kato
Member
 
Registered: Jun 2007
Location: Asia
Distribution: Ubuntu, Fedora, CentOS & TCL
Posts: 62
Blog Entries: 1

Rep: Reputation: 16
For a headless server, my preference is CentOS (now version 5.4). It is the community-version of Red Hat Enterprise, which is pretty stable & secure, I think.

And for managing servers, I personally recommend webmin (www.webmin.com). Take a look & you'll know why its amongst the best, I feel.

Cheers!
 
Old 12-21-2009, 11:17 AM   #3
worm5252
Member
 
Registered: Oct 2004
Location: Atlanta
Distribution: CentOS, RHEL, HP-UX, OS X
Posts: 567

Rep: Reputation: 57
Quote:
So my first question is, do you recommend any other guides or books for beginners on Linux?
I am not a big book read so I got no suggestions here. I just read online what I need to know and I took a few formal classes when I first started.

Quote:
My next question is, what exactly do I need to create a file sever using Linux?
This for the most part leads into a number of questions. the first question is, what type of computers will be accessing these files, Windows, Linux, Mac OS? My network uses both Windows and Linux. My File server have both Samba and NFS setup. I use Samba to control my file shares for the Windows computers, and I use NFS to control the same samba shares for my Linux computers.

Quote:
Since the server will be headless, I also want to be able to manage it remotely from a Windows based PC, but, I am also not sure what type of software I need to do that.
Webmin is a nice web based tool. I have webmin installed, however I am just not a big fan of remote command execution it offers and still prefer a command line. For remote access I use SSH. I just install Openssh on my servers and lock it down based on the security level I need. For me it is not far off from default. Then I use a program called putty. It is free and works on Windows. It will let you establish an SSH connection to your server. Once connected you get a command line interface (CLI) just like as if you were physically on the server itself.

Quote:
I also read you install Linux distro's differently if you are going to create a server environment then if you are going to use it for Desktop use
This is true, when building a server a user will invest a lot of time into the package installation portion of the install. Typically with Linux servers a Graphical User Interface (GUI) is not installed and the server runs in Command line only. Also only the base Linux packages needed to install Linux and the Server specific packages are installed. For example, my file server/web server runs on Debian Lenny 32 bit. My server has the basic files it needs to have Debian lenny run. In addition to that I have Openssh, apache2, samba, nfs, webmin, and nagios installed. Openssh is used for the remote command line access. apache2 is the web server. Samab and NFS are used for the file server part. webmin is used for remote server management in a web browser interface (I rarely use this other than getting info), and Nagios I use for an alert system to tell me when there is a problem or such. Really the only reason I have nagios is because it is something I need to learn and I needed a test box.
 
Old 12-21-2009, 03:54 PM   #4
Trimp
LQ Newbie
 
Registered: Dec 2009
Posts: 7

Original Poster
Rep: Reputation: 0
Thanks for the responses.

The file server will connect mainly with Windows based computers. So I assume I will need to install Samba, OpenSSH and Webadmin (for flexibility). I won't be using the server for Apache, MySQL or PHP. If I do decide to go that route, I will probably build a separate server (I assume it's more secure that way).

Are there any server packages of Linux that include a GUI, or include an option to have a GUI upon installation? I am honestly not comfortable enough with Linux to jump right to Command Line online right now. After I have played with it for a while, and read some more books I will probably switch to a CL only server setup, but would prefer a GUI at present.(not worried about the resources the GUI will take up)

Thanks again for the help thus far.
 
Old 12-21-2009, 05:07 PM   #5
worm5252
Member
 
Registered: Oct 2004
Location: Atlanta
Distribution: CentOS, RHEL, HP-UX, OS X
Posts: 567

Rep: Reputation: 57
Trimp,
You can install a GUI on any Linux machine, including servers. The GUI is known as X Windows, or more commonly referred to as X. In addition to X you will need an X environment. Most distributions start out with gnome.

As far as what distribution to recommend, well that is based on your hardware specifications. Any distribution will do what you want to do. There are differences between all distributions of Linux, but for the most part they are the same. It is like comparing Windows 2000 and Windows XP. They are different in their respective ways, but they are very similar.

Quote:
Originally Posted by Trimp View Post
(The machine will be Intel Atom based, or running something like an X2 5200. 2gb of ram, 500gb-1TB drive, possibly create a raid array once I am familiar with Linux.)
Based on this statement, it sounds like you currently do not have a machine you are using. For starting out I would recommend grabbing an old machine you have laying around and to just go for it. If all this machine is going to do is be a file server, then that is very little overhead and you really do not need a lot of processing power or memory. You will need storage space and a decent network card.

My home server has 512MB memory, 866MHz processor, 1 80GB Hard drive and 1 120GB Hard drive. I have a 10/100Mbps network card connected to a 1000Mbps connection. I do not have any mouse, keyboard, or monitor connected to this machine and it just sits in a corner humming away.

Like I said my home server does a lot more than just act as a file server. My home server is Command Line only version of Debian Lenny. For you since you need a GUI and based on a general guess of your specifications of hardware, I would say start out with CentOS or Debian. CentOS is the free version of RedHat Enterprise Linux. You will find all Linux distributions are either Debian based, RedHat based, or Unix based. In you case it is good to learn either Redhat or Debian. all other distributions for the most part are based on one of those 2.

Get you a spare machine, and just do it. Install a distribution of Linux, base install with X Windows. That will at least get you up and running. Once you are up and running you can use a package manager to install anything else you need.
 
Old 12-21-2009, 06:23 PM   #6
chrism01
LQ Guru
 
Registered: Aug 2004
Location: Sydney
Distribution: Centos 6.8, Centos 5.10
Posts: 17,240

Rep: Reputation: 2324Reputation: 2324Reputation: 2324Reputation: 2324Reputation: 2324Reputation: 2324Reputation: 2324Reputation: 2324Reputation: 2324Reputation: 2324Reputation: 2324
Just to expand on the X stuff; that'll give you a GUI that includes the option to open xterms (cmd line terminals) as well, so you can use cli or gui as and when you feel like it.
Another vote for Centos btw.

Try these guides:
http://rute.2038bug.com/index.html.gz
http://www.linuxtopia.org/online_boo...ion/index.html

Welcome to LQ
 
Old 12-21-2009, 08:35 PM   #7
Trimp
LQ Newbie
 
Registered: Dec 2009
Posts: 7

Original Poster
Rep: Reputation: 0
Thanks for the responses again.

To worm. All of my old machines have been fixed up and sent to family that need them. Currently I just have a few spare parts laying around, such as the ram, case, PSU etc.. I am going to need to buy the CPU/Mobo/HDD, and I was waiting for boxing day sales to do this. That is why I was thinking about using an Atom based machine. The server won't need much CPU power, and Atom boards/CPU combo's are very inexpensive.

Now, about CentOS. When I visit their site, I see multiple versions. 2,3,4,5. Which version will I want to use for a server? Also, when it comes to Linux, should I pick up 32bit or 64bit in terms of software comparability. I used Ubunutu 64bit in the past, and had lots of trouble installing software one it. I don't know if issues like that have been fixed(like being able to install both on a 64bit machine), or if the best bet is still to pick up a 32bit version.

Last edited by Trimp; 12-21-2009 at 08:59 PM.
 
Old 12-21-2009, 09:30 PM   #8
Kenichi Kato
Member
 
Registered: Jun 2007
Location: Asia
Distribution: Ubuntu, Fedora, CentOS & TCL
Posts: 62
Blog Entries: 1

Rep: Reputation: 16
Quote:
Originally Posted by Trimp View Post
Thanks for the responses again.

Now, about CentOS. When I visit their site, I see multiple versions. 2,3,4,5. Which version will I want to use for a server? Also, when it comes to Linux, should I pick up 32bit or 64bit in terms of software comparability. I used Ubunutu 64bit in the past, and had lots of trouble installing software one it. I don't know if issues like that have been fixed(like being able to install both on a 64bit machine), or if the best bet is still to pick up a 32bit version.
For the versions, I would think its better to use the version 5 and it comes with Xen (Linux hypervisor) if you do need it.

As for the 32-bit or 64-bit, it would depend on your memory & other requirements. However, do take note that if you intent to use virtual machines, your host (domain-0) will need to be the same as your guest OSs (domain-U), from my last reference on Xen.
 
Old 12-21-2009, 09:54 PM   #9
Trimp
LQ Newbie
 
Registered: Dec 2009
Posts: 7

Original Poster
Rep: Reputation: 0
Quote:
Originally Posted by Kenichi Kato View Post
For the versions, I would think its better to use the version 5 and it comes with Xen (Linux hypervisor) if you do need it.

As for the 32-bit or 64-bit, it would depend on your memory & other requirements. However, do take note that if you intent to use virtual machines, your host (domain-0) will need to be the same as your guest OSs (domain-U), from my last reference on Xen.
Thanks.

Ya it wasn't hardware I was wondering about (know all that). Mainly if the support for 64bit apps has improved on Linux. As I said, when I tried a 64bit version of Ubunutu, most apps would not work. It appeared that with Linux, unlike say Vista or 7, you were restricted to 64bit applications ONLY.
 
Old 12-22-2009, 01:09 AM   #10
Kenichi Kato
Member
 
Registered: Jun 2007
Location: Asia
Distribution: Ubuntu, Fedora, CentOS & TCL
Posts: 62
Blog Entries: 1

Rep: Reputation: 16
Quote:
Originally Posted by Trimp View Post
Thanks.

Mainly if the support for 64bit apps has improved on Linux.
Hi,
I would think so as all our servers are humming on 64-bit.

Cheers.
 
Old 12-22-2009, 05:40 AM   #11
salasi
Senior Member
 
Registered: Jul 2007
Location: Directly above centre of the earth, UK
Distribution: SuSE, plus some hopping
Posts: 4,052

Rep: Reputation: 881Reputation: 881Reputation: 881Reputation: 881Reputation: 881Reputation: 881Reputation: 881
Quote:
Originally Posted by Trimp View Post
My next question is, what exactly do I need to create a file sever using Linux? I plan to use OpenSUSE or Debian as the backbone of the server, Past that, I am not really sure what to do next. I read you need to download and configure Samba, but I am not sure what that is outside of a program that can make Linux(unix) based machines talk to Windows based ones.
In principle, samba is a program that can serve up files using a windows protocol (which isn't the same as getting windows machines talking to linux ones, in a number of ways), so if you want to serv e files to windows machines, samba is likely what you want. It does some other stuff, too, but that'll do for the moment.

Quote:
I also read you install Linux distro's differently if you are going to create a server environment then if you are going to use it for Desktop use. Any help with that aspect would be great also.
ermm, yes in several ways, but in other ways its the same, too. Some pointers:
  • Don't install stuff that you don't need (security)
  • In particular, a GUI is one of those, although, for the beginner they are convenient. It compromises security, so webmin, as mentioned earlier, is a good alternative
  • Choose a distro with a long supportability horizon, otherwise you'll always be rebuilding and re-tsting the install. This is what makes it undesirable to use most desktop distros.
  • Think about where you put your high-traffic data. That may be a separate partition, depending on the traffic. And think about how the partition is set up for that.

Quote:
(The machine will be Intel Atom based, or running something like an X2 5200. 2gb of ram, 500gb-1TB drive, possibly create a raid array once I am familiar with Linux.)
If you can one of the newest Atoms (and it may still be a bit early for that yet) it will save apreciable electrical power; otherwise, Atoms are not appreciably more frugal than, say, a Pentium (not one of the old Pent Ds, but a Core 2 derived one) and the Pent has a lot more computing power.

And a read of linuxhomenetworking.com wouldn't go amiss.
 
Old 12-22-2009, 06:19 AM   #12
Trimp
LQ Newbie
 
Registered: Dec 2009
Posts: 7

Original Poster
Rep: Reputation: 0
Quote:
Originally Posted by salasi View Post
In principle, samba is a program that can serve up files using a windows protocol (which isn't the same as getting windows machines talking to linux ones, in a number of ways), so if you want to serv e files to windows machines, samba is likely what you want. It does some other stuff, too, but that'll do for the moment.



ermm, yes in several ways, but in other ways its the same, too. Some pointers:
  • Don't install stuff that you don't need (security)
  • In particular, a GUI is one of those, although, for the beginner they are convenient. It compromises security, so webmin, as mentioned earlier, is a good alternative
  • Choose a distro with a long supportability horizon, otherwise you'll always be rebuilding and re-tsting the install. This is what makes it undesirable to use most desktop distros.
  • Think about where you put your high-traffic data. That may be a separate partition, depending on the traffic. And think about how the partition is set up for that.



If you can one of the newest Atoms (and it may still be a bit early for that yet) it will save apreciable electrical power; otherwise, Atoms are not appreciably more frugal than, say, a Pentium (not one of the old Pent Ds, but a Core 2 derived one) and the Pent has a lot more computing power.

And a read of linuxhomenetworking.com wouldn't go amiss.
Thanks for the responses. I will check the site out. I have decided to go with CentOS 5.4 which I read was great for servers.

From what I understand, to setup a simple file/media server I will be installing OpenSSH, Samba, Webadmin. I will install CentOS "server" but with a GUI (for now). SSH allows me to access the command line of the Linux server remotely, so long as my Windows PC has Putty. Webadmin will allow me to manage my server from another computer, and Samba will allow me to share files with a Windows based computer. If any of this is incorrect just let me know.

My final question is basically how does Webadmin and Samba interact? If I change a share in say, WebAdmin, will my Samba configuration mess up?
 
Old 12-22-2009, 07:54 AM   #13
onebuck
Moderator
 
Registered: Jan 2005
Location: Midwest USA, Central Illinois
Distribution: SlackwareŽ
Posts: 12,541
Blog Entries: 23

Rep: Reputation: 1943Reputation: 1943Reputation: 1943Reputation: 1943Reputation: 1943Reputation: 1943Reputation: 1943Reputation: 1943Reputation: 1943Reputation: 1943Reputation: 1943
Hi,

A lot of what you want to do can be had with throw away systems.
People are always pitching systems that are working but just too slow, a M$ thing.

You should be able to find a PIII/4 class machine to experiment with. I prefer Slackware! If you really want to know the intrinsic details then Slackware would be a good starting point along with a few links to aid you;

SlackwareŽ Essentials
SlackwareŽ Basics
Linux Documentation Project
Rute Tutorial & Exposition
Linux Command Guide
Utimate Linux Newbie Guide
LinuxSelfHelp
Getting Started with Linux
Advanced Bash-Scripting Guide
Virtualiation- Top 10

The above links and others can be found at 'Slackware-Links'. More than just SlackwareŽ links!
 
1 members found this post helpful.
Old 12-22-2009, 11:13 AM   #14
worm5252
Member
 
Registered: Oct 2004
Location: Atlanta
Distribution: CentOS, RHEL, HP-UX, OS X
Posts: 567

Rep: Reputation: 57
Quote:
My final question is basically how does Webadmin and Samba interact? If I change a share in say, WebAdmin, will my Samba configuration mess up?
Webmin is just a web based console to access your server. You can find more info on it at their website, [url=http://www.webmin.com/]http://www.webmin.com/[url]. You can even access their demo page and give it a go, http://webmin-demo.virtualmin.com/. The username and password are both demo. Here are some screen shots to give you an idea of what webmin is.

users and groups
http://www.webmin.com/screenshots/chapter4/figure2.png

creating a user
http://www.webmin.com/screenshots/chapter4/figure4.png

List of Mounted Filesystems
http://www.webmin.com/screenshots/chapter5/figure1.png

List of running processes
http://www.webmin.com/screenshots/chapter11/figure1.png

System Log Management
http://www.webmin.com/screenshots/chapter13/figure1.png

Setting up a Samba Share to share files with Windows Clients
http://www.webmin.com/screenshots/chapter43/figure2.png

There are a bunch more located at http://www.webmin.com/demo.html
 
Old 12-22-2009, 11:33 AM   #15
johnsfine
LQ Guru
 
Registered: Dec 2007
Distribution: Centos
Posts: 5,286

Rep: Reputation: 1181Reputation: 1181Reputation: 1181Reputation: 1181Reputation: 1181Reputation: 1181Reputation: 1181Reputation: 1181Reputation: 1181
You may want to install an X Windows "server" on a Windows system (X Windows terminology is counter intuitive: The "server" is the side with the monitor and keyboard. The "client" is the side with where the desktop (KDE etc.) and application programs run).

For Windows X Windows server, I used the one included in Cygwin. I find the Cygwin setup program (where you choose which parts of Cygwin you want to install) very confusing, so I can't give you good advice on how to navigate that setup program to get the X Windows "server" installed, but once that is installed, it is easy to manage a headless Centos system from a Windows system.

IIRC, KDE is a non default option when installing Centos, but easy to install during or after installing Centos. For a Linux beginner with Windows experience, I suggest KDE rather than other Linux desktops.

I do most Centos management from Windows with putty, not X Windows. I never got the multiple windows mode of the X Windows server to work (maybe because my display setup on Windows is strange). Using an xterm window inside a Centos desktop window on Windows works, but is less convenient than an individual putty window. So I use X Windows only where I want a GUI on Centos.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: Simple Home File Server (Based On Ubuntu) LXer Syndicated Linux News 0 01-27-2008 03:50 PM
LXer: Building a Home File Server LXer Syndicated Linux News 0 01-18-2008 09:20 AM
LXer: Building the ultimate Linux-based home entertainment system LXer Syndicated Linux News 0 07-25-2007 01:46 PM
building a file server: hardware questions malo_umoran Linux - General 1 02-20-2007 08:39 AM
Fedora Core 2: Personal, home-based email server issues and questions nmsatyagrahi Linux - Networking 1 07-01-2004 01:46 PM


All times are GMT -5. The time now is 12:46 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration