Reddit reviews Linux in a Nutshell: A Desktop Quick Reference
We found 5 Reddit comments about Linux in a Nutshell: A Desktop Quick Reference. Here are the top ones, ranked by their Reddit score.
O Reilly Media
We found 5 Reddit comments about Linux in a Nutshell: A Desktop Quick Reference. Here are the top ones, ranked by their Reddit score.
You just have to jump in and do stuff. Using it as your primary OS or always for a particular task (e.g. always use it for internet browsing) is a good way to become familiar with a linux desktop environment.
As for the command, whenever you want to:
Try to make all of that happen in a command-line/terminal. If you can't figure out a command/program's parameters, check the man (manual) file using the 'man' command ('man <command name>).
For some command command references:
https://files.fosswire.com/2007/08/fwunixref.pdf
http://cc.iiti.ac.in/lcommands.pdf
http://www.pixelbeat.org/cmdline.html
http://www.computervillage.org/articles/CommandLine.pdf
It may seem silly and retro/outdate, but PRINT out a reference sheet. If it's less than 10 pages it's hardly an environmental crisis.
http://linuxcommand.org/index.php
[ Do some basic software development: hello world, a calculator, a text adventure game, dice roller ]
Also install some software development tools and write some basic C/C++ programs and learn about make files. Most of the times installing new software from source is as simple as downloading the source, extracting it, and then running a number of tasks via the make file (e.g. configure, make, make install, etc).
Learning how to compile basic programs on the command line will make compiling other programs from source a little less opaque. The compiler produces object files from source code and links them to produce an executable file.
[ Install some software from source ]
http://www.thegeekstuff.com/2012/06/install-from-source/
https://www.linux.com/learn/intro-to-linux/2017/3/how-install-packages-source-linux
Sticking to simpler software with fewer dependencies (libraries and other software that your new software depends* upon to function properly) is recommended as you should encounter fewer errors if any.
You can always skip this stuff and use a package manager (command line or GUI) if that suits you more.
https://help.ubuntu.com/community/AptGet/Howto
https://www.lifewire.com/guide-to-synaptic-package-manager-2205707
[ Reading ]
If you can tolerate reading books and are willing to spend some money, these may be of use to you:
Linux Pocket Guide, 3rd Edition: Essential Commands (By: Daniel Barrett)
O'Reilly Media
http://shop.oreilly.com/product/0636920040927.do
Linux in a Nutshell, 6th Edition: A Desktop Quick Reference (By Stephen Figgins, Arnold Robbins, Ellen Siever, Robert Love)
O'Reilly Media
http://shop.oreilly.com/product/9780596154493.do
If the price is an issue, shop on amazon and search ebay for a used copy. For the pocket reference at least a lot of stuff is likely to very much the same even in a previous revision/edition.
https://www.amazon.com/Linux-Pocket-Guide-Essential-Commands/dp/1491927577/
^ currently ~$10 on Amazon
https://www.amazon.com/Linux-Nutshell-Desktop-Quick-Reference/dp/0596154488/
^ currently ~$28 on Amazon
I'd strongly recommend the pocket guide and the other reference may be of some use as well.
P.S.
If you aren't sure what Linux "distribution" you should install and use I'd strongly recommend a Debian derivative (a version or variant of Linux that's based on the Debian distribution) or another popular one so you will be able to benefit from common tutorials and the familiarity with it that others users have when you end up needing help.
Debian
Ubuntu
Linux Mint
You can search for other Linux distributions, debian-based and not, using the search tool at https://distrowatch.com/
Unix and Linux: Visual QuickStart Guide:
http://www.amazon.co.uk/Unix-Linux-Visual-QuickStart-Guide-ebook/dp/B003FJ64G2/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1427194462&amp;sr=1-1&amp;keywords=visual+quickstart+linux
Finish that one, then:
Linux in a Nutshell:
http://www.amazon.co.uk/gp/product/0596154488?*Version*=1&amp;*entries*=0
Can you program? If not, learn it! Start out with an easy to learn programming language like Pascal or Java and move on to the more complex C++ and eventually Assembler. Once you've understood the basics of programming (variables, loops, functions etc.) it is a matter of 2 weeks to learn the syntax of a new language.
Get familiar with Linux/UNIX. Learn how user rights work, how the run levels and shell scripts work. Read a lot of code and man pages. The definition of a hack is making a system do something it is not supposed to do. So you have to find a weak point by reverse engineering. Sometimes programmers make mistakes in their code, like a wrong variable type you can then exploit. Learn how a buffer overflow works http://en.wikipedia.org/wiki/Buffer_overflow Also I'd recommend these books: http://www.amazon.com/The-Art-Intrusion-Intruders-Deceivers/dp/0471782661 http://www.amazon.com/Linux-Nutshell-Ellen-Siever/dp/0596154488/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1345626761&amp;sr=1-1&amp;keywords=o%27reilly+linux http://www.amazon.com/Programming-Absolute-Beginner-Experience-Technology/dp/1598633740/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1345626801&amp;sr=1-1&amp;keywords=learn+programming Have fun and good luck!
Awesome, thanks. I'm going to pick up a couple books everything mentioned, any books in particular I should check out? I just ordered Linux in a Nutshell. Also, I'm curious, what would the pay be like for a position such as this? Assuming someone has all the skills listed above.
Sounds like your the Dev side of DevOps. I'm going to save you having to go buy a mac or run Linux as your base OS.
First go download Virtual Box
Next grab the latest version of Vagrant
Install both and sign up for a free account on Vagrant Cloud
Grab yourself cygwin/mysysgit or similar. You are going to need git eventually and you need an openssh client. Install one of those.
Start > Run > cmd
cd %userprofile% #This should drop you into your home directory.
mkdir $dirName
This can be anything you want. I call mine vProj.
vagrant init hashicorp/precise64
This is going to create a file called Vagrantfile in the directory you are in when you call the command. This file is what Vagrant is going to use to build a box.
vagrant up
Vagrant is now going to go out to the internet and download an Ubuntu 12.04 LTS 64 bit vagrant box and use vBox to provision it.
vagrant ssh
You are now in your very own Ubuntu 12.04 Virtual Box. :) You don't like it? vagrant destroy will get rid of it. vagrant up again will rebuild it. vagrant halt stops it. Their are plenty of base boxes on the vagrant cloud. Companies like puppet even put their own boxes online for devs to use. The beauty is that you didn't have to open vBox one time. You didn't have to play with the network settings or setup some weird bridge. Vagrant does it all for you. You can, of course, open vBox and run it as normal but really you don't need to.
As for books.
Linux in a Nutshell
Vagrant Up and Running