Difference between revisions of "Installing linux"

From Gender and Tech Resources

m (Verify downloads)
m
Line 18: Line 18:
  
 
==== Linux does not recognize my hardware ====
 
==== Linux does not recognize my hardware ====
This can happen if your machine is younger than 6 months. Hardware like a sound card or ethernet card, etc. have two essential pieces of software that make them function. The first is a working driver, software that lets your system talk to the hardware. The second is firmware, usually a small piece of code uploaded directly to the device and maintained by the company that develops the hardware device. You can think of the firmware as a way of programming the hardware inside the device. It is a black box, and because of that treated like hardware; there’s no accompanying source code that is freely distributed with it.  
+
This can happen if your machine is younger than 6 months. Hardware like a sound card or ethernet card, etc. have two essential pieces of software that make them function. The first is a working driver, software that lets your system talk to the hardware. The second is firmware, usually a small piece of code uploaded directly to the device and maintained by the company that develops the hardware device. You can think of the firmware as a way of programming the hardware inside the device. It is a black box, and because of that treated like hardware; there’s no accompanying source code that is freely distributed with it.
  
In M$ worlds, firmware is usually a part of the driver you install, not seen by the user. In linux, firmware may be distributed from a number of sources. Some firmware comes from the Linux kernel sources. Others that have redistribution licenses come from upstream. Some firmware unfortunately does not have licenses allowing free redistribution.
+
In M$ worlds, firmware is usually a part of the driver you install, not seen by the user.  
  
Firmware can come from one of the following sources:
+
In linux, firmware may be distributed from a number of sources. Some firmware comes from the Linux kernel sources. Others that have redistribution licenses come from upstream. Some firmware unfortunately does not have licenses allowing free redistribution. See Getting a device to work
* The linux-image package (containing the linux kernel and licensed firmware, <em>installed by default</em>)
+
* The linux-firmware package (containing other licensed firmware, <em>installed by default</em>)
+
* The linux-firmware-nonfree package in multiverse (containing firmware that are missing redistribution licenses, <em>not installed by default</em>)
+
* A separate driver package (<em>not installed by default</em>)
+
* Elsewhere (<em>not installed by default</em>, driver CD, email attachment, website)
+
  
 
==== Linux is too complicated to use ====
 
==== Linux is too complicated to use ====
Line 173: Line 168:
  
 
== After install ==
 
== After install ==
Getting a network card to work
 
  
Installing applications
+
=== Getting a device to work ===
 +
Firmware can come from one of the following sources:
 +
* The linux-image package (containing the linux kernel and licensed firmware, <em>installed by default</em>)
 +
* The linux-firmware package (containing other licensed firmware, <em>installed by default</em>)
 +
* The linux-firmware-nonfree package in multiverse (containing firmware that are missing redistribution licenses, <em>not installed by default</em>)
 +
* A separate driver package (<em>not installed by default</em>)
 +
* Elsewhere (<em>not installed by default</em>, driver CD, email attachment, website)
 +
 
 +
=== Installing applications ===
  
Moving over applications
+
=== Moving applications between *nixes ===
  
 
== Related ==
 
== Related ==

Revision as of 07:02, 19 June 2015

M$ wants to keep you locked in to Windows so that it can take your money, your personal data, and your user freedom. They don’t want you to know that you have a choice of better operating systems; operating systems that respect your freedom. There are tons of free "as in freedom" software operating systems that you can download and install at no cost.

And when they’re improved, you can choose whether or not you want to upgrade, without a corporation breathing down your neck. It is time to upgrade your computer, but not to Windows 8.

Ohgurl.jpg

Shopping for a linux distro

Which Linux will fit me?

There are many distributions. Ubuntu and mint are considered the easiest for new users who want to get productive in linux as soon as possible without having to master all of its complexities immediately. And more consideration(s) may apply.

Myths?

Linux is hard to install

Non-sense. New users can get started pretty quickly with USB or CD/DVD systems that allow for trying out a particular linux first. Installing linux is pretty easy these days, but getting everything to work exactly the way you like it can take a little more work. The install itself is nothing more than a download, a few verifications, mouse clicks and deciding basic options like timezone, language and username. Even though all are of laughable simplicity in their use, each Linux installation has its own setup utility, different from all the others, or nearly the same like in the case of mint and ubuntu.

This makes it very difficult if not impossible to write a step by step Linux installation manual that works for all. This page contains installation guides for mint, ubuntu and debian below.

Linux does not recognize my hardware

This can happen if your machine is younger than 6 months. Hardware like a sound card or ethernet card, etc. have two essential pieces of software that make them function. The first is a working driver, software that lets your system talk to the hardware. The second is firmware, usually a small piece of code uploaded directly to the device and maintained by the company that develops the hardware device. You can think of the firmware as a way of programming the hardware inside the device. It is a black box, and because of that treated like hardware; there’s no accompanying source code that is freely distributed with it.

In M$ worlds, firmware is usually a part of the driver you install, not seen by the user.

In linux, firmware may be distributed from a number of sources. Some firmware comes from the Linux kernel sources. Others that have redistribution licenses come from upstream. Some firmware unfortunately does not have licenses allowing free redistribution. See Getting a device to work

Linux is too complicated to use

Ehh. Myth. It has a graphical interface with a mouse and windows. It has an auto-updater to keep things current. It has software add/remove capabilities that allow you to install programs with a couple of mouse clicks. It even has many apps found in Windows and Mac OS X like Firefox, Thunderbird, Pidgin, Audacity, …

There are no applications available

Non-sense. If you do not have a "stripped linux", after install you have all you need for usual use (if you pick the right distro for you) and if it isn't there already, thousands of additional applications available for free: Nearly every distro has a centralized location where you can search for, add, or remove software (using a point and click interface or the command line). With package management systems such as Synaptic, you can open up one tool, search for an application (or group of applications), and install without having to do any web searching (or purchasing).

It is true that windows used to be the better platform for games, but recently Steam has arrived in linux. And some windows games can be run on linux using wine (but not all). The game you wish to play may actually be available for linux now.

Reasons for using linux as an activist

Security

I don’t think any operating system is ever “secure”. A particular configuration of an operating system has a particular degree of resistance to particular types of attacks. Linux and M$ products are not easy to compare but some general statements are regularly made:

  • Windows is more difficult to "strip down" than Linux systems.
  • Viruses are less of a threat on linux. This also applies to spyware, malware, etc.

And some theories posed:

  • Theory 1: Because linux is not owned by a corporation, it can explore the security goal more fully than a corporation can. Businesses must make money; while free software groups simply don’t have this restriction. Facts and Fallacies of Software Engineering (2003) [1] and When Free Software Isn’t Better (2010) [2] kindly dispelled this theory.
  • Theory 2: Because the linux kernel code, and many of its drivers and utilities are free, it has likely been reviewed and fixed frequently for coding mistakes that can lead to remote vulnerabilities that a hacker can exploit. This then prevents backdoors.

The shellshock vulnerability will still be found in unpatched systems for the foreseeable future—though the odds of it directly impacting our local machines appear slim if using standard security precautions. If scary or seemingly too complex get a local geek to help you with that or hit the respective forums.

Update ability

Linux is in a constant state of development and improvement by developers donating their time and skills to the various projects in return for their own enjoyment and learning. The licensing allows anyone to add features they need. The usual route for that is: Request feature; not satisfied (takes too long or is rejected?); Fork and go [3].

Support

Support for linux is amazing. You can have an issue with something, check the documentation and the forums, and if nothing found, send out an e-mail to a mailing list or post on a forum, and within 10 minutes be flooded with suggestions. Or it can take hours or days. Or may never come. Still, generally speaking, most problems with Linux have been encountered and are documented. Chances are you’ll find solutions fairly quickly.

Self-improvement

If not satisfied with going through life with blinders on and living the technical "status-quo", linux is an excellent choice. Linux provides an environment for learning new skills and gaining deeper insights into how computers work. It also provides a platform to develop more scripts and tools. It’s ways and communities tick most "autonomy" aspects.

With Linux you have a room where floor and ceiling can be raised or lowered as high or low as you want them. With Windows, neither move. You can’t go further than M$ has deemed it necessary for you to go.

Low cost

The cost advantage of linux is huge, especially in resource constrained environments. You get the complete OS, thousands of applications AND support for the grand total price of … <drumroll> … zilch! And we’re not talking about the crumbs that fell off a (big) business plate, not a watered down whiskey, not a feature deprived OS … ye get a full-blown, complete, freakishly configurable and flexible intuitive ready OS, for free. And it runs on old computers.

Linux expands the life of your hardware by reducing overhead and needing less system resources, which is why it runs fine on older machines. And you can do the tests yourself of course. [4][5]

Installation media

Unetbootin

DVD

Goodbye microsoft

Debian offers a windows program that will download and set up a 32 bit debian installer. You then only need to reboot the computer and choose between normal windows boot or booting the installation program. You can find it here http://ftp.debian.org/debian/tools/win32-loader/stable/ and here http://goodbye-microsoft.com/.

Download distro

Download mint, ubuntu or debian for your preferred medium from http://www.linuxmint.com/download.php, http://www.ubuntu.com/download or https://www.debian.org/releases/jessie/debian-installer/.

If you are confused about whether your kernel is 32 or 64 bits, in linux do:

$ uname -m

x86_64 means a 64-bit kernel and i686 means a 32-bit kernel. In windows try this https://support.microsoft.com/en-us/kb/827218

Note: you can install a 32-bit kernel on a 64-bit CPU. The fundamental difference between 32 and 64 bit systems is the size of memory addresses. In theory, a 32 bit system can not work with more than 4 GB of RAM (232 bytes). In practice, it is possible to work around this by using the 686-pae kernel, so long as the processor handles the PAE (Physical Address Extension). There is a performance price to pay for this, so if you are installing on a server with a huge amount of RAM, use the 64 bit kernel.

To learn more about your CPU in linux do:

$ cat /proc/cpuinfo

For windows you can type dxdiag in the run box.

Verify downloads

Verify all dowloaded iso's. You can verify for example, the md5 or sha256 checksum of the first downloaded debian .iso file in linux with:

$ md5sum debian-8.1.0-amd64-DVD-1.iso

respectively:

$ sha256sum debian-8.1.0-amd64-DVD-1.iso

and compare the output with key listed for debian-8.1.0-amd64-DVD-1.iso in respectively http://cdimage.debian.org/debian-cd/8.1.0/amd64/iso-dvd/MD5SUMS and http://cdimage.debian.org/debian-cd/8.1.0/amd64/iso-dvd/SHA256SUMS Other checksums are also given.

Windows does not come with md5sum. There are command line utilities (md5sum.exe) and the version available from Cygwin is probably easiest to install and update. Once installed, Cygwin's md5sum behaves exactly as the md5sum described for linux above.

Burn CD/DVD

Make an image on USB

Boot box from media

Boot from the USB, CD- or DVD-ROM:

Mint

Ubuntu

Debian with MATE

In the Isolinux bootloader menu choose install:
Install.png
Choose language (this sets language for both the installation process as well as for the to-be-installed linux):
Select-a-language.png
Select location. It doesn't have to be where you actually are. And you can change it later. It sets what repositories you use, but even that can be changed later.
Select-location.png

Locales are used by glibc and other "locale-aware" programs or libraries for rendering text, correctly displaying regional monetary values, time and date formats, alphabetic idiosyncrasies, and other locale-specific standards:

Configure-locales.png
The "American English" keyboard corresponds to the QWERTY layout, otherwise pick yours:
Configure-keyboard.png
Until now the installation steps were completely contained in the boot image included on the CD, a file of limited size and loaded into memory by the BIOS when booting from the removable medium. What follows are a few automatic windows showing progress in:
  • detecting hardware: detects hardware and tries to identify the drive and loads the modules of the various hardware components detected, and then "mounts" the drive to read it
  • loading additional components: loads all the files necessary to continue including additional drivers for remaining hardware (especially the network card), as well as all the components of the installation program
  • detecting network hardware: tries to identify the network card and load the associated firmware. If automatic detection fails, you can manually select the firmware to load, and you can do it later. If need be you can use a USB-network-adapter. If doing a netinst installation, this must be made to work now, because the debian packages must be loaded from the network.

Next the installer attempts an automatic network configuration by DHCP (for IPv4) and by IPv6 network discovery. If this fails, the installer provides choices: you can try again, attempt DHCP configuration by declaring the name of the machine (rumpelstiltskin jumps to mind), or set up a static network configuration. This requires having an IP address, a subnet mask, an IP address for a potential gateway, a machine name, and a domain name to enter.

Configure-network.png
Configure-network2.png

Make the root password long (8 characters or more) and hard to guess. All machines connected to the internet are regularly targeted by automated connection attempts with the most obvious passwords and sometimes even with dictionary attacks. Avoid using names of partners, pets, children, parents, friends, dates of birth, etc. Use password generators.

Set-up-users-and-passwords.png

Debian also imposes the creation of a standard user account on you so that you do not get into the bad habit of working as root. The precautionary principle applies.

Set-up-user.png

If the network is available, the system's internal clock is updated (in a one-shot way) from an NTP server. This way the timestamps on logs will be correct from the first boot.

Partitioning is for dividing the available space on the hard drives. This step also includes choosing the filesystems to be used. All of these decisions will have an influence on performance, data security, and the administration of a server. For a standard install on a PC as newbie, choose an easy way:

Partition-disk.png
Partition-disk2.png
Partition-disk3.png
Partition-disk4.png
Partition-disk5.png
Partition-disk6.png

The next steps do not require any user interaction. The "base system" packages, dpkg and apt for managing packages and utilities to boot the system, are installed.

In order to be able to install additional software, apt needs to be configured and told where to find debian packages. You are asked if it must use a network source for packages, or if it should only look for packages on the removable media you are installing from.

Dual boot

You can have both windows and linux on your machine, each installed on a separate disk or partition, and choose which to start when booting. This configuration is called "dual boot", and the debian installation system can set it up during the hard drive partitioning stage of installation and setting up the bootloader.

Installing a stripped debian (running *only* what you need)

At the first screen running the installer choose "Advanced Options" and then "expert" mode. Install now is "verbose" and details all possible options in the process of installation and allows for navigation between the various steps without them happening automatically in sequence.

Stealth install

Making your own images

Upgrading

After install

Getting a device to work

Firmware can come from one of the following sources:

  • The linux-image package (containing the linux kernel and licensed firmware, installed by default)
  • The linux-firmware package (containing other licensed firmware, installed by default)
  • The linux-firmware-nonfree package in multiverse (containing firmware that are missing redistribution licenses, not installed by default)
  • A separate driver package (not installed by default)
  • Elsewhere (not installed by default, driver CD, email attachment, website)

Installing applications

Moving applications between *nixes

Related

References

  1. Facts and Fallacies of Software Engineering (2003) http://books.google.com/books?id=3Ntz-UJzZN0C&pg=PA174#v=onepage&f=false
  2. When Free Software Isn't Better http://mako.cc/writing/hill-when_free_software_isnt_better.html
  3. Don't panic and keep forking Debian™! :^) https://devuan.org/newsletter_22dec.html
  4. Phoronix Test Suite http://phoronix-test-suite.com/
  5. Phoronix: Operating Systems http://www.phoronix.com/scan.php?page=category&item=Operating%20Systems