Coming from a Windows background, i'm a little lost in terms of Linux so are there any good resorces etc for an experienced sysadm who is unfamiliar to Linux.
closed as off-topic by masegaloeh, kasperd, Rex, Andrew Schulman, Xavier Lucas Mar 25 '15 at 19:54
This question appears to be off-topic. The users who voted to close gave this specific reason:
- "Requests for product, service, or learning material recommendations are off-topic because they attract low quality, opinionated and spam answers, and the answers become obsolete quickly. Instead, describe the business problem you are working on, the research you have done, and the steps taken so far to solve it." – masegaloeh, kasperd, Rex, Andrew Schulman, Xavier Lucas
You should start from the Linux Documentation Project pages.
Some interesting references are listed here.
But you should run through this guides page and probably also other pages on the site.
Based on your existing understanding it would be good to select the correct guides straight from there.
- Introduction to Linux
- The Linux Administrators guide -- also a PDF version on the main guides page
- Advanced Bash scripting guide -- there is also a beginners version
Once you get into things, the HOWTO pages should help for specific things.
When I was wetting my feet, I don't mean to sound trite, but Google was a huge help: "Samba slackware 10 conf tips".
Linuxquestions.org was also a totally invaluable asset. I could ask specific questions about specific distros, or a very complex iptables scheme, and usually get a friendly answer.
O'Reilly publishes several great books too, which I have on my desk even today:
Linux Network Administrator's Guide, Third Edition. By Tony Bautts, Terry Dawson, Gregor N. Purdy February 2005 Pages: 362 http://oreilly.com/catalog/9780596005481/
Linux iptables Pocket Reference, 1st Edition. By Gregor N. Purdy http://oreilly.com/catalog/9780596005696/
Linux Server Security, Second Edition. By Michael D. Bauer. January 2005. Pages: 542 http://oreilly.com/catalog/9780596006709/
And last but not least: a sandbox. Get a cheap used computer and install some distro on it (I recommend Ubuntu if you want something simple, or Slackware if you want a steeper learning curve.)
I'm in the same boat, just been only a while since I switched to Linux. I used the following resources:
- Wrox Beginning Shell Scripting (ISBN: 978-0-7645-8320-9)
- Linux from Scratch
- If you're going to work with Debian system: http://debiansystem.info/ and Debian Administration
- Get a good understanding of some Linux Filesystems (ext3)
- Take a box, install your favorite linux distro, and setup dns, mail, kerb, nfs, web, etc., and the likes :)
- Understand the package management systems- apt, rpm, etc.
- Finally, some good configuration management system for linux- cfengine, puppet, slack, etc.
Of course, this is by no means a comprehensive list(more so since I'm a beginner myself), but I feel its a good one to start with. It certainly helped me. Hope it does help you too!
I'd advise you to just install and use Linux for a while. You know the saying: we retain 20% of what we hear, 50% of what we see and and up to 90% of what we do.
I'd advise a beginner-friendly distribution.
http://www.ubuntulinux.org/ Ubuntu Linux is my favourite; it's very userfriendly, but based on the solid Debian base, which is available if you want to dive in more deeply.
Install it on some spare hardware or a VM, then play with it. Set yourself simple tasks (install webserver, setup a router with NAT, install groupware, update system etc.) and see where it takes you. The ressources listed in the other answers will come in useful :-).
The nice thing about Linux is that almost everything is configurable, and the system does not try to get in your way. It takes a bit getting used to (like everything new), but im optimistic you'll like it :-).
For general administrative documentation for Red Hat Enterprise Linux (applicable to derivatives like Centos for the most part, and more generally applicable to the same software on other distros), you might find the RHEL Docs Page useful.
For info on SELinux-related topics, try the Fedora SELinux User Guide
For more general documentation on a wide variety of topics, I would suggest poking through the available documentation from Gentoo. For the most part, everything that Gentoo ships is extremely close to what the upstream project releases, and Gentoo has long been known for its excellent, detailed documentation that you should find applicable to any distro for the most part. Try both its Documentation Section and the (unofficial) Gentoo Wiki.
As a more general piece of advice, I can't stress enough that whatever distro you use, you should try to do as much as possible within the framework of its own tools (package manager, provided scripts, etc) and in the 'distro preferred manner' rather than giving in to the temptation to compile from source or hack up your own scripts.
About 2 weeks ago I asked a similar question here. That night I set up a SAMBA server with Ubuntu Server Edition using this guide: http://www.howtoforge.com/ubuntu-home-fileserver
I even finished the install via SSH (Putty) from my Windows laptop. Since then, not a day has passed that I havent logged in remotely from home/work/coffee shop and check the status/bandwidth/whatever.
I have configured it as a file server AND I am running Apache and a nice little website. I am also using it as an FTP server. THere is no monitor, keyboard, or mouse so I do all config using Putty.
I have become obsessed with it...its awesome!
Here is the link to my post:
For large-scale Linux/Unix system administration see http://www.infrastructures.org/
Some of the specific tool recommendations are a bit dated (e.g. CVS for version control, nowadays I'd recommend git or mercurial), but the basic principles are sound.