How can I get hands-on Linux exp?
So, I don't have a lot of free cash at the moment. I want to get some hands-on Linux experience. However, I don't exactly know how to go about doing that.
A Macbook Air is currently my primary machine (i5, 4 gb RAM). I barely have any space available on my tiny SSD hard drive, but I probably could struggle and free up a max of 10 gb for a Linux partition. I also have an old Pentium 4 machine in my basement that hasn't been used in ages - guessing 1.8 ghz P4 processor and either 512 mb or 1 gb RAM.
I hope to build a new desktop system by April, finances permitting. But until then, what would be my best bet of learning Linux? Which machine should I use? Should I try running it off a USB drive instead of installing to disk? Is there a specific distro I should look into?
I'll claim to have abs no prior Linux exp/knowledge. Whatever options suggested should take that, and the initial learning curve into consideration.
(I was originally thinking of trying Ubuntu. I can't tell if that's a good idea or not, since i don't have much knowledge on the diff distros. However I want to eventually become well versed in the CLI and possibly shell scripting.)
A Macbook Air is currently my primary machine (i5, 4 gb RAM). I barely have any space available on my tiny SSD hard drive, but I probably could struggle and free up a max of 10 gb for a Linux partition. I also have an old Pentium 4 machine in my basement that hasn't been used in ages - guessing 1.8 ghz P4 processor and either 512 mb or 1 gb RAM.
I hope to build a new desktop system by April, finances permitting. But until then, what would be my best bet of learning Linux? Which machine should I use? Should I try running it off a USB drive instead of installing to disk? Is there a specific distro I should look into?
I'll claim to have abs no prior Linux exp/knowledge. Whatever options suggested should take that, and the initial learning curve into consideration.
(I was originally thinking of trying Ubuntu. I can't tell if that's a good idea or not, since i don't have much knowledge on the diff distros. However I want to eventually become well versed in the CLI and possibly shell scripting.)
Goals for 2018:
Certs: RHCSA, LFCS: Ubuntu, CNCF CKA, CNCF CKAD | AWS Certified DevOps Engineer, AWS Solutions Architect Pro, AWS Certified Security Specialist, GCP Professional Cloud Architect
Learn: Terraform, Kubernetes, Prometheus & Golang | Improve: Docker, Python Programming
To-do | In Progress | Completed
Certs: RHCSA, LFCS: Ubuntu, CNCF CKA, CNCF CKAD | AWS Certified DevOps Engineer, AWS Solutions Architect Pro, AWS Certified Security Specialist, GCP Professional Cloud Architect
Learn: Terraform, Kubernetes, Prometheus & Golang | Improve: Docker, Python Programming
To-do | In Progress | Completed
Comments
-
Dragonranger Member Posts: 101Im in the same boat man. I want hands on exp so I decided to install virtual box on my desktop pc and install OpenSuse. That way if a screw anything up its not big deal.
-
W Stewart Member Posts: 794 ■■■■□□□□□□I would recommend a VM for trying out different distros. You really don't need that much disk space and if you really want to become familiar with linux you should probably know the differences between some of the more popular distros like Red Hat and Debian based distros. Try doing most tasks that you do on a daily basis from the command line instead of the gui. You'll learn about some interesting command line tools in linux that can allow you to do a lot of things that would normally require third parrrty software in Windows. Get familiar with the package management of the more popular distros as well and check out some of the tutorials on these websites.
Linux Home Networking | Tutorials and Forums
nixCraft: Linux Tips, Hacks, Tutorials, And Ideas In Blog Format
Kernel | HowtoForge - Linux Howtos and Tutorials
Bash scripting Tutorial
The best thing you can do is try to understand how everything works and what it does. Don't be that guy that just copies and pastes one liners without trying to understand it first. Once you get over that learning curve then I would recommend installing Arch Linux, Gentoo and Slackware and using them for awhile. They'll give you a lot of insight into how linux works. Slackware requires you to either download somebodies iptables script or write your own. I would recommend writing your own. Someobdy once said long before I had a chance to work with linux, that everything in linux is a file. He was very right.
From what I've seen in other posts, you're already in a position to get some solid linux experience so just soak up everything you can and learn a little extra in your free time and you'll be standing out at your new job in no time. -
DoubleNNs Member Posts: 2,015 ■■■■■□□□□□Unfortunately, I think I'm too much of a noob as of now to make much sense of those links you sent me. But thanks anyway. I'll try to read through them.
I have a copy of VMWare Fusion - used it a while ago while trying to get some comp games to run on my comp w/o dual booting. (In the end I installed Win 7 using Boot Camp.) Would it be better to use that or get Virtual Box?
And what are some of the options I should explore for my very 1st distro. There's so many of them, I don't know where to start haha. Debian/Ubuntu/CentOS?Goals for 2018:
Certs: RHCSA, LFCS: Ubuntu, CNCF CKA, CNCF CKAD | AWS Certified DevOps Engineer, AWS Solutions Architect Pro, AWS Certified Security Specialist, GCP Professional Cloud Architect
Learn: Terraform, Kubernetes, Prometheus & Golang | Improve: Docker, Python Programming
To-do | In Progress | Completed -
Xyro Member Posts: 623The easiest option I can think of for someone in your, self-explained, situation would be to run Linux off of a bootable CD/flash drive where the OS is loaded into & runs from RAM. If you don't yet know how to create a bootable drive, there are a couple of options: learn (lol) or purchase the CD/flash drive from someone who already knows how to do this & sells the drives (cheap usually).
For people new to Linux, the "easiest" versions to deal with are Ubuntu & Puppy. -
Lincxx Member Posts: 12 ■■■□□□□□□□Like a lot have already said, you could use a virtual machine, live cd, usb device(thumb/flash drive or portable). I have use a portable hard drive in the past to run a Linux disto.
For Personal:
To start off I would go with (and these aren't in order) Linux Mint/Ubuntu/OpenSuse/Fedora try at least 2 of them and try to get one that is GNOME and the other one as KDE. Ubuntu default is Unity, plus you will get to use the different package managers too.
For Server/Professional:
CentOS/Ubuntu Server/Debian
I wish you luck w/ your studies. -
DoubleNNs Member Posts: 2,015 ■■■■■□□□□□I think I'll get Virtual Box, since I'd probably have to pay to upgrade my version of VMWare Fusion. That'd also give me some virtualization experience instead of running it off a USB drive.
I currently have a 20 gb Win 7 Boot Camp partition on my Mac Air. Honestly, I only used Boot Camp instead of virtualization so I could play video games without my comp heating up too much haha. Guess I could get rid of that for the 20 gbs of space and just replace it with a virtualized XP installation (less space/resources needed than 7) so I could still run Win only programs, such as Packet Tracer (just started my Cisco studies.) Then I could install Ubuntu Desktop and CentOS as a start and mess around with those.
Idk, does that sound like a good start?Goals for 2018:
Certs: RHCSA, LFCS: Ubuntu, CNCF CKA, CNCF CKAD | AWS Certified DevOps Engineer, AWS Solutions Architect Pro, AWS Certified Security Specialist, GCP Professional Cloud Architect
Learn: Terraform, Kubernetes, Prometheus & Golang | Improve: Docker, Python Programming
To-do | In Progress | Completed -
DoubleNNs Member Posts: 2,015 ■■■■■□□□□□Thanks!!
I'm gonna get started on all the above tonight. Any other suggestions or extra advice would be greatly appreciated. This is all extremely new to me.Goals for 2018:
Certs: RHCSA, LFCS: Ubuntu, CNCF CKA, CNCF CKAD | AWS Certified DevOps Engineer, AWS Solutions Architect Pro, AWS Certified Security Specialist, GCP Professional Cloud Architect
Learn: Terraform, Kubernetes, Prometheus & Golang | Improve: Docker, Python Programming
To-do | In Progress | Completed -
yoshiiaki Member Posts: 48 ■■□□□□□□□□Here is a link I use as a reference for when I need it:
http://ss64.com/bash
It won't teach you but it gives a short description and now you will know various commands you can research to help out with your learning. Can start with basic things such as making files and editing their attributes and things of the sort, assuming you have zero experience.
Also regardless of the distro you pick, try as much as possible to stay away from utilizing the gui too much. Take the long and hard road by using CLI for everything to really understand everything. I met this guy one time and notice he was using Ubuntu. I tried to strike up a conversation and what I got out of it was, he had no idea what Ubuntu or Linux even were. His "techy cousin" installed it claiming that Windows was bad. He seemed to never have had a real problem, but then again Idk what his daily routine would have included.2013 Goals: [x] Sec+ [x] CCNA []Proj+ []OSCP
2013 Stretch Goals: [] CCNA-Sec []Land Sec job -
wes allen Member Posts: 540 ■■■■■□□□□□Vms are great to work with, but don't over look picking up an older desktop/laptop for cheap and using that as well.
I have played with linux off and on for many years (kinda remember vi), but never really sat down to learn it that well. Started looking at finally doing that here soon, installed Mint on my laptop, installed virualbox on Mint, and Backtrack on Virtualbox. I like mint - pretty solid so far. I will say I don't know how good the "use Linux desktop as a daily driver" is with the newer distros - the GUI is very much like windows/osx, and you can do a lot of stuff with GUI tools. If you want to really learn it - pick a project to complete and use a server distro. Something like creating a full functioning http, ftp, ssh, dns, dhcp, iptables, etc server. Or using linux to study python or backtrack type tools, anything to force you into the cli and into editing all of the million text files. -
MentholMoose Member Posts: 1,525 ■■■■■■■■□□You can run Linux VMs for free from some IaaS providers. Sign up for a 3-month Azure trial or run free tier VMs on EC2.MentholMoose
MCSA 2003, LFCS, LFCE (expired), VCP6-DCV -
Trashman Member Posts: 140Wipe the dust off that old Pentium 4 machine you have in your basement and check if you are able to boot from a USB.
There are big chances that most if not everything of the hardware is supported by Linux.
Also, skip tomorrows cappuccino, look up which motherboard it has and buy some more cheap memory on Ebay so you have it ready once you start running applications.
That one is good as gold for your little lab.
In regards to your choice of distro, I vote for Debian and CentOS.
Once you get things up and running you can remote connect from your MacBook and play around with it remotely.
Start with getting GNOME or KDE up and running.
Some say that if you like working with Mac's, go for GNOME, if you like working with Windows go for KDE. But then again, it's all up to you.
Browse screenshot on Google Images.
Play around with setting up users accounts and groups and learn how to use the package manager to install applications.
When you get stuck with something, learn how to use "man" to find documentation.
I will not recommend that you install Slackware at this stage.Bachelor of Science in Information Systems
2015 COLOR=#008000]X[/COLOR | 2016 COLOR=#ff8c00]In progress[/COLOR | 2017 | 2018 -
hiddenknight821 Member Posts: 1,209 ■■■■■■□□□□Wipe the dust off that old Pentium 4 machine you have in your basement and check if you are able to boot from a USB.
There are big chances that most if not everything of the hardware is supported by Linux.
Also, skip tomorrows cappuccino, look up which motherboard it has and buy some more cheap memory on Ebay so you have it ready once you start running applications.
Haha! Spoken like a true trash man.
While it may seem easier to use the free tutorials online, I don't find them motivating. I find books a lot easier to follow. It motivates me each time my bookmark moves to the next several pages each day. I like to learn with some structures in place, especially when I'm new to the subject. I'm going to throw out a good book that I haven't tried, but got no use for it since my Linux knowledge is beyond the level of the topics.
[URL="http://The Linux Command Line: A Complete Introduction"]Amazon.com The Linux Command Line: A Complete Introduction[/URL]
I was first exposed to *nix when I was in college, and the introductory course I took discussed the majority of the topics found in the table of contents. So, with the good rating on the book, I don't think you can go wrong with this book if you have absolutely no Linux command-line experience. -
WafflesAndRootbeer Member Posts: 555Here are some things you need to know....
1. You already have a Unix machine in front of you. The Mac OS is more or less Apple's own version of Linux. Many commands and even a lot of the code - Apple uses A LOT of open source code and projects in their software - are identical to what you'd find in your average Linux distro. Dive into the Mac OS and use it to learn basic Unix commands.
2. When you're ready to try Linux, get yourself a cheap refurbished Intel-based desktop or notebook. Whichever you prefer and preferably one with Intel HD graphics or Nvidia graphics. If you look around, you can easily find a lot of inexpensive notebooks with a current dual-core Intel CPU with Intel HD graphics, which is exactly what you want. Don't bother with anything AMD as their stuff doesn't run Linux well and they have all but abandoned Linux development due to their financial situation.
3. If you choose to go the notebook route, get an SSD. Crucial M4s are pretty much always on sale these days and you can always get a good deal with them. If you go with a desktop, it doesn't really matter but there are caveats to using HDDs with Linux as the new Advanced Format drives have issues with Linux. SSDs just work and that's the ONLY choice you want to make for an OS drive if you can swing the cost.
4. Ubuntu is the most widely used distro. For the purposes of learning Linux, it's great and I wholeheartedly recommend the LTS version. However, you may want to try other distros like Fedora, which is the basis for Red Hat Linux, or OpenSUSE. Avoid using any distro that isn't mainstream as the documentation and support often suck and they are not n00b friendly for the most part. -
Lincxx Member Posts: 12 ■■■□□□□□□□I really enjoyed this book (if have about 25 bucks) Linux Essentials. Linux Essentials: Roderick W. Smith: 9781118106792: Amazon.com: Books. Here are some websites I have used in the past:
UNIX / Linux Tutorial for Beginners
Beginners Level Course - Linux.org
Linux for Beginners Free On-line Books and Tutorials
There is so much free material out, it's crazy, but I also like books as well. -
ally_uk Member Posts: 1,145 ■■■■□□□□□□Hi there I will give you a idea of how I am going to be teaching myself Linux. To start with I want to become very comfortable with BASH including how to write basic scripts.
The Linux Command Line: A Complete Introduction: Amazon.co.uk: William E. Shotts: Books
The above book is very easy to follow for a newbie I am going to be working through it labbing commands and taking notes on everything I learn. The next book I will work through is
A Practical Guide to Linux Commands, Editors, and Shell Programming: Amazon.co.uk: Mark G. Sobell: Books
Again this is a book dedicated to the BASH shell but it will teach you basics of SED, AWK, MYSQL, PYTHON, Perl
Again I will be working through this book labbing and taking notes
I figured instead of jumping the gun and typing in someones config off the internet and following tutorials it would be better for myself to develop a solid foundation of the BASH shell.
Once I am comfortable with the cli I will then look at Ubuntu server documentation and look at how to implement and configure services.Microsoft's strategy to conquer the I.T industry
" Embrace, evolve, extinguish " -
dontstop Member Posts: 579 ■■■■□□□□□□Build a Home Server, Not Virtual... Run all of your homes core services (DHCP, DNS, Web, Proxy, Storage Server) this will give you some great experience in management, monitoring, provisioning and angry customers.
I would also look into going and learning something like C/C++ & Python, Just to understand how software is built and the kinds of problems building software that can occur (Makefiles, Linking etc)
Are you looking at Desktop support Linux experience or Server Admin? Desktop experience with Linux is fleeting, New distro's and updates means stuff you learn now (i.e. dodgy fixes for bugs) are useless in 12 months. I would pick a major Distro like RHEL, CentOS, Debian, Ubuntu and build a server. You will learn and use it for everything.
Hope this helps,
Jason.