Secure Digital Life #43
Recorded on November 28, 2017 at G-Unit Studios in Rhode Island!
What the Fork? What is Linux anyway?
In the beginning...There was Bell Labs.
- Written in C and Assembler in the 1970's
- Unix organization
- A kernel which contains the Master Control Program (MCP) which runs all the code assigned to the system. The kernel handles the File System and all the background tasks.
- Unix and it's earlier incarnation (unics) was released to academics and subsequently was forked into:
- BSD and System V
Then HP-UX, Solaris(sun), AIX(HP), and Xenix (Microsoft).
- The idea of open system standards
- The base code is available and subsequently "forks" can be developed.
- The open standard also means that various forks may become proprietary in some way.
In 1983, the GNU project (Gnu not Unix) emerged to provide a "free" Unix like system.
In 1991, Linus Torvalds produced a kernel called Linux whicch was released as free software under GNU license. This kernel could run a lot of the GNU licensed software (gcc, et. al.)
BSD also remains viable in the form of NETBSD and FREBSD if you want unix variants.
- Many linux variants exist but they come from trees and forks of those main trees. These are called distros.
- Massive wiki list of linux distros
- RedHat: This is the commercial side of Linus' business
- Fedora: The free version of this tree
- Debian: Huge tree of distros used to be most popular distro (sarge and co).
- SlackWare: Another tree
- Things about Linux
- Was much smaller than windows, OS2, etc.
- Repositories of open source software
- Live CDs
- Cli (command line interface)
- Servers vs. desktops
- Ability to modify the kernel (recompile)
- Ability to fork? (read your license)
- Free? (read your license)
Why should you learn to use it?
- Did I say "free"?
- It is the most common server OS in some variant
- CLI style systems are common in SEC (think Cisco)
- Did I say "android"?
- How can I learn to use it?
- Start with some easy distros like Ubuntu
- You can run these on virtual box (free)
- Try using the command line to manage since everything being done can be done at the cli
- Try setting up some servers (apache) on virtual box.
- Can you build out a firewall using linux?
- How about a proxy server?
- All these things can be emulated in virtual box so you can practice.
Consider; Cybrary, Udemy, ITPROTV all have linux courses available.