
A career path for a Linux System Administrator typically involves a combination of education, skills development, and practical experience. Here’s a roadmap to guide you through the process:
1. Educational Background
- High School Diploma: Basic computer knowledge and problem-solving skills.
- Associate’s or Bachelor’s Degree: Consider pursuing a degree in Computer Science, Information Technology, or a related field. While not always necessary, it can enhance job prospects.
2. Foundational Skills
- Basic Linux Knowledge: Learn the fundamentals of Linux. Familiarize yourself with distributions like Ubuntu
A career path for a Linux System Administrator typically involves a combination of education, skills development, and practical experience. Here’s a roadmap to guide you through the process:
1. Educational Background
- High School Diploma: Basic computer knowledge and problem-solving skills.
- Associate’s or Bachelor’s Degree: Consider pursuing a degree in Computer Science, Information Technology, or a related field. While not always necessary, it can enhance job prospects.
2. Foundational Skills
- Basic Linux Knowledge: Learn the fundamentals of Linux. Familiarize yourself with distributions like Ubuntu, CentOS, or Red Hat.
- Command Line Proficiency: Master the Linux command line interface (CLI) for navigating the system and executing tasks.
3. Certifications
- CompTIA Linux+: A good starting point for validating your Linux skills.
- LPIC (Linux Professional Institute Certification): A vendor-neutral certification that covers various aspects of Linux administration.
- RHCE (Red Hat Certified Engineer): A more advanced certification focused on Red Hat systems, beneficial if you plan to work in environments using Red Hat.
4. Gain Practical Experience
- Home Lab: Set up a personal lab using virtual machines or old hardware to practice Linux administration tasks.
- Internships: Look for internships or entry-level positions that provide hands-on experience in IT support or system administration.
- Volunteer Work: Offer to manage systems for non-profits or local businesses to gain real-world experience.
5. Develop Advanced Skills
- Networking: Understand TCP/IP, DNS, DHCP, and firewalls.
- Scripting: Learn shell scripting (Bash) and programming (Python, Perl) to automate tasks.
- System Monitoring and Performance Tuning: Familiarize yourself with tools like Nagios, Zabbix, or Grafana.
- Cloud Technologies: Gain knowledge in cloud platforms like AWS, Azure, or Google Cloud, as many organizations are moving to the cloud.
6. Specialization
- After gaining experience, consider specializing in areas such as:
- DevOps: Learn about CI/CD pipelines, containerization (Docker, Kubernetes).
- Security: Focus on Linux security practices and tools.
- Database Administration: Work with databases like MySQL or PostgreSQL.
- Web Server Management: Manage web servers (Apache, Nginx) and related technologies.
7. Professional Development
- Networking: Join professional organizations and attend conferences to meet others in the field.
- Continuous Learning: Stay updated on new technologies and best practices through online courses, webinars, and tech blogs.
8. Career Advancement
- Mid-Level Positions: Progress to roles like Systems Administrator, Network Administrator, or Cloud Administrator.
- Senior Positions: Aim for senior roles such as Senior Linux Administrator, Systems Architect, or IT Manager.
- Leadership Roles: Consider positions like IT Director or CTO, which require strong leadership and strategic planning skills.
9. Stay Current
- Keep up with industry trends, emerging technologies, and best practices by following Linux forums, blogs, and news outlets.
Conclusion
The path to becoming a skilled Linux System Administrator involves a blend of education, certifications, practical experience, and continuous learning. By following this roadmap, you’ll be well-equipped to succeed in the field.
Here is a great answer i found on reddit,
This is what I tell people to do, who ask me "how do I learn to be a Linux sysadmin?".
1) Set up a KVM hypervisor.
2) Inside of that KVM hypervisor, install a Spacewalk server. Use CentOS 6 as the distro for all work below. (For bonus points, set up errata importation on the CentOS channels, so you can properly see security update advisory information.)
3) Create a VM to provide named and dhcpd service to your entire environment. Set up the dhcp daemon to use the Spacewalk server as the pxeboot machine (thus allowing you to use Cobbler to do unattended OS
Here is a great answer i found on reddit,
This is what I tell people to do, who ask me "how do I learn to be a Linux sysadmin?".
1) Set up a KVM hypervisor.
2) Inside of that KVM hypervisor, install a Spacewalk server. Use CentOS 6 as the distro for all work below. (For bonus points, set up errata importation on the CentOS channels, so you can properly see security update advisory information.)
3) Create a VM to provide named and dhcpd service to your entire environment. Set up the dhcp daemon to use the Spacewalk server as the pxeboot machine (thus allowing you to use Cobbler to do unattended OS installs). Make sure that every forward zone you create has a reverse zone associated with it. Use something like "internal.virtnet" (but not ".local") as your internal DNS zone.
4) Use that Spacewalk server to automatically (without touching it) install a new pair of OS instances, with which you will then create a Master/Master pair of LDAP servers. Make sure they register with the Spacewalk server. Do not allow anonymous bind, do not use unencrypted LDAP.
5) Reconfigure all 3 servers to use LDAP authentication.
6) Create two new VMs, again unattendedly, which will then be Postgresql VMs. Use pgpool-II to set up master/master replication between them. Export the database from your Spacewalk server and import it into the new pgsql cluster. Reconfigure your Spacewalk instance to run off of that server.
7) Set up a Puppet Master. Plug it into the Spacewalk server for identifying the inventory it will need to work with. (Cheat and use ansible for deployment purposes, again plugging into the Spacewalk server.)
8) Deploy another VM. Install iscsitgt and nfs-kernel-server on it. Export a LUN and an NFS share.
9) Deploy another VM. Install bakula on it, using the postgresql cluster to store its database. Register each machine on it, storing to flatfile. Store the bakula VM's image on the iscsi LUN, and every other machine on the NFS share.
10) Deploy two more VMs. These will have httpd (Apache2) on them. Leave essentially default for now.
11) Deploy two more VMs. These will have tomcat on them. Use JBoss Cache to replicate the session caches between them. Use the httpd servers as the frontends for this. The application you will run is JBoss Wiki.
12) You guessed right, deploy another VM. This will do iptables-based NAT/round-robin loadbalancing between the two httpd servers.
13) Deploy another VM. On this VM, install postfix. Set it up to use a gmail account to allow you to have it send emails, and receive messages only from your internal network.
14) Deploy another VM. On this VM, set up a Nagios server. Have it use snmp to monitor the communication state of every relevant service involved above. This means doing a "is the right port open" check, and a "I got the right kind of response" check and "We still have filesystem space free" check.
15) Deploy another VM. On this VM, set up a syslog daemon to listen to every other server's input. Reconfigure each other server to send their logging output to various files on the syslog server. (For extra credit, set up logstash or kibana or greylog to parse those logs.)
16) Document every last step you did in getting to this point in your brand new Wiki.
17) Now go back and create Puppet Manifests to ensure that every last one of these machines is authenticating to the LDAP servers, registered to the Spacewalk server, and backed up by the bakula server.
18) Now go back, reference your documents, and set up a Puppet Razor profile that hooks into each of these things to allow you to recreate, from scratch, each individual server.
19) Destroy every secondary machine you've created and use the above profile to recreate them, joining them to the clusters as needed.
20) Bonus exercise: create three more VMs. A CentOS 5, 6, and 7 machine. On each of these machines, set them up to allow you to create custom RPMs and import them into the Spacewalk server instance. Ensure your Puppet configurations work for all three and produce like-for-like behaviors.
Do these things and you will be fully exposed to every aspect of Linux Enterprise systems administration. Do them well and you will have the technical expertise required to seek "Senior" roles. If you go whole-hog crash-course full-time it with no other means of income, I would expect it would take between 3 and 6 months to go from "I think I'm good with computers" to achieving all of these -- assuming you're not afraid of IRC and google (and have neither friends nor family ...). source: How did you get your start? • /r/linuxadmin
Where do I start?
I’m a huge financial nerd, and have spent an embarrassing amount of time talking to people about their money habits.
Here are the biggest mistakes people are making and how to fix them:
Not having a separate high interest savings account
Having a separate account allows you to see the results of all your hard work and keep your money separate so you're less tempted to spend it.
Plus with rates above 5.00%, the interest you can earn compared to most banks really adds up.
Here is a list of the top savings accounts available today. Deposit $5 before moving on because this is one of th
Where do I start?
I’m a huge financial nerd, and have spent an embarrassing amount of time talking to people about their money habits.
Here are the biggest mistakes people are making and how to fix them:
Not having a separate high interest savings account
Having a separate account allows you to see the results of all your hard work and keep your money separate so you're less tempted to spend it.
Plus with rates above 5.00%, the interest you can earn compared to most banks really adds up.
Here is a list of the top savings accounts available today. Deposit $5 before moving on because this is one of the biggest mistakes and easiest ones to fix.
Overpaying on car insurance
You’ve heard it a million times before, but the average American family still overspends by $417/year on car insurance.
If you’ve been with the same insurer for years, chances are you are one of them.
Pull up Coverage.com, a free site that will compare prices for you, answer the questions on the page, and it will show you how much you could be saving.
That’s it. You’ll likely be saving a bunch of money. Here’s a link to give it a try.
Consistently being in debt
If you’ve got $10K+ in debt (credit cards…medical bills…anything really) you could use a debt relief program and potentially reduce by over 20%.
Here’s how to see if you qualify:
Head over to this Debt Relief comparison website here, then simply answer the questions to see if you qualify.
It’s as simple as that. You’ll likely end up paying less than you owed before and you could be debt free in as little as 2 years.
Missing out on free money to invest
It’s no secret that millionaires love investing, but for the rest of us, it can seem out of reach.
Times have changed. There are a number of investing platforms that will give you a bonus to open an account and get started. All you have to do is open the account and invest at least $25, and you could get up to $1000 in bonus.
Pretty sweet deal right? Here is a link to some of the best options.
Having bad credit
A low credit score can come back to bite you in so many ways in the future.
From that next rental application to getting approved for any type of loan or credit card, if you have a bad history with credit, the good news is you can fix it.
Head over to BankRate.com and answer a few questions to see if you qualify. It only takes a few minutes and could save you from a major upset down the line.
How to get started
Hope this helps! Here are the links to get started:
Have a separate savings account
Stop overpaying for car insurance
Finally get out of debt
Start investing with a free bonus
Fix your credit
Entry-Level: Gaining Fundamentals
1. Learn the Basics of Linux:
- Understand file systems, commands, and shell scripting.
- Get familiar with popular distributions like Ubuntu, CentOS, or RHEL.
2. Obtain Entry-Level Certifications:
- CompTIA Linux+
- Red Hat Certified System Administrator (RHCSA)
3. Hands-On Experience:
- Work with Linux in personal projects or internships.
- Contribute to open-source projects to build practical skills.
4. Start as a Junior Linux Administrator:
- Focus on routine tasks like user management, system updates, and backups.
- Gain experience in troubleshooting.
Mid-Level: Expanding Skills
5. De
Entry-Level: Gaining Fundamentals
1. Learn the Basics of Linux:
- Understand file systems, commands, and shell scripting.
- Get familiar with popular distributions like Ubuntu, CentOS, or RHEL.
2. Obtain Entry-Level Certifications:
- CompTIA Linux+
- Red Hat Certified System Administrator (RHCSA)
3. Hands-On Experience:
- Work with Linux in personal projects or internships.
- Contribute to open-source projects to build practical skills.
4. Start as a Junior Linux Administrator:
- Focus on routine tasks like user management, system updates, and backups.
- Gain experience in troubleshooting.
Mid-Level: Expanding Skills
5. Deepen Knowledge in Linux Administration:
- Learn advanced topics like kernel tuning, performance monitoring, and package management.
- Master system security practices (firewalls, SELinux, AppArmor).
6. Specialize in Networking:
- Gain skills in DNS, DHCP, VPNs, and networking protocols.
- Consider certifications like CCNA (Cisco Certified Network Associate) for networking fundamentals.
7. Understand Scripting and Automation:
- Master Bash scripting and move to other languages like Python.
- Learn configuration management tools like Ansible, Puppet, or Chef.
8. Certifications for Advanced Roles:
- Red Hat Certified Engineer (RHCE)
- LPIC-2 (Linux Professional Institute Certification)
10. Intermediate Job Roles:
- Systems Engineer
- Cloud Support Engineer
Advanced-Level: Leadership and Specialization
11. Master Advanced Concepts:
- High Availability (HA) and Disaster Recovery.
- Kubernetes, Docker, and containerization.
- Advanced network security and monitoring tools.
12. Develop DevOps Skills:
- Learn CI/CD pipelines and tools like Jenkins, Git, and Terraform.
- Dive deeper into Infrastructure as Code (IaC).
13. Pursue Advanced Certifications:
- Red Hat Certified Architect (RHCA)
- Certified Kubernetes Administrator (CKA)
14. Specialize Further:
- Cloud Architect: Focus on cloud-native solutions.
- Security Specialist: Specialize in Linux security and ethical hacking.
- DevOps Engineer: Blend Linux expertise with automation and development.
15. Advanced Job Roles:
- Senior System Administrator
- Linux Architect
- DevOps Engineer
- Site Reliability Engineer (SRE)
Learning in-depth about Linux administration is a must.
Learn shell scripting
Then concentrate on any of the following: Ansible/Chef/Puppet.
Then concentrate on Cloud Infrastructure solutions and don't be under the impression that system administration and network administration are different and learn both and concentrate on software defined storage and SDN/NFV.
If you look at my first statement, I have written that concentrate on learning Linux administration thoroughly and all the SDS, SDN Solutions are based on Linux only
Learn a lot about protocols and at the of the day whether it is SDS or SD
Learning in-depth about Linux administration is a must.
Learn shell scripting
Then concentrate on any of the following: Ansible/Chef/Puppet.
Then concentrate on Cloud Infrastructure solutions and don't be under the impression that system administration and network administration are different and learn both and concentrate on software defined storage and SDN/NFV.
If you look at my first statement, I have written that concentrate on learning Linux administration thoroughly and all the SDS, SDN Solutions are based on Linux only
Learn a lot about protocols and at the of the day whether it is SDS or SDN it is nothing but protocols
All the best
Thanks for the A2A -
I’ve found that career paths are nearly as varied as people. Mine will be different than yours and I can only speak for myself.
My interest has always been in “alternative” operating systems. I used OS/2 in the early/mid nineties, but was also playing with Linux at the same time. As OS/2 popularity was fading, Linux was quickly gaining ground. I played with it as much as I could.
It was about this time I started working as an operator in 24x7 shops. Whenever I could, I was talking to the Unix guys and just letting it be known that I could speak Unix by way of Linux. This was
Thanks for the A2A -
I’ve found that career paths are nearly as varied as people. Mine will be different than yours and I can only speak for myself.
My interest has always been in “alternative” operating systems. I used OS/2 in the early/mid nineties, but was also playing with Linux at the same time. As OS/2 popularity was fading, Linux was quickly gaining ground. I played with it as much as I could.
It was about this time I started working as an operator in 24x7 shops. Whenever I could, I was talking to the Unix guys and just letting it be known that I could speak Unix by way of Linux. This was at different shops. Some of them Unix, some not, but I was learning, even if I didn’t realize it - learning to think before acting, to know the consequences of actions, that technology serves business processes, not the other way around.
The opportunity finally came where my employer let me conditionally work in the systems group. Within a couple of months I was proving myself and eventually moved from junior, to mid-level, and finally senior systems positions.
So that’s my path, and it worked for a lot of people through the nineties and early 2000’s, but life is different now. Fewer and fewer shops have 24x7 staff.
What would I recommend? Get at least a two year degree in computer science, perhaps. Be willing to take on jobs that you’re over-qualified for = don’t be picky starting out; however, do know your market. I know who is employing Linux admins in my are. Get jobs there. When you get a job, don’t be a showoff. We call those “genius assholes”. Don’t be one, and unless you’re an absolute genius, the people there already know more than you and without experience, you might just come off as stupid*. When the opportunity arises, let your coworkers and management know what you see your career path being. Be willing to take on responsibility that is within your capabilities. If you see something that needs to be done, do it.**
- Starting out, be choosy about where you work, but not necessarily what you’re doing.
- Work hard. Speak less, listen more, but
- When the opportunity arises, let people know what you can do.
- Don’t be a genius asshole.
Good Luck!
*Quick anecdote: We had a technology guy once who bragged that he could move everything off the mainframe and on to Windows. This was just a completely ignorant statement. 30 years of COBOL develpment and thousands of business processes - contractors had estimated 10 years and multiple millions to do it.
**Do NOT violate security protocols. One operator decided he was going to do penetration testing on some of my systems. The system alerted me, so I let his management know. While I do think his intentions were not malicious, you just can’t do that. He’s no longer working for the organization.
Here’s the thing: I wish I had known these money secrets sooner. They’ve helped so many people save hundreds, secure their family’s future, and grow their bank accounts—myself included.
And honestly? Putting them to use was way easier than I expected. I bet you can knock out at least three or four of these right now—yes, even from your phone.
Don’t wait like I did. Go ahead and start using these money secrets today!
1. Cancel Your Car Insurance
You might not even realize it, but your car insurance company is probably overcharging you. In fact, they’re kind of counting on you not noticing. Luckily,
Here’s the thing: I wish I had known these money secrets sooner. They’ve helped so many people save hundreds, secure their family’s future, and grow their bank accounts—myself included.
And honestly? Putting them to use was way easier than I expected. I bet you can knock out at least three or four of these right now—yes, even from your phone.
Don’t wait like I did. Go ahead and start using these money secrets today!
1. Cancel Your Car Insurance
You might not even realize it, but your car insurance company is probably overcharging you. In fact, they’re kind of counting on you not noticing. Luckily, this problem is easy to fix.
Don’t waste your time browsing insurance sites for a better deal. A company called Insurify shows you all your options at once — people who do this save up to $996 per year.
If you tell them a bit about yourself and your vehicle, they’ll send you personalized quotes so you can compare them and find the best one for you.
Tired of overpaying for car insurance? It takes just five minutes to compare your options with Insurify and see how much you could save on car insurance.
2. Ask This Company to Get a Big Chunk of Your Debt Forgiven
A company called National Debt Relief could convince your lenders to simply get rid of a big chunk of what you owe. No bankruptcy, no loans — you don’t even need to have good credit.
If you owe at least $10,000 in unsecured debt (credit card debt, personal loans, medical bills, etc.), National Debt Relief’s experts will build you a monthly payment plan. As your payments add up, they negotiate with your creditors to reduce the amount you owe. You then pay off the rest in a lump sum.
On average, you could become debt-free within 24 to 48 months. It takes less than a minute to sign up and see how much debt you could get rid of.
3. You Can Become a Real Estate Investor for as Little as $10
Take a look at some of the world’s wealthiest people. What do they have in common? Many invest in large private real estate deals. And here’s the thing: There’s no reason you can’t, too — for as little as $10.
An investment called the Fundrise Flagship Fund lets you get started in the world of real estate by giving you access to a low-cost, diversified portfolio of private real estate. The best part? You don’t have to be the landlord. The Flagship Fund does all the heavy lifting.
With an initial investment as low as $10, your money will be invested in the Fund, which already owns more than $1 billion worth of real estate around the country, from apartment complexes to the thriving housing rental market to larger last-mile e-commerce logistics centers.
Want to invest more? Many investors choose to invest $1,000 or more. This is a Fund that can fit any type of investor’s needs. Once invested, you can track your performance from your phone and watch as properties are acquired, improved, and operated. As properties generate cash flow, you could earn money through quarterly dividend payments. And over time, you could earn money off the potential appreciation of the properties.
So if you want to get started in the world of real-estate investing, it takes just a few minutes to sign up and create an account with the Fundrise Flagship Fund.
This is a paid advertisement. Carefully consider the investment objectives, risks, charges and expenses of the Fundrise Real Estate Fund before investing. This and other information can be found in the Fund’s prospectus. Read them carefully before investing.
4. Earn Up to $50 this Month By Answering Survey Questions About the News — It’s Anonymous
The news is a heated subject these days. It’s hard not to have an opinion on it.
Good news: A website called YouGov will pay you up to $50 or more this month just to answer survey questions about politics, the economy, and other hot news topics.
Plus, it’s totally anonymous, so no one will judge you for that hot take.
When you take a quick survey (some are less than three minutes), you’ll earn points you can exchange for up to $50 in cash or gift cards to places like Walmart and Amazon. Plus, Penny Hoarder readers will get an extra 500 points for registering and another 1,000 points after completing their first survey.
It takes just a few minutes to sign up and take your first survey, and you’ll receive your points immediately.
5. Get Up to $300 Just for Setting Up Direct Deposit With This Account
If you bank at a traditional brick-and-mortar bank, your money probably isn’t growing much (c’mon, 0.40% is basically nothing).
But there’s good news: With SoFi Checking and Savings (member FDIC), you stand to gain up to a hefty 3.80% APY on savings when you set up a direct deposit or have $5,000 or more in Qualifying Deposits and 0.50% APY on checking balances — savings APY is 10 times more than the national average.
Right now, a direct deposit of at least $1K not only sets you up for higher returns but also brings you closer to earning up to a $300 welcome bonus (terms apply).
You can easily deposit checks via your phone’s camera, transfer funds, and get customer service via chat or phone call. There are no account fees, no monthly fees and no overdraft fees. And your money is FDIC insured (up to $3M of additional FDIC insurance through the SoFi Insured Deposit Program).
It’s quick and easy to open an account with SoFi Checking and Savings (member FDIC) and watch your money grow faster than ever.
Read Disclaimer
5. Stop Paying Your Credit Card Company
If you have credit card debt, you know. The anxiety, the interest rates, the fear you’re never going to escape… but a website called AmONE wants to help.
If you owe your credit card companies $100,000 or less, AmONE will match you with a low-interest loan you can use to pay off every single one of your balances.
The benefit? You’ll be left with one bill to pay each month. And because personal loans have lower interest rates (AmONE rates start at 6.40% APR), you’ll get out of debt that much faster.
It takes less than a minute and just 10 questions to see what loans you qualify for.
6. Lock In Affordable Term Life Insurance in Minutes.
Let’s be honest—life insurance probably isn’t on your list of fun things to research. But locking in a policy now could mean huge peace of mind for your family down the road. And getting covered is actually a lot easier than you might think.
With Best Money’s term life insurance marketplace, you can compare top-rated policies in minutes and find coverage that works for you. No long phone calls. No confusing paperwork. Just straightforward quotes, starting at just $7 a month, from trusted providers so you can make an informed decision.
The best part? You’re in control. Answer a few quick questions, see your options, get coverage up to $3 million, and choose the coverage that fits your life and budget—on your terms.
You already protect your car, your home, even your phone. Why not make sure your family’s financial future is covered, too? Compare term life insurance rates with Best Money today and find a policy that fits.
That really depends on which technologies you are passionate about and really interested in. Linux and cloud based technologies still have a lot of growth in front of them. I would recommend staying on a technical track rather than moving towards a management one given the job market.
I like those people who can deploy my code base on cloud. I can not tell in general but i am telling you what i like to do.
Learn google cloud platform and amazon web services. Explore as much as you can. Create an instance and start deploying all the deliverables and try make a website live.
This will enhance your coding as well as administrator skills a lot.
Thanks for A2A Rahul Singhal
I have answered the similar information in two other questions. See the following answers.
Pushpendra Chavan (पुष्पेंद्र चव्हाण)'s answer to How do I prepare for Red Hat campus recruitment?
Freshers are not given jobs like System Administrator and if given, it's rare. The above two answers are my own experience.
AI effectiveness depends on relevant, responsible and robust data to prevent costly errors, inefficiencies, and compliance issues. A solid data foundation allows AI models to deliver precise insights and ensures systems comply with regulations and protect brand reputation.
Gartner® finds that "At least 30% of generative AI (GenAI) projects will be abandoned after proof of concept by the end of 2025, due to poor data quality, inadequate risk controls, escalating costs, or unclear business value." High-quality, AI-ready data is the fuel for AI-driven advancements now and in the future.
AI effectiveness depends on relevant, responsible and robust data to prevent costly errors, inefficiencies, and compliance issues. A solid data foundation allows AI models to deliver precise insights and ensures systems comply with regulations and protect brand reputation.
Gartner® finds that "At least 30% of generative AI (GenAI) projects will be abandoned after proof of concept by the end of 2025, due to poor data quality, inadequate risk controls, escalating costs, or unclear business value." High-quality, AI-ready data is the fuel for AI-driven advancements now and in the future.
Linux administration is a seriously cool and rewarding job for people who like it. Let me describe to you exactly what skills you should have before you apply for your first Linux admin job.
1. Good Shell scripting skills : you can get this by referring online videos, tutorials and books. I would recommend getting a copy of “UNIX Concepts & Applications” by Sumitabha Das for a start. Also refer to
Linux administration is a seriously cool and rewarding job for people who like it. Let me describe to you exactly what skills you should have before you apply for your first Linux admin job.
1. Good Shell scripting skills : you can get this by referring online videos, tutorials and books. I would recommend getting a copy of “UNIX Concepts & Applications” by Sumitabha Das for a start. Also refer to TLDP (The Linux Documentation Project) for a better understanding of this concept.
2. Good understanding of the OS: I am assuming you want to specialize with RedHat Linux. You can develop this for Linux in general using books such as RHCE certification guide by Michael Jang. I would recommend specializing in at least two flavors of Linux such as RHEL & Debian.
3. Good troubleshooting and Root Cause Analysis: Once you have worked on points one and two, set up a virtual machine on your computer, install a Linux OS and create a snapshot. Then, start wrecking up the system by modifying configuration files inside the /etc directory of the VM. Once done, try resolving the issues that crop up. If you go for the RHCE training book I suggested earlier, you will g...
I’m sure that there are many takes on this, though I think it would be best if you could elaborate a bit on your situation so that answers will more closely apply.
Here are some questions that I think are of value.
How do you expect that your career will begin? This question is perhaps more for your own inner reflection, hopefully allowing for some personal discovery.
Do you have a goal for a 5 or 10 year milestone for your career as a Linux sysad?
Are you switching careers or simply beginning your career? If switching careers, what industry/industries have you worked in? Previous industry experie
I’m sure that there are many takes on this, though I think it would be best if you could elaborate a bit on your situation so that answers will more closely apply.
Here are some questions that I think are of value.
How do you expect that your career will begin? This question is perhaps more for your own inner reflection, hopefully allowing for some personal discovery.
Do you have a goal for a 5 or 10 year milestone for your career as a Linux sysad?
Are you switching careers or simply beginning your career? If switching careers, what industry/industries have you worked in? Previous industry experience could help plot trajectory in a career switch.
What is you background in computing all-around? Do you have networking and/or programming chops?
What is is about Linux that interests you? Beyond Linux, any other FOSS that really interests you?
Do you have any marketable soft skills, such as being multi-linguistic?
Do you live in a metro or rural area? Willing to move?
Here’s how I became a Unix administrator long ago. Linux is more of same. I’d say it’s 2 steps. First learning to be a user, then an administrator.
I started with a CS degree, as a developer using Unix. You don’t need a CS degree for this though. It just helps to be somewhat technical.
Learning to be Linux User
I learned vi. Like really well. Learn to search and replace text, go to specific line, etc. Remember, on a Linux server, there is no GUI. You better know vi.
Learn how to customize your environment variables like PATH and ALIAS inside the shell config files like .bashrc.
Learn all the shell
Here’s how I became a Unix administrator long ago. Linux is more of same. I’d say it’s 2 steps. First learning to be a user, then an administrator.
I started with a CS degree, as a developer using Unix. You don’t need a CS degree for this though. It just helps to be somewhat technical.
Learning to be Linux User
I learned vi. Like really well. Learn to search and replace text, go to specific line, etc. Remember, on a Linux server, there is no GUI. You better know vi.
Learn how to customize your environment variables like PATH and ALIAS inside the shell config files like .bashrc.
Learn all the shell shortcuts like !109 to re-run the 109th command in your history, or !ps to run the last command that started with ps, or ^foo^bar to run the last command you type replacing foo with bar.
Next learn basic commands like awk/sed/grep/find/cut.
Now get really comfortable doing those same commands in a string of pipes, using xargs to turn the output of one program into the looped input of the next program.
find /home/me -name “*.conf” | xargs awk -F: ‘{print $2}’ | grep -v argh | cut -c2–10 | more
Find any file in /home/me ending in .conf, print out only the 2nd field of each file data separated by a colon, but don’t include any lines containing the word “argh,” and I only want characters 2–10. Shove it all into more so I can page through the results.
Still with me?
Now you’ve got some basic working knowledge as an end user.
Learning to be Linux Admin
Time to learn how to administer! Read a Unix/Linux operating systems book. Learn about the user space “sandbox” model, by which security is the core feature. Learn about filesystems/inodes, NFS, PAM, etc. I’m just randomly spewing out things. Basically, you need to know everything about the OS/kernel and how to monitor system resources using sar/top/dstat/iostat. 90% of the time, system slowness is due to I/O bottlenecks. IOWAIT is your new enemy.
Now after you know everything about the OS, time to learn networking. Pick up a book on the fundamentals of TCP/IP. Learn about routing protocols, what bridge vs. router is, why TCP vs. UDP, how to use netstat/tcpdump to analyze traffic, etc.
OK, you’ve read this far, so you really must want to be sys admin!
At this point, it’s time to learn how to secure Linux. Pick up more books on security. Learn how to secure the OS, what HTTPS/TLS are, and how to configure SSH for password-less access. “Least privilege” will become your mantra.
Better buy a book just on DNS and SMTP alone. These are core issue in Linux and deserve their own bible.
At this point you’ll know enough about Linux and Networking to do basic troubleshooting.
Time to pick up another book on how to kickstart OS installations automatically across the network.
Now pick another book on how to create and install Virtual Machines on your servers. Learn about KVM (free) or VMWare (not free).
OK, now you’re a basic Linux admin!
Remember what I said about CS degree not required? It does help to understand compilers and debuggers and know the basic difference between static vs. dynamically linked libraries, makefiles, etc. Long before yum and apt-get, administrators had to compile everything from source code.
1. define administrator: the guy who can fix anything(in computers).
Administrator are people who may not have expertise in a particular field but should have knowledge about all the relevant field they are working in.So you can say quantity matters more than quality in this case.
2. the Linux: as linux is open source, probably there are hundreds of people who may not have any certification but
Answered as: Can you give me a road map of what I need to know to be a Linux system admin (I am a programmer)?
Sure, but before I begin, I need to point out that I am a one-time President of the USENIX Association, which is the oldest and largest non-profit (501.3c) org in the world dedicated to systems, and systems administration. I’m not shilling for USENIX, although I do recommend my employees to join it. The association has helped me tremendously over my career, but of course YMMV.
Step one since you are interested in the UNIX world, get a copy of Brian Kernighan and Rob Pike’s superb text:
Answered as: Can you give me a road map of what I need to know to be a Linux system admin (I am a programmer)?
Sure, but before I begin, I need to point out that I am a one-time President of the USENIX Association, which is the oldest and largest non-profit (501.3c) org in the world dedicated to systems, and systems administration. I’m not shilling for USENIX, although I do recommend my employees to join it. The association has helped me tremendously over my career, but of course YMMV.
Step one since you are interested in the UNIX world, get a copy of Brian Kernighan and Rob Pike’s superb text: “The Unix Programming Environment” (a.k.a. ISBN 0-13-937699-2 often referred to in the ‘biz’ as “UPE”). It can be found at most College/University libraries around the world, and at technical book stores (both brick or online). It’s also able as a PDF to be found “in the wild” by searching, but frankly, if you truly are interested, you are likely to want a real copy for your desk, along with your personal copy of K&R.😎
Step two read it and complete all of the exercises, including the ones that will teach you ed
(1) and even the last one on how to use the document compilers nroff
(1)/troff
(1) which are now available as groff
(1). Learning ed
(1) will teach you how to really use the UNIX toolkit, such as find
(1), sed
(1), grep
(1), and how to write real Bourne Shell scripts which will be the basis for many of the tasks you will need to be able to perform. [Frankly, learning BASH syntax is really not good enough - e.g. you’ll need to know the differences between the shells as you become a better and better/more experienced sys admin].
You are going to ask why? Those seem like ‘old’ technologies. But so much of the modern tools are based on what they provide. Much of the ‘magic’ when someone taught you magical UNIX/Linux incantations before will go away and a bit of ‘ah ha’ should come to you.
Step three download the booklet: “JOB DESCRIPTIONS FOR SYSTEM ADMINISTRATORS, 3D EDITION REVISED” from the USENIX website. This was written by system admins for system admins. Note the book will describe what skills you need besides just Linux systems BTW. But Linux and UNIX skills are well covered.
The author/editor, Tina, describes a number of different types of system admin positions and the needed experiences and skills to get those types of jobs. Some of them are likely to require a college course or two and possibly an associate's degree or better. If you have no degree, that is not necessarily bad, but remember that you could be competing with people that BS/MS from very well regarded places like UC Berkeley (like the author), or CMU, and the like.
The key is if you discover a skill that is missing, then find a way to get that skill. Online courses may be good enough, but formal courses at continuing education and colleges might be needed.
BTW: one of the often discusses issues is getting a formal ‘Certification’ from Cisco, Red Hat, Microsoft, or the like. My personal experience is I have never hired anyone because they had the same nor made it a requirement. My guess is that requiring the same helps a hiring manager that does not know the technology to feel comfortable that you do. As a some time creator of some/many of these technologies, I can easily tell in an interview or other work setting the depth of an applicant's knowledge, so if you have the experience I can typically detect you know something or not.
If you have good expertise on Linux OS, Networks, Administration and Troubleshooting, you would have superb growth as a Linux Administrator/Operations Engineer/Site Reliability Engineer/Devops Engineer.
Show me some proof
There are plenty of indicators which point to the growing demand of Linux Administrator, in general folks who have expertise on building, managing, automating, troubleshooting and maintaining IT Infrastructures. Some of those are,
- This graph shows you the emergence of cloud, its growth and future predictions (Image Credits: Forrester Research, Inc. ). And when it comes to
If you have good expertise on Linux OS, Networks, Administration and Troubleshooting, you would have superb growth as a Linux Administrator/Operations Engineer/Site Reliability Engineer/Devops Engineer.
Show me some proof
There are plenty of indicators which point to the growing demand of Linux Administrator, in general folks who have expertise on building, managing, automating, troubleshooting and maintaining IT Infrastructures. Some of those are,
- This graph shows you the emergence of cloud, its growth and future predictions (Image Credits: Forrester Research, Inc. ). And when it comes to cloud, the favorite OS is Linux
- Almost all top web companies in the world including Facebook, Twitter, Netflix, Amazon, and how could we forget Google, use linux based infrastructures on the server side. I dont have to tell you the size and scale at which they operate. To maintain this infrastructure, they obviously need linux geeks.
- Almost everything we do today, we have an app for it. To order food, to call a plumber, to call a cab, to track health parameters, to read books, to connect with friends etc. Now have you ever thought about how many users does WhatsApp, or Uber, or in India Flipkart, Zomato, Ola supports? Where does the data for each of them get stored, retrieved, processed? You need huge backend infrastructure, most likely on cloud, which again uses linux servers.
- A lot of devices including home routers, DTH, Smart TVs, Car Computers use embedded or a customized version of linux. Now who needs to created, manage those images? Ofcourse someone with expertise on linux.
There are lot many indicators which point to high demand in present and in future for linux administrators and likes. Above should suffice to convince you. Lets now talk about what should you know just apart from linux, which serves as a foundation.
Hot Skills
Again, if you are a Linux Systems administrator, you should definitely consider getting a better bredth on what are also tagged as Devops Tools and Practices including,
- Cloud and Virtualization : AWS, Vagrant, Openstack
- Containers: Docker and Family
- Configuration Management : Puppet, Chef, Ansible, Salt
- Continuous Integration/Deployment : Jenkins, Capistrano, Rundeck etc. from Admin Perspective
- Log Management: ELK Stack, Graylog2 etc.
- Performance Monitoring: New Relic, Graphite, Ganglia etc.
- Health Monitoring: Nagios, Zabbix, Sensu etc.
- Big Data Administration: Hadoop and family
If you acquire the above skills, or atleast one skill from each practice, you would have much better opportunities as Devops Engineer which is a highly pursued position. There is huge demand, and it will remain so for near foreseeable future.
My friend first you have to start with some basic course like RHCSA and RHCE. Once you will be certified in these start searching job on the basis of these courses as I have did way back after my graduation. You have to understand all the basic level concepts of OS and kernel deeply. Don't go further till you are not able to go through the basics fully because if you are not clear with basics then moving further is of no use. Try to make your self good in shell script as well. This is the thing in which if you get perfection then your life will be lot more easier as a system admin.
At last but
My friend first you have to start with some basic course like RHCSA and RHCE. Once you will be certified in these start searching job on the basis of these courses as I have did way back after my graduation. You have to understand all the basic level concepts of OS and kernel deeply. Don't go further till you are not able to go through the basics fully because if you are not clear with basics then moving further is of no use. Try to make your self good in shell script as well. This is the thing in which if you get perfection then your life will be lot more easier as a system admin.
At last but not least at the starting stage try to focus on smaller or emerging companies because this is I am telling you from my personal experience that in smaller or emerging companies though salary is less but you will learnt a lot because they have lot of work with them. You can be make yourself perfect in Linux. Best of luck buddy.
- get acquainted with linux commandline.
- get acquainted with linux boot process (at least systemd (80%) and upstart (10%))
- get acquainted with services and ways to enable/disable/access them (ssh, firewall, database, web server, container services)
- get acquainted with ways to _restrict_ access (PAM, firewall, internal user configs,..)
- get acquainted with logs, both from system and from services - to be able to understand what’s going as expected and what’s not.
- get acquainted with ways to update the system, prefer ways that do not disrupt operation or minimize downtime, find out the lists and forums
- get acquainted with linux commandline.
- get acquainted with linux boot process (at least systemd (80%) and upstart (10%))
- get acquainted with services and ways to enable/disable/access them (ssh, firewall, database, web server, container services)
- get acquainted with ways to _restrict_ access (PAM, firewall, internal user configs,..)
- get acquainted with logs, both from system and from services - to be able to understand what’s going as expected and what’s not.
- get acquainted with ways to update the system, prefer ways that do not disrupt operation or minimize downtime, find out the lists and forums that post new CVEs for your system stack and update ASAP, report found vulnerabilities and help package maintainers to issue updates (that you would need to install)
- get acquainted with ways to provide and manage high availability.
- get acquainted with the ways to manage the system remotely - first through SSH, then through puppet or any other software.
- get acquainted with ways to store and analyze logs remotely (logstash, grafana, rsyslog, syslog-ng,..)
And that would be your start. 8-)
You would also need tons of practice and possibly help from colleagues - don’t be afraid to ask for (or, once you’re good - to propose) a helping hand.
As long as you understand security, performance and availability concerns, you’d be able to figure the right solution. Don’t forget to document the choices.
Honestly you can go anywhere - if you have the will and acumen for it.
Still I'd suggest to get an assessment of your current skills and see what you can do & want to do.
As an example:
I started off programming, then went into data & middleware & learned Java. Then I went into systems engineering / infrastructure technologies and recently moved back into field of data with ai / deeplearning / machine learning.
PS : I must admit however that going downstream into systems engineering came easier to me. So be prepared if you're looking for an uphill learning / career path.
In addition to using the USENIX resources noted in another answer, which are very much interesting to programmers transitioning to Unix/Linux system administration, you would be well-served by finding a recent edition of the “Unix and Linux System Administration Handbook,” Evi Nemeth, et al, which has been the sysadmin “Bible” for Unix since 1989 and updated through the year...
Learn Linux commands very well and shell scripting.
Then read about filesystem and kernel.
Then go for certification s available in the market.
Those three things will help you to get prepared for administration.
Generally I’d say:
- General systems administration. Start here and spend 3–5 years here before specializing. The more you understand about basic and fundamental SA work, the better off you’ll be down the road. And even now there’s often a palpable need for skilled senior-level Linux SAs in many companies.
- Security. Tightly secure systems. Very much in demand these days.
- Programming. Embedded programming - e.g., for devices of various types, IoT, etc. - as an example but you might actually write kernel code too, if you find C/C++ programming is your bag.
- Networking. Some SAs never end up touching ne
Generally I’d say:
- General systems administration. Start here and spend 3–5 years here before specializing. The more you understand about basic and fundamental SA work, the better off you’ll be down the road. And even now there’s often a palpable need for skilled senior-level Linux SAs in many companies.
- Security. Tightly secure systems. Very much in demand these days.
- Programming. Embedded programming - e.g., for devices of various types, IoT, etc. - as an example but you might actually write kernel code too, if you find C/C++ programming is your bag.
- Networking. Some SAs never end up touching network devices but most do. Learning about IP routing, switching, firewalls, load-balancers, etc. - all of which can be implemented in Linux - may very well cross your path and you might find you like networking.
- DevOps. It’s huge and it’s important. This is where infrastructure and app deployment/monitoring/management has been and will be going for the foreseeable future. You’ll almost certainly want to learn the basics of CM tools like Puppet, Ansible, and/or Chef and a bit around coding (Ruby, Python, PHP) to enhance and deepen your understanding and usefulness. CI/CD tools like Jenkins are good to know as in many companies, startups especially, you’ll be very involved in code deployment.
- SRE (Site Reliability Engineering). Sort of a merge of traditional SA + DevOps + networking + storage + who knows.
- Storage. Linux is central to a lot of storage platforms these days like Gluster, Ceph, DBRD, etc. Or just knowing how to setup a basic iSCSI NAS and NFS is useful.
- Cloud. This could be around existing public clouds like AWS and Rackspace but you could certainly specialize in private cloud solutions like OpenStack, which has most of the mindshare, or perhaps CloudStack, an Apache project that used to be called cloud.com and was purchased by Citrix some years ago and ultimately released to the OSS community.
The world of SAs has changed a LOT in the last 5 years especially. The first 15 years of my career our world was pretty traditional and predictable. The rush of cloud technologies and tools and toolkits has been truly boggling. You’ll need/want to be nimble and be willing to completely shift gears every 2–3 years. You can certainly find your niche and specialization and live there for the majority of your career but you’ll still have to fight to be relevant within that niche. The truth is that good solid technically skilled people are extremely rare. Guru level super smarties even moreso. Just make sure you have that good SA foundation and it should take you far.
Get a raspberry pi. Set it up as a workstation with monitor, keyboard, and a mouse. Install and uninstall programs. Get it on the network. Every time you run into a problem: read, read, read. Linux and UNIX manuals are dense but usually quite accurate.
At first concentrate on learning vi, bash, sed, awk, grep, sort, uniq, and wc. Also pick up an easy to learn language. I recommend Python. Then learn regular expressions in grep, awk, and Python. These are the fundamental tools of a Linux/UNIX administrator.
Once you are comfortable with Linux, buy a second raspberry pi and set it up as a headless
Get a raspberry pi. Set it up as a workstation with monitor, keyboard, and a mouse. Install and uninstall programs. Get it on the network. Every time you run into a problem: read, read, read. Linux and UNIX manuals are dense but usually quite accurate.
At first concentrate on learning vi, bash, sed, awk, grep, sort, uniq, and wc. Also pick up an easy to learn language. I recommend Python. Then learn regular expressions in grep, awk, and Python. These are the fundamental tools of a Linux/UNIX administrator.
Once you are comfortable with Linux, buy a second raspberry pi and set it up as a headless (no monitor, mouse, or keyboard) server. Install a cloud environment on it. Learn ansible and use it to setup and modify the headless server. Learn git and use it to maintain your ansible system.
This will get you started. And it will give you a working system to test anything you are curious about. You can then go to school or specialized courses with a strong foundation. You will be able to concentrate on learning the course material and not spending the bulk of your time just getting it together.
If you pursue a career in computing of any sort you will be reading and learning a lot. The view is worth the climb…
Ouch !
That’s gonna hurt. And it ain’t gonna be easy or quick.
Unless you are willing to put yourself through the grinder, I’d say it is near impossible to make such a jump.
One without any IT experience, needs to have experience to become a Linux (or any OS) sysadmin. If it is not coming to you by education, it needs to come through lowly (grunt) work. Find a job on the graveyard shift as what used to be known as a console operator. This person comes in around 10–11 PM and until 7–8 in the morning, it sits in fromt of a screen and if something goes critical or RED on the screen, he/she follows a
Ouch !
That’s gonna hurt. And it ain’t gonna be easy or quick.
Unless you are willing to put yourself through the grinder, I’d say it is near impossible to make such a jump.
One without any IT experience, needs to have experience to become a Linux (or any OS) sysadmin. If it is not coming to you by education, it needs to come through lowly (grunt) work. Find a job on the graveyard shift as what used to be known as a console operator. This person comes in around 10–11 PM and until 7–8 in the morning, it sits in fromt of a screen and if something goes critical or RED on the screen, he/she follows a procedure to notify the personnel who are in charge of fixing the problem. It is a mind numbing job on most days. But when doo-doo hits the fan and the remote admin has problems accessing the site, said admins will be so willing to give a crash course on whatever ailment is out there, to this console operator, walking him/her through the troubleshooting process. Experiences like these add up over time. Not a short time but they add up. And if you are an apt pupil, you study in your free time during your shifts and enhance your knowledge. And one day, out of the blue sky, a junior sysadmin position opens and you pounce on it. If you have a good work ethic and good knowledge of the systems already, you are ahead of the curve compared to any other outsider, who may want this job.
And once hired, it is up to you to advance your knowledge, if you want to hang on to that position. As we say around here, a sysadmin’s life is never dull. You go out to lunch one day. When you come back your knowledge is stale and you are redundant. Technology changes too fast not to keep up with it. If you don;t learn continuously on this job, you are history and might as well not bother.
I have been a system administrator for a little while now, at least with a title. Before that I was a freelance administrator for multiple businesses and before that I was an administrator intern. I am a senior in college and last year I received a call from my former highschool about a job opening in their IT department. They needed a new Systems Admin and I was around when the network was initially built, so I had the most knowledge to start immediately. This isn't a huge position but I maintain a school network for around 500 students, and 60 staff members. (Kids really put stress on what y
I have been a system administrator for a little while now, at least with a title. Before that I was a freelance administrator for multiple businesses and before that I was an administrator intern. I am a senior in college and last year I received a call from my former highschool about a job opening in their IT department. They needed a new Systems Admin and I was around when the network was initially built, so I had the most knowledge to start immediately. This isn't a huge position but I maintain a school network for around 500 students, and 60 staff members. (Kids really put stress on what you consider reliable.)
Things I've learned to do while I have been an admin:
- Be extremely task oriented. Know how to break tasks up and get them done in faster increments. Show some kind of progress every day you're at work.
- Make a relationship with your “end users” and understand what the user experience is like for them. Sometimes what you think is working, isn't.
- Figure out if the solutions you're working on are really the right ones. This might be specific to my environment but I have found that often the solution in place, or the software that's most popular isn't the best way to do something.
- Never stop learning. Software and requirements change at an incredible pace. It's impossible to know every procedure and routine for every task so make sure you know how to learn this information quickly while in the middle of a job.
- Take methodical notes. This should probably be at the top of the list as it works with everything else here. Document everything, steps you use to solve problems, settings when you first install new software, and all your methodology for maintenance, and your routine, all of it.
I may have a different viewpoint from most administrators you'll find here, but while balancing a complicated life, college and work, you'll find that these suggestions make your work so much easier to manage and they show that you can manage tasks you're given. I now head the IT efforts of a highschool with a staff and administrative status all while I am still in college, so something must be working.
A Systems Admin has to know “a little about everything” . In my last SA job we had to know, In addition to Linux, VMware vsphere , Sans/Storage, (EMC) Fibre Channel switches, Cloud Computing , server hardware (HPE and IBM blade servers) , Windows AD (yes even for Linux Admins,) Solaris, AIX, Scripting language, in this case Perl, and Powershell etc. Middleware such as Websphere , Monitoring such as splunk, configuration management (puppet). The list goes on and on.
The list will be different for each shop. You will always be in “learning” mode, and this will continue throughout your career. It
A Systems Admin has to know “a little about everything” . In my last SA job we had to know, In addition to Linux, VMware vsphere , Sans/Storage, (EMC) Fibre Channel switches, Cloud Computing , server hardware (HPE and IBM blade servers) , Windows AD (yes even for Linux Admins,) Solaris, AIX, Scripting language, in this case Perl, and Powershell etc. Middleware such as Websphere , Monitoring such as splunk, configuration management (puppet). The list goes on and on.
The list will be different for each shop. You will always be in “learning” mode, and this will continue throughout your career. It is not necessary but helpful to have a college degree to get a job. Although most colleges will be oriented towards software engineering. In lieu of that I would get some certs in the area(s) you are interested in. If it is a Red Hat shop then RHCSA/RHCE . Otherwise LPIC should help. If you have a choice, go for Python instead of Perl. It is more widely used these days.
(edit)- I’ve forgotten you also need some Networking skills. The good news is
a) You probably can get away without learning router configs. Host based networking should be good enough. In most the shops I’ve worked , the networking group was always separate. and
b) You probably don’t need to know TCP/IP 6 (yet).
I don’t really mean to discourage you. At your skill level you should be able to get at least a desktop support job. Most of the above skills can be learned on-the-job. If you are a naturally curious person this is a good career to be in. After all you are just “playing” with computers!
I’m gonna disagree with many of the comments and say that Linux administrators are NOT going away, even if we face a short-term dip.
The reason is that underneath all the automation, all the self-serving platform and all the DevOps hype, you still have operating systems, networks and hardware that can’t be abstracted away and will always require specialised knowledge that only a good sysadmin has.
Ask yourself: if today my company had to move from AWS/Azure/GCP back to bare-metal, do we have the resources and skill to do it? Most people will probably say “that’ll never happen”. I say “ha”, just
I’m gonna disagree with many of the comments and say that Linux administrators are NOT going away, even if we face a short-term dip.
The reason is that underneath all the automation, all the self-serving platform and all the DevOps hype, you still have operating systems, networks and hardware that can’t be abstracted away and will always require specialised knowledge that only a good sysadmin has.
Ask yourself: if today my company had to move from AWS/Azure/GCP back to bare-metal, do we have the resources and skill to do it? Most people will probably say “that’ll never happen”. I say “ha”, just watch. Nothing in IT stays the same and I’d be willing to bet that in the next 5 years we’ll see this more and more. As sometime CTO, I will always keep good linux admins on staff (especially those who know how to operate out of a data centre!) and that has paid off more than once.
I do believe the sysadmin role is evolving for the better, however. I am a very strong supporter of admins having a thorough working knowledge of programming, application development, testing and CI/CD in general. But those things don’t replace the need for core specialised competencies, like on-hands build-outs, network security, or low-level root cause analysis.
Originally answered: What I have to do or how I can prepared myself to become a Linux System Administrator?
The best asset for learning system administration is a large, diverse, and patient user community.
Get a job on a help desk and you’re golden.
This will provide you with a steady stream of interesting problems for which you’ll need to find solutions. Each time you get burned, you get experience to protect you the next time.
Work closely with other system administrators. If you can’t solve the problem yourself, watch how they do it. Ask them to explain it; both what and why.
This is partly why
Originally answered: What I have to do or how I can prepared myself to become a Linux System Administrator?
The best asset for learning system administration is a large, diverse, and patient user community.
Get a job on a help desk and you’re golden.
This will provide you with a steady stream of interesting problems for which you’ll need to find solutions. Each time you get burned, you get experience to protect you the next time.
Work closely with other system administrators. If you can’t solve the problem yourself, watch how they do it. Ask them to explain it; both what and why.
This is partly why Quora works. There’s no reason to write about preparing to become a system administrator until someone asks the question.
Here are some of the easier computer skills to learn for someone starting a career in technology:
- Basic Software Use - Learning word processing, spreadsheets, presentations is straightforward. These are used widely.
- Database Management - Using programs like Microsoft Access or Google Sheets to setup and query databases. Not too technically complex.
- Website Design - Learning basic HTML, CSS and CMS platforms like WordPress allows building simple sites without coding.
- Cybersecurity Basics - Fundamentals of security best practices, passwords, securing devices and networks pick up quickly.
- Co
Here are some of the easier computer skills to learn for someone starting a career in technology:
- Basic Software Use - Learning word processing, spreadsheets, presentations is straightforward. These are used widely.
- Database Management - Using programs like Microsoft Access or Google Sheets to setup and query databases. Not too technically complex.
- Website Design - Learning basic HTML, CSS and CMS platforms like WordPress allows building simple sites without coding.
- Cybersecurity Basics - Fundamentals of security best practices, passwords, securing devices and networks pick up quickly.
- Computer Networking - Grasping wiring, protocols, devices that make networks operate has a low barrier to entry.
- Technical Support - Troubleshooting common software/hardware problems, installing programs etc. picks up through experience.
- Digital Marketing - Skills like social media posting, analytics, email campaigns have gentle learning curves.
- Technical Writing - Explaining technology to audiences simply can be learned faster than coding itself.
- Project Management - Tools like Trello, Asana, Jira allow taking on planning, scheduling without deep tech skills.
While areas like coding, system administration require dedication, the above can result in employable skills with a few months self-study. They're great starting points for tech careers.
Learn to be great with people and brutally efficient with processes.
Gather as much knowledge as you can. Specialize. Automate anything and everything. PowerShell.
Read daily in new technologies. Demo and lab as much as you can.
IF you want certifications, study for them (no cheating) and get them.
Drink coffee. Eat bacon. Help other admins and Help Desk people grow.
Learn to be great with people and brutally efficient with processes.
Gather as much knowledge as you can. Specialize. Automate anything and everything. PowerShell.
Read daily in new technologies. Demo and lab as much as you can.
IF you want certifications, study for them (no cheating) and get them.
Drink coffee. Eat bacon. Help other admins and Help Desk people grow.
Learning the basics isn’t terribly hard. The hardest skill to learn for systems administration (or anything like it) is learning how to learn. But if you have some Linux background, administration is just a natural outgrowth of being a user.
Becoming good at it is, in fact, hard. I wouldn’t be able to put a level of effort on it in retrospect because I’ve lived a charmed life. I’ve had problems that needed solving and the leeway to solve them as I saw fit.
An additional thing to consider is that there’s all sorts of admins, too. If you just have a single machine and need it to do a few simple th
Learning the basics isn’t terribly hard. The hardest skill to learn for systems administration (or anything like it) is learning how to learn. But if you have some Linux background, administration is just a natural outgrowth of being a user.
Becoming good at it is, in fact, hard. I wouldn’t be able to put a level of effort on it in retrospect because I’ve lived a charmed life. I’ve had problems that needed solving and the leeway to solve them as I saw fit.
An additional thing to consider is that there’s all sorts of admins, too. If you just have a single machine and need it to do a few simple things like host a basic website, it’s not hard at all. At least for somebody who has some basic understanding of how the internet works.
If you need to spin up a virtualized routing infrastructure using FRR on Linux that is, of course, exponentially more difficult. A lot of people never use the CLI and still consider themselves admins. I disagree, but I also don’t create the definitions.
Depends on what kind of systems you are supporting.
Some general duties most Linux admins do include.
Building servers. That is hardware up usually. You’ll order a server but typically you add hardware too it. Servers usually come with Linux already installed but it’s probably not your distro or version of your distro or not properly configured for your environment. So typically you’ll install the OS, configure it, set up the drivers and configure them.
Back ups. If you are not doing back ups and testing them, you don’t deserve the title admin.
Network security. Even if you have a network security
Depends on what kind of systems you are supporting.
Some general duties most Linux admins do include.
Building servers. That is hardware up usually. You’ll order a server but typically you add hardware too it. Servers usually come with Linux already installed but it’s probably not your distro or version of your distro or not properly configured for your environment. So typically you’ll install the OS, configure it, set up the drivers and configure them.
Back ups. If you are not doing back ups and testing them, you don’t deserve the title admin.
Network security. Even if you have a network security group, the first level of defense is you.
Checking logs. Read your logs, they help you solve problems before half the department is busting your door down wanting to know why their stuff isn’t working.
Write scripts, typically in Python & PERL but dozens of other languages are commonly used and you’ll write BASH scripts fairly often.
Plan for usage. So if you have DB servers, you’ll generally set up fail over and availability for them. Watch for space usage and provide more long before the server eats up all the space. Configure the logging level to a lessor level and listen to developers scream if the logs are a threat to running the server out of disk space (never install apps like DBs & Web servers on the root partition. If for nothing else because if the logs go wild and eat up all available space, all it does is crash the web or DB server. Linux handles running out of space on the Root partition gracefully, but that’s part of the problem. You get all sorts of wonky errors that make no sense until you figure out you are out of space on the root partition. ). Generally it’s best to add drive space BEFORE you have to alter usage. However sometimes it’s just not possible due to budgets. A budget you help set with your predictions on future space usage.
Reset passwords. No matter what servers you run, somebody will find a way to forget their password.
Play with new hardware. Your an admin. You get first dibs, you have to “test” it after all :)
Making sure updates and upgrades are tested before being put on production servers.
Configuring routers, setting up printers, and similar devices.
Sit in lots of useless meetings. If you are really good you schedule some sort of outage while you are in a pointless meeting so you have to leave to solve that problem.
Dodge pointy haired bosses and intercept their shiny sales ads disguised as technology magazines before they read about some expensive and totally useless piece of software or hardware and wipe out your server budget on something you don’t need, cannot use and as often as not need plugins and additions to even make work. Which wipes out next year’s budget as well. Then you get blamed when server hardware fails because the money you needed to upgrade it was spent on a money pit project some pointy haired boss read about. If you cannot intercept their magazines then find a way to intercept their liking of that useless software. Usually logic doesn’t work since they rarely have enough technical knowledge to appeal too. Instead you have to find a way to dumb it down to kindergarten speak so they understand just how useless and expensive that junk is.
There are lots of specifics relative to what you support. If you are supporting LAMP you need specific skillsets related to the tools they are using. Perhaps RUBY or Drupel or MySQL or Postgress, etc. You may be configuring JAVA and JAVA tools as well and 100 other possible configurations and toolsets used by developers. You might be dealing with ECommerce, site certs, etc as other examples. That’s just LAMP. Cloud, LAMP, Email, storage servers, and dozens of other types of servers with specific software and needs will happen. One company might force you to set up an FTP server for example, which is a real pain because it’s a security nightmare and Windows refuses to use SFTP as a default protocol and Windows users are often about as technically illiterate as they come. So when you say SFTP their eyes glaze over like zombies under the spell of a Voodoo queen. So then you are anxiously watching FTP for the inevitable security breech and dealing with it when it happens.
Or perhaps you are supporting CGI creation servers. That means expertise in a lot of very specialized software and configuring performance for that software. Probably even a few kernel mods to make it all run as smooth as blackberry soup on a hot griddle.
Desktop support is often something thrust on you. You know servers. Servers are big bad scary things. Thus you should know how to make their desktop widgets work even when you told them not to do that specifically. I’ve found it’s best to anticipate needs and just make sure there’s a way to install safer more functional alternates and then call them standard load so nobody can argue with you about it. As much as possible I stay away from desktop support, especially Windows. Gah I feel slimed every time I have to sit down and figure out what’s wrong with a Windows machine. Logic is obviously not a prereq to be a Microsoft coder lol. It like a peak into some kind of alternate universe where the entire population was born without reasoning abilities.
On the plus side, nobody has a clue what you are doing. If you are doing it right nobody has any idea if you are playing a video game half the day or studiously working. Linux is extremely stable, robust and if you know your stuff you can anticipate most problems and fix them BEFORE they are a problem. So if you are doing your job well, you have periods of lots of free time punctuated by rare catastrophic hardware failures, major upgrades and similar times when you go home only to shower and eat and back at it. When production systems are down the company is losing money and you BETTER have them up and running ASAP. If your wife is giving birth you can still work from a lap top or better yet move her into the server room to have your child. If you are a female server admin and are giving birth and production servers are down, you best give birth ON TOP of the servers with a keyboard in hand.
Everything in the company hinges on you doing your job well. If you do, nobody even knows who you are outside of your manager and some of the upper bosses you periodically have to go beg for money for hardware from or explain just how stupid their idea is in a way that makes them think it’s their idea to nix the project. If you are not doing your job your office/cubicle is a madhouse until you are replaced by somebody who can do the job or you figure out how to do your job well.
Oh you are often quartered in with the severs so invest in a space heater and warm coat. Also learn how to make snarky remarks. You aint a *Nix admin until you can :)
If you want to be a junior Linux admin, start applying to jobs. Seriously. Start going to various user groups in your area (search Meetup) and talk with people. Chances are good that there’s an admin position open in your area. Depending on where you are, there’s more work than there are qualified people to do it. If you’re coming in cold to Linux and/or to computers in general, you may only be able to get a helpdesk job somewhere. It’s a start.
Be comfortable on the command line, know how to stop, start, restart, and configure various services, like syslog, ntp, Apache, BIND, etc. What you don
If you want to be a junior Linux admin, start applying to jobs. Seriously. Start going to various user groups in your area (search Meetup) and talk with people. Chances are good that there’s an admin position open in your area. Depending on where you are, there’s more work than there are qualified people to do it. If you’re coming in cold to Linux and/or to computers in general, you may only be able to get a helpdesk job somewhere. It’s a start.
Be comfortable on the command line, know how to stop, start, restart, and configure various services, like syslog, ntp, Apache, BIND, etc. What you don’t already know, take a few hours outside of work each week to learn. If you don’t already run Linux on your home computer, start doing so - using it as your main OS will help you learn faster. _Enjoy_ the process - that’s how you really learn.
If you don’t already have an account with Amazon Web Services, get one. It’s free to use up to a certain point, and pretty much everyone uses it these days in some capacity. Spin up a couple of EC2 vms, set up an S3 bucket or two, set up an ELB, and just get a feel for how the service works. Many of the AWS services have analogs with other vendors, so if you know your AWS stuff, you’ll be able to translate it to Azure, Rackspace, or Google Compute Engine.
Having a certification is never going to hurt you, but what’s important about the certificate is the work you put in to get it. If you really use it as a chance to learn things you don’t know, it’s way better than just sitting down for the test a couple of times and barely passing.
Graduating college and going straight into an admin job is rough if you haven't paid your dues at the help desk.
I'm going to lay out a path that is pretty solid in terms of career growth as an aspiring Network Admin:
- Join the Air National Guard/ Reserves as a 3D0x2 (Network Admin) for the practical experience and the security clearance.
- Get your A+ cert ASAP. This will enable you to get a part time gig/ internship at the help desk so you can get your foot in the door while you're in school.
- After you have that A+, start studying for CCNET and then the CCNA. This will come in handy when your help
Graduating college and going straight into an admin job is rough if you haven't paid your dues at the help desk.
I'm going to lay out a path that is pretty solid in terms of career growth as an aspiring Network Admin:
- Join the Air National Guard/ Reserves as a 3D0x2 (Network Admin) for the practical experience and the security clearance.
- Get your A+ cert ASAP. This will enable you to get a part time gig/ internship at the help desk so you can get your foot in the door while you're in school.
- After you have that A+, start studying for CCNET and then the CCNA. This will come in handy when your help desk company is looking to promote from within.
- Although you don't need a physical lab setup for passing these exams, I'd recommend buying a few switches and routers to get your hands dirty with. You can't put how many hours you logged on packet tracer on a resume but you CAN put “over 200 hours of hands on experience with CISCO equiptment.”
- Get that Linkdin account set up and fill it with your hands on experience, certs, security clearance (almost a guaranteed job with this), and internships/volunteer work.
- Apply for everything but don't think you're above the help desk. That's where the magic will happen for you.
Good luck, man!
Hi,
As I wrote in this Medium article a few months ago:
During the project planning stage [of my Linux in Action book], I divided the key Linux admin skills into 15 domains. I then associated each domain with the specific tools that a junior admin would expect to use. These domains and tools (illustrated below) are the overall curriculum expectations around which the book would be built.
Here’s that list of domains. I think it’s a good start for getting started as a Linux systems administrator:
Good luck!
Hi,
As I wrote in this Medium article a few months ago:
During the project planning stage [of my Linux in Action book], I divided the key Linux admin skills into 15 domains. I then associated each domain with the specific tools that a junior admin would expect to use. These domains and tools (illustrated below) are the overall curriculum expectations around which the book would be built.
Here’s that list of domains. I think it’s a good start for getting started as a Linux systems administrator:
Good luck!
You do like we all did. You fall in love with Linux, put together your own box at home and read the appropriate O’Reilly books. Then you go get an underpaid job at a sloppy little company and you hang out in the back rooms and fix all of the things that are broken.
What you don’t do is try to spice up your resume and go work in a big company with a career path where there are mentors, beanbag chair
You do like we all did. You fall in love with Linux, put together your own box at home and read the appropriate O’Reilly books. Then you go get an underpaid job at a sloppy little company and you hang out in the back rooms and fix all of the things that are broken.
What you don’t do is try to spice up your resume and go work in a big company with a career path where there are mentors, beanbag chairs and free Red Bull. You don’t walk into Ford and tell them you’re going to redesign the Mustang. You fix your own Chevy and street ra...
It will require some dedication but it’s not too hard.
For starters, make sure you understand certain key subject areas:
- Understanding the relationship between Linux itself and the userland (supplied by GNU, and others). Also understanding what distinguishes different Linux distributions (package managers, choice of tools, etc).
- Experience with multiple Linux distributions. Install and experiment with CentOS/Rocky Linux/Alma/RHEL (all the same thing, really) vs Ubuntu/Debian or Arch Linux. Practice adding and removing packages, updating, configuring networking manually, enabling services like ssh
It will require some dedication but it’s not too hard.
For starters, make sure you understand certain key subject areas:
- Understanding the relationship between Linux itself and the userland (supplied by GNU, and others). Also understanding what distinguishes different Linux distributions (package managers, choice of tools, etc).
- Experience with multiple Linux distributions. Install and experiment with CentOS/Rocky Linux/Alma/RHEL (all the same thing, really) vs Ubuntu/Debian or Arch Linux. Practice adding and removing packages, updating, configuring networking manually, enabling services like ssh, etc.
- Familiarize yourself with commonly used packages like Apache, Nginx, MariaDB and so forth. A great way to dive in is to setup WordPress on your own Linux system. It will teach you a lot. Install ‘samba’ and configure some file sharing.
- Learn how to add and remove users, set passwords, set permissions in both symbolic and octal modes. Understand the difference between soft and hard links.
- Practice your bash and bash scripting. The Advanced Bash Scripting Guide is a great resource. You don’t need to be a wizard but understanding what a return code is, how to background a job, etc is very helpful.
- Learn the basics of computer networking. Look up the difference between a hub and a switch, what a MAC address is, IPv4 and IPv6, the OSI model (7 layer). You should be able to use tools like ping, traceroute, arp, ifconfig, netstat, etc. Eventually you’ll want to understand iptables and firewalld.
- Learn a text editor. Everyone starts with ‘nano’ but you should really force yourself to learn vi (vim). It is much more powerful once you understand it a little better. Some people use emacs, that’s fine too.
Hopefully this will help to get you started. You might try using VirtualBox (it’s free) to install a Linux virtual machine to get started.
At lot depends on the kind of place you work. When I started as a Unix admin, I did a variety of things: building new systems, porting software from one language to another, setting up email services, fixing desktop systems, etc.
After doing that for a while, I went to work at a very large ISP and worked on a team that specialized in Solaris-based web servers. Once you master the skill of managing thousands of physical servers, and stamping out new web servers, it got boring very quickly. The regular hours weren’t so bad, but the on-call stuff sucked.
My next job was working at a place with a st
At lot depends on the kind of place you work. When I started as a Unix admin, I did a variety of things: building new systems, porting software from one language to another, setting up email services, fixing desktop systems, etc.
After doing that for a while, I went to work at a very large ISP and worked on a team that specialized in Solaris-based web servers. Once you master the skill of managing thousands of physical servers, and stamping out new web servers, it got boring very quickly. The regular hours weren’t so bad, but the on-call stuff sucked.
My next job was working at a place with a state department contract where we’d deploy systems to quite a few different countries. My windows, Linux and Solaris and hardware skills were useful designing a system that matched the intended site. It was interesting work and involved a bit of foreign travel. I also designed and maintained the virtualization infrastructure for the software testers and documentation writers/validators.
After that, I worked at a place that maintained geographically-diverse web caches, but that was fairly horrible. The company was fine, but the shift work and the boss were awful.
I now work at a place that has a dynamic environment that’s R&D focused. There’s the usual infrastructure to maintain, but I also manage the cluster computing infrastructure. We’re constantly exploring new technologies so we can more easily deploy a variety of new services.
A lot of places will be the same old thing. It’s a good environment to pick up new skills and refine old ones. No matter what you do, don’t stop learning and don’t fall into the trap of not knowing how something works. There are multiple ways to do the same tasks. Learn which ones work best for what kind of environment. Learn to script in a mainstream language such as bash, awk and python and maintain your skills.
Yes you can.
Want a fulfilling IT career? Learn Linux
How can Linux change your career?
Yes, I'm about to get a little grandiose. But I'm passionate about changing people's lives, and I've seen it happen, so at least consider this list of ways Linux can help your career.
- Quite simply, you can get a job. Obviously, there are many, many places looking for individuals who are skilled with Linux. The links above will attest to that. But that's just the obvious answer.
- Learning Linux helps you look at your skillset in a different light. No longer do you see yourself as a list of certifications and abili
Yes you can.
Want a fulfilling IT career? Learn Linux
How can Linux change your career?
Yes, I'm about to get a little grandiose. But I'm passionate about changing people's lives, and I've seen it happen, so at least consider this list of ways Linux can help your career.
- Quite simply, you can get a job. Obviously, there are many, many places looking for individuals who are skilled with Linux. The links above will attest to that. But that's just the obvious answer.
- Learning Linux helps you look at your skillset in a different light. No longer do you see yourself as a list of certifications and abilities, but rather a forward-thinking problem solver. All of your skills are just arrows in your quiver, and your brain is what makes you so valuable. Remember, a Google search can teach you how to install an Apache server, but only a well-trained problem solver can know when it's appropriate to do so.
- You can find a job you love. Once you realize how valuable and flexible you've become, you can focus more on finding a job you love. We all need to pay our mortgage, but if your job options are broader, the chances of finding your calling are much greater.
- You can offer employers or clients well-rounded advice. Remember from past blog posts, there are times Linux isn't the right choice. The only people who will be able to tell the difference are those familiar with Linux and the alternatives. Your Linux expertise can be invaluable to someone who is implementing a SharePoint infrastructure. Should they be using Linux-based solutions instead? Be that person who can help them decide. Your rewards will be more than just monetary. I promise.
- Reread number 2. Truly, making the mental shift from a technician to a solutions provider is the key to success in IT. Be the answer that a Google search can't provide. You don't need all the answers; you need to know how to ask all the right questions.
As a Systems Administrator of any flavour of operating system, your biggest asset is autodidactism.
If you are an upstart in the world of Linux I suggest you start by downloading VirtualBox for your operating system [1]
Next, using Virtualbox, install a Linux OS. I suggest you start with Centos [2] because it is based on Red Hat Enterprise Linux.
Once you have your Centos running in your Virtual Box, clone it and shut it off.
Now you can dive right in the clone and try out different system administration tasks. For instance, configure your centos to allow logging in via SSH, or, clone your Centos
As a Systems Administrator of any flavour of operating system, your biggest asset is autodidactism.
If you are an upstart in the world of Linux I suggest you start by downloading VirtualBox for your operating system [1]
Next, using Virtualbox, install a Linux OS. I suggest you start with Centos [2] because it is based on Red Hat Enterprise Linux.
Once you have your Centos running in your Virtual Box, clone it and shut it off.
Now you can dive right in the clone and try out different system administration tasks. For instance, configure your centos to allow logging in via SSH, or, clone your Centos box and have both running simultaneously and try to get SSH working between them.
Install a web server on one of them, and a database server on the other etc.
As a Systems Administrator you will often be asked to do tasks you have never done before, and yet you are expected to achieve them nonetheless. Set yourself a task, research how to do it, then experiment.
If you mess up, delete the cloned image, and reclone your original and no harm done.
You will need to keep practising. It is not a skill you acquire overnight and there are a great many aspects to systems administration. It may also be necessary to get certification.
I myself have none but I have many years of experience in lieu, so if you do not have the experience, having a certification instead may be worthwhile.
Undoubtedly, Linux administration is going to be the brightest and best career option, for those who are willing to choose their path in system administration. However, I would like to add more points to strengthen your career as a Linux administrator.
- Learn to code: This is very very important if you want to sustain in Linux ecosystem for a long time. Sometimes, you need to write a simple program/code/script to automate your tasks. Employers always appreciates smart workers more than hard workers.
- Get a certification: Certificates are useless. It is true.However, Even, if your are a Linux ninja
Undoubtedly, Linux administration is going to be the brightest and best career option, for those who are willing to choose their path in system administration. However, I would like to add more points to strengthen your career as a Linux administrator.
- Learn to code: This is very very important if you want to sustain in Linux ecosystem for a long time. Sometimes, you need to write a simple program/code/script to automate your tasks. Employers always appreciates smart workers more than hard workers.
- Get a certification: Certificates are useless. It is true.However, Even, if your are a Linux ninja, nobody is going to believe or hire if you don’t have any certifications related to Unix/Linux. They need some certifications. There are, of course, some exceptions. You may be get hired sometimes without certifications. But, Certifications are still added advantage.
- Improve Communication: This is very common. I don’t have to explain it. If you don’t know how to communicate with your clients, colleagues, you’re out of the league, no matter how knowledgeable you are. You have to convey things that employers see as valuable. So, make sure you speak and write flawless English.
- Keep updating yourself: No knowledge is bad or wasted knowledge. Knowledge outside of your field shows you're willing to learn. You must constantly and deliberately update your skills from time to time. Expand your knowledge to other platforms, such as Windows, Mac OS X, Unix, Solaris. Because, not every company depends on a single platform. You should be open to learn and switch to different Linux distros, and non-Linux distros.
- Be a master at, at least, one skill: Don’t try to be master at everything. Practically it is impossible. Find where you excel and keep sharpening those skills. Some of you might be good at configuring servers (DNS, DHCP, Web server etc.), and some of you might be good at scripting. So, whatever it is, just keep improving them. P.S. Don’t forget to find where you lack and improve them.
- Get a degree: If someone says that college degree is not important, throw a stone right at their face as hard as you can. Don’t be naive. Don’t listen to those who says all legends are college drop-outs. It is true, some persons who achieved in their fields are college/school dropouts . But they are either rich or they had strong support from their parents. You should have at least an under graduate degree. Master degree is recommended.
- Learn virtualization and cloud computing: Nowadays, I see Virtualization and cloud computing have seen exponential growth. Learn VMWare, XenServer, AWS.
Finally, your number one priority should be having a strategy for competing against millions of people like you who have the same goals.
Cheers!