Jump to content

Recommended Posts

Hello all. I am recently returning to Linux after about a 10 year absence. I have not kept up with development except through various articles.

 

Here is my plight.

 

I have searched and there are really no topics that actually fit what I am looking for. And google seems to bring me here time and time again.

I dont want a dedicated NAS OS. I want to be able to do other things with the system on occasion, not continuous, i.e. development, etc.

I am looking to set up a home NAS/media/file/backup server. I am not really asking for Distro advice as I am going to use CentOS.

 

I am running it on

Gigabyte GA-H61N-USB3 1155 ITX with Intel Pentium G630T (35W CPU)

8 GB DDR3 1333

Perc 5/i w/ 4 WD RE4 1TB Dirves.

 

 

 

Here is what will be on the network.

1 MBP (heavy use) with OSX 10.7 maybe upgrade to 10.8

1 Windows 7 Laptop (wifes mostly for internet FB stuff)

1 Xeon Workstation with OSX/ WIndows7/ Fedora 15

1 iPad (internet and file sharing)

1 Kindle Fire (internet use only)

2 Android Phone (mostly using internet, no file sharing)

1 Sony BP-S580 DLNA capable Blu-Ray

1 Xbox 360

 

Mostly This will be for streaming files and media in the network but I am also returning to school to get another degree. (Programming this time versus current Admin Degree. ) So I will be accessing files remotely.

 

The reason I am here is to find out what packages should I grab. I have a static IP with 2 firewalls but want to access files etc.

 

I want as secure as possible so VPN is a good place to start.

SFTP for letting a friend or iPad access

media server for itunes files as well as other media.

Samba of course.

And anything else you can think of that will help.

 

I tried this same question at 2 other sites and got the general consensus response WHS. I DONT want M$. I have it because I work with it and I am tired of it. Windows 7 is the last M$ OS I will run. Although OSX is my OS I use the most. But I am not a FANBOY either.

 

Any ideas help or corrections please feel free. Even criticism is welcome, constructively for a 2nd time n00b.

  • Like 6

Share this post


Link to post
Share on other sites

Okay... bit confused here. Let's take these two statements:

 

"I am looking to set up a home NAS/media/file/backup server.

I want to be able to do other things with the system on occasion, not continuous, i.e. development, etc."

 

In those circumstances, I would have plumped for one of the readily-available NAS distros that's built around a familiar distro then look at extending its functionality. I'm in the process of building an XMBC machine then dropping additional server packages (apache, pure-ftpd, sshd, postfix etc) rather than build a server and shoehorn XBMC onto it.

 

However, in your second statement:

 

"I dont want a dedicated NAS OS."

 

.. kinda goes against that philosophy. I suppose the first point I need to clarify is: what will be this machine's core function if you want it to work like a NAS but don't want to use a NAS OS?

 

Secondly.. for some packages off the top of my head (well, my choice of packages):

  • LAMP stack + cacti for doing some web-based configuration and server monitoring
  • suitable environment for the programming language of your choice (which languages, BTW?)
  • some MTA for server alerting
  • fail2ban, logwatch - usual monitoring stuff
  • sickbeard, XBMC, shoutcast, hellanzb - something for sourcing TV series and the like

 

Lastly... welcome to the forums!

Share this post


Link to post
Share on other sites

OK I see where I was confusing. Beginning, this will be headless to serve files and media as well as provide remote access. I have used Freenas in the past (not recently) and I am not sure how I will be able to expand functionality.

 

However In the next 4 months I will also be starting Python, C++ classes in school. And I did not think the NAS OS's can be used any way but headless. (Like I said I haven't kept up with Development in years)

 

If you think I can do this by expanding a ready made NAS OS please point me to it and I will check it out.

Share this post


Link to post
Share on other sites

I have no experience with NAS OS's and don't know if you can install packages like apache and such on there. So if you aren't sure about how and if you are going to expand it. I'd just go for one of the popular linux distros(centos,debian,etc), so when you do know if you are going to expand or not you will be able to. And something else that might be helpful to you that I have learned. Is write out a plan for your server first. Like Dungeon-Dave mentioned before, what's the main functionality of your server. What services do you need your server to be able to do?What packages do you need? How do you want them configured? And if you decide you want to expand later, you might decide for a linux distro, but hardware do you want to use?

 

Also Welcome to the forum!!

Share this post


Link to post
Share on other sites

However In the next 4 months I will also be starting Python, C++ classes in school. And I did not think the NAS OS's can be used any way but headless. (Like I said I haven't kept up with Development in years)

Generally, that's the way a NAS will work - but I didn't get the impression you wanted something non-headless.

 

Just to explain that point: I've been running servers for years but mostly headless, and when I want to code something up I generally fire up an SSH session to hack away. For PHP/perl stuff, I use a graphical editor (Textpad) to edit files located on a SAMBA share then can either run them in a SSH prompt or surf to the relevant apache page. I don't actually perform any work on the server console itself. For some reason I thought you'd also be doing python/C++ stuff remotely like that, but hadn't featured upon you using the server desktop at all.

 

In terms of a NAS recommendation.. erm.. I ain't used any myself. A friend that owned one let me SSH into it to run some monitoring commands, but it was just proving the point it was Yet Another Linux Distro. I was under the impression that a Linux-derived NAS OS would have underlying package management facilities - if you find one that uses CentOS then you could add packages using RPM or YUM to extend its functionality.

 

Well, it looks like I ain't of a great deal of help there. All I would attempt in your position is to try out a few NASes, not only to evaluate their functionality but also build a plan of what I could have, prioritise what I'd like and shortlist those with limiting features. I realise this could take some time and effort, but I know I'm one of those people that - in the past - would spend time and effort building my own file/print/media server only to discover there's a distro out there that has it all inbuilt for me. (I found the same thing with XMBC).

 

Good luck with your project - be interested to see how it progresses!

Share this post


Link to post
Share on other sites

Generally, that's the way a NAS will work - but I didn't get the impression you wanted something non-headless.

 

Actually if I CAN go headless and still do the work remotely I would love to.

 

Just to explain that point: I've been running servers for years but mostly headless, and when I want to code something up I generally fire up an SSH session to hack away. For PHP/perl stuff, I use a graphical editor (Textpad) to edit files located on a SAMBA share then can either run them in a SSH prompt or surf to the relevant apache page. I don't actually perform any work on the server console itself. For some reason I thought you'd also be doing python/C++ stuff remotely like that, but hadn't featured upon you using the server desktop at all.

 

Honestly like I said, I havent used *nix in years. And when I last did it was always a secondary desktop that I used. I never really did any compiling etc and the only remote usage was running a small website. I did not realize I could remotely do everything. If this is the case I can locate the server in my Temp controlled media closet and just use it as a true server. I havent started my coding classes yet but I start 2 this coming semester and the idea of keeping everything on the server while using my mac is very interseting.

 

 

 

I realise this could take some time and effort, but I know I'm one of those people that - in the past - would spend time and effort building my own file/print/media server only to discover there's a distro out there that has it all inbuilt for me. (I found the same thing with XMBC).

 

I will spend as much time doing what I need to get everything the way I want, which is why I am wanting to use Linux. M$ = $ + restrictive. I looked a xbmc and I could not find any that was a clean install. Everything I saw was a package that installed on top of an OS, am I missing one?

 

As for a NAS OS, I am more than willing to try one if I can add packages as needed but ultimately I will have to research them as it is an unknown to me.

 

You have given me several things to think about so I am starting today, trying to get it sorted and start building. I will start with the packages you mentioned and then go from there. I will update and see what I still want/need and let you know.

Share this post


Link to post
Share on other sites

Honestly like I said, I havent used *nix in years. And when I last did it was always a secondary desktop that I used. I never really did any compiling etc and the only remote usage was running a small website. I did not realize I could remotely do everything. If this is the case I can locate the server in my Temp controlled media closet and just use it as a true server. I havent started my coding classes yet but I start 2 this coming semester and the idea of keeping everything on the server while using my mac is very interseting.

In which case, you may want to look at creating a small GUI-based box first (ubuntu, mint or Fedora) that gives you some graphical tools to play with, and practise installations/modifications via a shell session on that.

 

At some point you'll find yourself SSHing into the box (MacOS has a native SSH command, as well as being able to remotely connect to shared directories over SAMBA and NFS) and then you'll forget about the GUI desktop. At least - from a beginner perspective - you'll have a desktop to fall back to if you find the commands a bit overwhelming.

 

Another package to consider: webmin. It permits web-based administration and can help with a lot of server management.

 

I looked a xbmc and I could not find any that was a clean install. Everything I saw was a package that installed on top of an OS, am I missing one?

XBMC is an application, sure, but on their download page they also list XBMCbuntu which is basically a strimmed-down version of ubuntu that runs XBMC and boots directly into it. Think of it as stripping out unnecessary stuff from XP then booting it directly into a media player... and you've got Windows Media Centre.

 

The advantage I've got with the XBMCbuntu is that I'm fairly familiar with the underlying OS and can extend a media OS into a server, rather than turn a server into a media centre.

 

You have given me several things to think about so I am starting today, trying to get it sorted and start building. I will start with the packages you mentioned and then go from there. I will update and see what I still want/need and let you know.

I honestly think in situations like this that experimentation is the way to go. It can be daunting and frustrating to repeat the work several times and hit a brick wall on several occasions, but each time is a learning opportunity and you'll find you'll pick up more as you progress.

Share this post


Link to post
Share on other sites

@Dungeon-Dave

 

OK. I ran into an issue that caused everything to halt until Tuesday. It appears that the itx board I got has an issue with PCIe cards in the x16 slot. Apparently it is with almost any except video cards. So I went back to an ASUS and ordered a P8H61-M LE/CSM.

 

It should be here Tuesday and I will be able to get back on this build. I will update after I get it.

Share this post


Link to post
Share on other sites

Mm.... I have an ASUS board in a tower I built the missus and it's now not POSTING after 6 months of use (this board WAS in constant use for 3 years or so) but I heard something about ASUS boards not having a particularly long lifespan.

Share this post


Link to post
Share on other sites

OK got my new MB and installed everything. After doing some research, I settled on going with Ubuntu Server. I took care of SSH, Samba, VNC, Serviio (for my media server). Wrote a few simple scripts for auto-starting VNC and Serviio. I am doing some testing and installing a few more things. Once I am done I will post speeds and hopefully I will have good read & decent write speeds.

Share this post


Link to post
Share on other sites
Wrote a few simple scripts for auto-starting VNC and Serviio.

Those can usually be started as a service. Look into the "chkconfig" command to see if you can set them to start at specific run-levels.

Share this post


Link to post
Share on other sites

you can just run the command

runlevel

and it will show what runlevel you are in then you can use the chkconfig command that Dungeon-Dave mentioned to configure it to boot when booted in that runevel.

 

example my runlevel for my server is 3. So you could then do the following if you wanted vnc to startup on runlevel 3.

 

 

chkconfig --levels 3 vnc on

 

man chkconfig

shows more detailed info about the command

Share this post


Link to post
Share on other sites

Those can usually be started as a service. Look into the "chkconfig" command to see if you can set them to start at specific run-levels.

 

I will give it a shot and let you know. Thanks I have never set any auto start except with scripts.

 

you can just run the command

runlevel

and it will show what runlevel you are in then you can use the chkconfig command that Dungeon-Dave mentioned to configure it to boot when booted in that runevel.

 

example my runlevel for my server is 3. So you could then do the following if you wanted vnc to startup on runlevel 3.

 

 

chkconfig --levels 3 vnc on

 

man chkconfig

shows more detailed info about the command

 

I am in runlevel 2, which I just found out is the default in Debian. I will have to chkconfig and see what is currently listed and add vnc if necessary. At this point I have webmin installed and while it may be a simple interface and easy to configure, I would really like to know exactly what it is doing and possibly just use the command line or vnc as needed.

 

I know there are simple packages out there to do what I am wanting with this server but I am a die hard tweaker. And I want to be able to set this up the way I want.

I really appreciate the assistance and information. When I get home tomorrow I will check everything and see where I stand.

Share this post


Link to post
Share on other sites

If I were you and you reall want to learn, I'd just stick to only command line. The more you force yourself to use command line the more you get used to it and the more you learn how to use it and what to use. And learning to setup your server how you want is all about planning, researching, learning your mistakes and ofcourse, the forums for posting when you get stuck on something. It takes time to get to your final piece of work, it's easier to look at a server as a project, adding bits at a time until you reach your wanted end result.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...