![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
As things slowly grind into motion for the CommYou project, I'm realizing that I really do want to get a Linux box up and running here soon, to serve as my development server. There are a bunch of things I need to set up to get a dev server right, and I don't want to do them on the Windows box, only to have to repeat the process again in a few weeks on Linux. So I may as well move this along.
Problem is, I'm a total neophyte to Linux -- the last time I was deeply Unix-savvy was in the early days of Solaris, and there's a lot of water under the bridge since then. So I'm looking for advice, tips, and generally gotchas that I should look out for.
My current theory is that I'll take our old Windows desktop machine, and repurpose it. It's a bit behind the times, but not terrible: it was running XP just fine until we switched machines, and that upgrade was only because the hard drive was giving ominous errors. It's a very ordinary machine (a Compaq desktop from Costco), so I assume that the drivers are readily available. So I figure I'll buy a clean new hard drive, swap that in, and install a Linux distro over that.
That, however, is where questions come in. I know precious little about the distros, save that Red Hat is the old and famous one, and Ubuntu is reputed to have the least-bad UI. My needs are fairly straightforward: I need a machine that'll host Subversion, probably a Java/ANT build environment, and maybe Tomcat/Apache. (I'm currently serving Tomcat off of my development laptop, and may stay that way: it makes for an easier debugging experience.) This will be the machine that needs to be backed up, since it'll have the repository, so I'll probably want both an external hard drive with some kind of incremental backup software, and an online/offsite backup plan. I probably don't *need* much by way of an OS-level GUI, but I'm used to having one by now, so I have mixed feelings about how much I care.
Given all that, any opinions about which distro is most appropriate to my needs? Also, how does the process work? Do I just slap in the blank hard drive, put in a CD, and let it go, or are there complications I need to be aware of? I've never formatted a PC from scratch before (yes, really -- I am a wizard with software, but know bugger-all about hardware and IT), so I'm genuinely unsure of where to start.
Related to all this, I need to at least start thinking about an ISP for CommYou, that is used to reasonably normal JSP/Java/MySQL stacks. Ideally, I'm looking for a company that has both ends in terms of scale, and experience with rapid migration. That is, I'm looking for an inexpensive plan to start, while I'm still in alpha, but it is entirely possible that I might have to scale *way* up very quickly. So I am hoping for somewhere that has both an entry-level $250/month plan for now, and can kick up to a fully-hosted cluster reasonably quickly.
(Yes, I know: it is far more economically sensible to host my own machines at a colo if it gets that big. But it'll require hiring knowledgeable people and dealing with having a staff, and I do not anticipate that process being quick or smooth. So I'd like to have an option available to keep it hosted externally for a while, while the company grows into its feet.)
So, any recommendations? There are zillions of options out there, but I'm hoping for some information about which are better or worse.
As for the project itself, it's moving about as fast as expected -- that is, not as quickly as I'd like, but no major snafus yet. The initial "Hello, Mark" application is up and running on Facebook. That isn't especially impressive, but given that this is the first time I've done anything with Java/Tomcat, and I'm wading through large amounts of incomprehensible Facebook documentation, I'll take that as a first step for a week or so's work. Next comes writing the skeletal test harness, and getting the database hooked in. (Time to figure out if Hibernate really is the right tool for the job...)
Problem is, I'm a total neophyte to Linux -- the last time I was deeply Unix-savvy was in the early days of Solaris, and there's a lot of water under the bridge since then. So I'm looking for advice, tips, and generally gotchas that I should look out for.
My current theory is that I'll take our old Windows desktop machine, and repurpose it. It's a bit behind the times, but not terrible: it was running XP just fine until we switched machines, and that upgrade was only because the hard drive was giving ominous errors. It's a very ordinary machine (a Compaq desktop from Costco), so I assume that the drivers are readily available. So I figure I'll buy a clean new hard drive, swap that in, and install a Linux distro over that.
That, however, is where questions come in. I know precious little about the distros, save that Red Hat is the old and famous one, and Ubuntu is reputed to have the least-bad UI. My needs are fairly straightforward: I need a machine that'll host Subversion, probably a Java/ANT build environment, and maybe Tomcat/Apache. (I'm currently serving Tomcat off of my development laptop, and may stay that way: it makes for an easier debugging experience.) This will be the machine that needs to be backed up, since it'll have the repository, so I'll probably want both an external hard drive with some kind of incremental backup software, and an online/offsite backup plan. I probably don't *need* much by way of an OS-level GUI, but I'm used to having one by now, so I have mixed feelings about how much I care.
Given all that, any opinions about which distro is most appropriate to my needs? Also, how does the process work? Do I just slap in the blank hard drive, put in a CD, and let it go, or are there complications I need to be aware of? I've never formatted a PC from scratch before (yes, really -- I am a wizard with software, but know bugger-all about hardware and IT), so I'm genuinely unsure of where to start.
Related to all this, I need to at least start thinking about an ISP for CommYou, that is used to reasonably normal JSP/Java/MySQL stacks. Ideally, I'm looking for a company that has both ends in terms of scale, and experience with rapid migration. That is, I'm looking for an inexpensive plan to start, while I'm still in alpha, but it is entirely possible that I might have to scale *way* up very quickly. So I am hoping for somewhere that has both an entry-level $250/month plan for now, and can kick up to a fully-hosted cluster reasonably quickly.
(Yes, I know: it is far more economically sensible to host my own machines at a colo if it gets that big. But it'll require hiring knowledgeable people and dealing with having a staff, and I do not anticipate that process being quick or smooth. So I'd like to have an option available to keep it hosted externally for a while, while the company grows into its feet.)
So, any recommendations? There are zillions of options out there, but I'm hoping for some information about which are better or worse.
As for the project itself, it's moving about as fast as expected -- that is, not as quickly as I'd like, but no major snafus yet. The initial "Hello, Mark" application is up and running on Facebook. That isn't especially impressive, but given that this is the first time I've done anything with Java/Tomcat, and I'm wading through large amounts of incomprehensible Facebook documentation, I'll take that as a first step for a week or so's work. Next comes writing the skeletal test harness, and getting the database hooked in. (Time to figure out if Hibernate really is the right tool for the job...)
(no subject)
Date: 2008-01-11 06:50 pm (UTC)Pop the DVD in the drive (I think you can download CD images for this also) and boot from it; the thing will guide you. You'll be asked a number of questions (including partitioning of your hard drive), but you can often accept the defaults. You may be asked to choose which package groups to install, which would allow you to install Subversion, Apache, etc. If not, you can always install those easily enough after the OS is working. Various package managers (such as yum, apt, and the like) will connect to on-line repositories and download the software you want to install (with dependencies) and do it for you.
(no subject)
Date: 2008-01-11 06:52 pm (UTC)As such, my suggestion would be that you pick a distribution that some sysadmin you know is familiar with so that if you have to call them up and say, "Help? I'll swap you <bribe of choice> for some troubleshooting," the admin in question will already be familiar with your distribution.
:)
My personal flavor of choice is Debian, because I really, really like apt (the package distribution engine for Debian). Others will swear by other apps. The install is relatively quick and painless, and moderately customizable without too much effort. Other people will pick other versions.
Help is available
Date: 2008-01-11 06:56 pm (UTC)Here's how a modern Linux installation works: you take a PC with a CD drive, a hard disk, and an ethernet connection to your home network. You boot it from the Linux install disk, answer a few questions -- use English? US keyboard layout? and let it go.
(no subject)
Date: 2008-01-11 07:04 pm (UTC)http://www.amazon.com/b/ref=sc_fe_l_2?ie=UTF8&node=201590011&no=3435361&me=A36L942TSJ2AJA
(no subject)
Date: 2008-01-11 11:27 pm (UTC)(no subject)
Date: 2008-01-11 07:29 pm (UTC)First, I must make it clear that I likely have a bias here, since I work for Red Hat.
Second, I wish to note that pre-RH, I used Debian.
So:
I would suggest Fedora (Red Hat's free, community distro) or Ubuntu for ease of use. Unfortunately, much as I love Debian and its goals, it's not easy to use. Or wasn't. (might be better now)
I'd be slightly wary of Ubuntu only because it's being kept afloat because the guy in charge is very well off; so it could go away randomly.
I'd be actively avoidant of SuSe, because of who currently owns them.
It should just be as simple as putting a CD (which you will likely have to burn) into a CD-bootable drive on a system with a hard drive, running the install, and answering a few questions.
(so, yes, you should be able to just put it in. Depending on whether or not you are using IDE, and what number of cables you have, there may be issues relating to the jumper settings and locations on the cable for the hard & CD drives; theoretically, though, you should be fine)
(no subject)
Date: 2008-01-11 08:10 pm (UTC)Debian got much, much better (in terms of user friendliness) in 4.0.
Neener.
(no subject)
Date: 2008-01-11 08:13 pm (UTC)(I've been at RH for over 4 years, so...)
(no subject)
Date: 2008-01-11 08:18 pm (UTC)(no subject)
Date: 2008-01-11 08:34 pm (UTC)Your mother was a hamster and your father smells of Elderberries!
(no subject)
Date: 2008-01-11 08:39 pm (UTC)Your mathematical intuition froze solid the day you matriculated! You couldn't get a clue if you stripped naked, doused yourself in clue-musk and danced on a table in the middle of a field full of horny clues during clue mating season, singing "Happy Clues are Here Again".
Ahem. Sorry. The people responsible for the preceding outburst have been sacked.
(no subject)
Date: 2008-01-11 08:46 pm (UTC)(no subject)
Date: 2008-01-11 11:45 pm (UTC)(no subject)
Date: 2008-01-11 11:45 pm (UTC)(no subject)
Date: 2008-01-11 11:45 pm (UTC)Not the tofu.
No love for the tofu.