Upload
rogue-wave-software
View
133
Download
1
Embed Size (px)
Citation preview
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
1
Linux 101Bill Weinberg – Linux FoundationJustin Reock – Rogue Wave Software
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
2
Who’s speaking to me?
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
3
Bill Weinberg
• Sr. Director & Analyst, Open Source Strategy– Three+ decades experience in embedded/mobile
&enterprise IT– Founding team member at embedded OSS pioneer
MontaVista Software, former analyst at OSDL and principal at Linux Pundit
– Consulting in open source business and technology strategy, open source management and marketing, legacy migration, etc.
– Author of ~200 articles and white papers on open source, mobile/embedded, automotive, security and related topics
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
4
Justin Reock
• Sr. Director and Lead Architect of Rogue Wave OSS Support Team– FL/OSS enthusiast and evangelist– Early adopter of Linux– Created CentOS Developer Group at Rogue Wave– Puts Linux on everything, because why wouldn’t you?
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
5
A brief history of UNIX…
Bell Labs (AT&T)
BSD (Berkeley S/W Dist)
FreeBSDNetBSD
OpenBSD
GNU Project GNU Linux
SunOS
Next Step Mac OS X
SVR5IRIX
HP-UXSolaris
AIXSCO UNIX
1970 1980 1990 2000 2010
Android
iOS
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
6
A brief history of Linux
1990 1995 2000 2005 2010 2015
Hello everybody out there using minix – I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones
Tux becomes the Linux mascot
SCO Lawsuit (2003)
Invests $1B in Linux
Top 5 Linux Contributor
V2
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
7
Why develop on Linux?
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
8
Lots of reasons
• Powerful command line and tools• Many options for productivity improvement – scripting, etc.• Free as in free speech – modifiable, customizable, community-driven• Ease of prototyping• Accurate testing by easy recreation of production environments• Better web development with a natural environment for Apache or nginx• Hardened security options such as SELinux• Paving the way for containers and microservices• Automation through Puppet/Chef/Ansible• Remote administration through ssh• Scale to huge sizes without huge license costs• Linux makes you look cool!
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
9
It’s great for web development
• Linux is the home of the LAMP stack– Native support for major tools and frameworks
• Linux is a great web app prototyping environment– Easily install multiple servers / instances on one machine– Easy access to error logs for debugging
• Countless other web platforms – Drupal, WordPress, Tomcat . . .
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
10
Web dev tools
• Web application frameworks– Node.js, Rails, Zend
• Web servers & load balancers– Apache, NGINX, tinyHTTPd
• HTML editors and IDEs and syntax checkers and . . .
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
11
Any downsides?
• Too many ways to create “Linux apps”– A surfeit of APIs, frameworks, run-times and tools– No clear path to apps and interoperability (cp. Android)– Result is fragmented app space, ISV confusion and costs
• Orphan desktop– Tiny market share– Limited hosting of popular commercial apps– Mixed UX, difficult installation on some notebooks
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
12
How do I get started?
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
13
Pick your flavor
• Linux is just the kernel surrounded by a suite of supporting software
• It’s that supporting software that differentiates one flavor of Linux from another
• Pick a flavor that suits your level of expertise, the tools you’re likely to use, and the hardware environment on which you’ll deploy
• Main differences include package management and ecosystem, preinstalled software, and current Linux kernel version
• Pay attention to the community as well – quick releases, fast response to security vulnerabilities, development priorities
• Some distributions are highly focused, such as Kali Linux for Security Professionals
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
14
Something for everyone…
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
15
Porting and interoperability
• Cross platform development– Cross compiling with gcc and GNU tools– Cross platform frameworks and libraries
• Emulation and libraries– Full virtual machines – VirtualBox, QEMU et al– Libraries and platforms – Wine, Crossover, Cygwin,
Bash-on-Windows, Steam . . .• File systems
– Samba, NFS, FAT
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
16
Editors and IDEs on Linux
• Your favorite IDEs are already ported
• Eclipse and IntelliJ both run very well
• UX is nearly identical to other operating systems
• Editors such as Sublime Text and Atom are easy to install
• And classic command line editors such as vim, emacs, and nano let you edit powerfully from the shell
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
17
Your first install…
• Your Linux flavor’s community will provide installation media, usually in the form of a bootable ISO
• During the install, you’ll be able to configure system, software, and network options
• Many distros will allow you to choose a particular theme for your preinstalled software
• Such as in the next slide, where CentOS 7 allows you to choose between various environments
• From there, you can: – Use the flavor’s preferred package manager to install additional
software– Download packages for anything not provided by the package manager– Build from source!
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
18
Your first install…
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
19
Yes, Linux has GUI options too…
Gnome, inspired by Mac OS
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
20
Yes, Linux has GUI options too…
KDE, inspired by Windows
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
21
Embrace the shell
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
22
A quick overview of the filesystem• Everything is a file – if it’s not a file, it’s a process
Everything is a file
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
23
Go out and play!
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
24
Bare metal loves Linux…
• Hardware vendors bring-up on Linux, consumer hardware can be inconsistent
• Install it on your laptop or desktop computer (YMMV)
• Or on server hardware in your data center• GRand Unified Bootloader, or grub, is
supported by most modern flavors• Makes it easy to dual boot a Windows PC with
Linux• rEFind for Mac will let you dual boot Linux on
Mac hardware
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
25
Linux loves VMs…
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
26
And Linux loves containers…
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
27
LiveCDs
• Boot from a thumbdrive or CD directly into Linux without modifying your storage or boot sequence
• ISO files available for many flavors, get started quickly without installing anything!
• LinuxLive (Lili) USB Creator for Windows– Fully automated thumbdrive creation– Includes VirtualBox options as well as USB Boot– Maintain persistence wherever you run it from
• Easy way to get started right now!
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
28
Raspberry Pi
• A full system in a $35 box– 1.2ghz 64-bit quad-core ARMv8 CPU– 1GB RAM– 4 USB Ports– HDMI / Composite Video– MicroSD Storage– 802.11n WiFi / Wired Ethernet– Bluetooth 4.1 / BLE
• Multiple Linux builds available, easy install through NOOBS interface
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
29
Learn more
• Wealth of content online– Tutorials, MooCs, discussion groups, code exchanges– Online documentation
• Linux Foundation– Online training, MooCs, workshops, webinars– LinuxCon and collaboration summits– Certification and consulting– Legal training (CLE)
© 2016 Rogue Wave Software, Inc. All Rights Reserved.
30
Questions?