Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Linux fundamentals Training
1. Presentation By:
Steve Adedayo
A paper delivered during the Energy Information System (EIS)
departmental seminar, June 28, 2011 at computer training room,
ECN Abuja
2. Usage share of operating
systems for May 2010.
Windows XP (50.50%)
Windows Vista (21.42%)
Windows 7 (14.22%)
Mac OS X (5.80%)
Linux (1.24%)
iOS (iPhone) (0.87%)
Other (2.38%)
3. In order to understand the popularity of Linux, we need to travel back in
time, about 30 years ago...Imagine computers as big as houses, even
stadiums. While the sizes of those computers posed substantial problems,
there was one thing that made this even worse: every computer had a
different operating system.
Software was always customized to serve a specific purpose, and software
for one given system didn't run on another system.
Computers were expensive, the cost of IT was enormous
In 1969, a team of developers in the Bell Labs laboratories started working
on a solution for the software problem, to address these compatibility
issues. They developed a new operating system, which was
1. Simple and elegant.
2. Written in the C programming language instead of in assembly code.
3. Able to recycle code.
The Bell Labs’ developers named their project "UNIX.“
Unix was only available in large organizations and was running on Main
frames and mini computers
4. Linus studying Computer Science at the University of Helsinki
sought to have some sort of freely available academic version of
UNIX, and promptly started to code.
From the start, it was Linus' goal to have a free system that was
completely compliant with the original UNIX.
All features of Unix were added in a few years and many hardware
drivers were developed.
Linux is today in use on the desktop, messaging and collaboration,
internet, multimedia etc
Modern Linux runs on all major platforms
5. * Linux is free:
* Linux is portable to any hardware platform
* Linux was made to keep on running
* Linux is secure and versatile
* Linux is scalable
* The Linux OS and quite some Linux applications have very short
debug-times
6. Everything that has advantages must have a disadvantage or 2. For
Linux, well:
* Too many distributions
* ”Hard to Learn”
* ”Open Source”
7. + Installation
+ Connecting to the system
+ Disconnecting from the system
+ Hardware configuration
+ Managing Devices
+ The Linux filesystem
+ Work effectively on the Unix Command Line
+ Basic File Management
+ Process Management
+ Text and graphic mode
+ Process Text Streams Using Text-Processing Filters
+ Software Installation
+ Advanced Text Manipulation
+ Using vi
+ The X environment
8. In this topic we will cover:
. The installation CD – The generic structure of the
CDROM
• Local installations
• Network installation
• Rescue disk – If a Linux system is corrupt, then it is
possible to boot the computer using a rescue disk.
• Partitioning
• Easy Dual booting
9. Any Linux distribution has a generic structure of the
CDROM containing pre-compiled packages.
Some associated names for the main distributions are:
debian: dist
mandrake: Mandrake
redhat: RedHat
suse: suse
10. This is the easiest and most common type of
installation and involves the use of the following:
CD-ROM installation – This involves changing the
settings in the BIOS for the computer to boot from
CD. The installation is menu driven and allows for
advanced and basic configuration.
Floppy installation – For this installation you need to
create a floppy installation image. This can be an
alternative if the CD is not bootable or a non-iso
image was downloaded.
11. For a RedHat installation, this is only a specialized
floppy installation. A bootable floppy is made using
the bootnet.img image.
The first part of installation is text based and allows
for the user to set up network parameters needed.
The rest is done via FTP, NFS, or HTTP.
- When an FTP session is opened, data flow is
conducted and both ports for sending and receiving
are managed by the ftp daemon.
-NFS is a type of remote server.
-HTTP is a type of web server.
12. The rescue disk is a device that makes it possible to
boot if the initial Linux system is corrupt. It is
basically a small version of Linux that will mount a
minimal virtual filesystem into memory.
13. Linux supports many types of disk devices and formats. Any SCSI or IDE
hard disk will work with Linux as with Floppy disks,CD-ROMs,CD-R,Zip and
Jaz disks
Most commonly found hard disks on PCs are IDE (Integrated Device
Electronics) drives. They feature a relatively simple system interface.
IDE disks offer reasonable performance at a low price point highly desirable
for consumer products. A single IDE is capable of attaching 2 disk drives to a
system (Master and Slave).
Most PCs have a primary and a secondary IDE interface (4 interfaces can be
supported)
On Each disk there may be between 1 and 16 partitions. A partition is a
container on the disk where a file system/other partitions can be held
In Linux each partition is assigned an integer number which is appended to
the disk drive name.
E.G The first partition on an IDE device /dev/hda is /dev/hda1
There are 3 types of partitions found on a PC:
Primary partitions
Extended partitions
Logical Partitions
14. On the other hand SCSI offers excellent performance, lower CPU
utilization and a much more flexible connection scheme capable of
handling 15 devices on a single bus allowing SCSI systems to
grow as space requirements increase without major hardware
reconfiguration. Thus this implies higher costs as compared to IDE
devices.
Usually IDE is for PCs and SCSI is for servers
15. This partition must contain a file system. At least one primary
partition must exist, and unto four can exist on single physical
disk.
They are numbered as: /dev/hda1,/dev/hda2,/dev/hda3,/dev/hda4
At least one of the primary partitions should be marked as active,
in which case the PC BIOS will be able to select it for boot.
16. It is a variant of the primary partition but cannot contain a file
system, instead it contains a logical partition.
Only one extended partition may exist on a physical disk and if it
exists it takes one of the possible spots for primary partitions
leaving room for only 3 partitions.
17. They exist within the extended partition. 1-12 logical partitions may
be created. Logical partitions are numbered 5-16.
A system with one primary partition, an extended partition and four
logical partitions are numbered as follows:
/dev/hda1 (Primary)
/dev/hda2 (Extended)
/dev/hda5 (Logical)
/dev/hda6 (Logical)
/dev/hda7 (Logical)
/dev/hda8 (Logical)
18. Linux has 2 basic options of partitioning disk drives.
The fdisk command is a text based program that is
easy to use and exists on every Linux distribution.
Fdisk: Manipulate or display the partition table for
device using a command driven interactive text
interface.
19. In this topic you will learn:
Memory support
Resource Allocation – This is done to allow peripherals and
devices on the PC to communicate directly with system
resources.
USB Support – Its architecture and classes of devices.
SCSI Devices
Network Cards
Modems and printers
20. The system’s RAM is always first detected by the BIOS. All
types of RAM (EDO, DRAM, and SDRAM) are recognized
by the Linux kernel. If problems are encountered with old
H/W, that is , when the BIOS cannot detect the RAM, then
parameters must be passed to the kernel at boot time.
21. The primary purpose of resource allocation is to allow
peripheral devices and devices on the PC to communicate
directly with the system’s resources. These resources are
Interrupt Request Lines (IRQ), Input/Output addresses and
Direct Memory Access Channels (DMA).
22. The Universal Serial Bus (USB) is a communication
architecture designed to connect to a PC. Used to
connect devices like:
Display Devices
Communication devices
Audio Devices
Mass Storage Devices
Human Interface Devices (HID)
23. Small Computer System Interface (SCSI) is an interface for
streaming devices and block storage devices such as tape
drives, hard disks, CD-ROMS and other peripheral
instruments.
The SCSI defines a bus to which multiple devices are
connected. One of the devices in the chain is the SCSI
controller, which is the host interface to the other connected
SCSI devices.
SCSI types include: SCSI-1, SCSI-2, Wide SCSI, Fast SCSI,
Fast Wide SCSI, Ultra SCSI, Ultra Wide SCSI(SCSI-3),
Ultra2, Wide Ultra2.
24. This Network Interface Card (NIC) is used to make the
connection between the computer and the network. NICS
are configured using hardware jumpers, nonvolatile memory
and automated means.
25. -A modem is device that modulates a digital signal into an
analog signal for transmitting information via telephone
lines.
-Like NICs and SCSI adapters, modems have a few special
considerations during installation.
-Modems also add digital compression and error correction
capabilities to increase speed and reliability.
-Most Linux distributions have hardware browser tools
(GUIs), which can detect modems, but also setserial can
be used to scan the devices.
26. There are commands which must be run in order to
successfully install a printer. The software is built using
make, followed by make install.
The printing process in Linux, is Governed by the “Printer
capability” file /etc/printcap. This text file defines all of the
system’s available print queues and their characteristics.
Use printtool and cupsd
27. In this topic we cover the following:
Disks and partitions
Partitioning tools – What is needed in which installation
process.
Bootloaders – All about LILO the Linux bootloader
Quotas
28. On a running Linux system, disks are represented by
entries in the /dev directory. The kernel communicates with
devices using a unique major/minor pair combination. All
major numbers are listed in /proc/devices. For example the
first IDE controller‘s major number is 3:
Block devices (1 ramdisk, 2 fd, 3 ide0)
Hard disk descriptors in /dev begin with hd (IDE) or sd
(SCSI), a SCSI tape would be st, and so on. Since a system
can have more than one block device, an additional letter is
added to the descriptor to indicate which device is
considered.
29.
30. Disks can further be partitioned. To keep track of
the partitions a number is added at the end of
each physical device.
Table 2 Partitions
hda1 First partition on first hard disk
hda2 Second partition on first hard disk
sdc3 Third partition on third SCSI disk
IDE type disks allow 4 primary partitions, one of which can be
extended. The extended partition can further be divided into
logical partitions. There can be a maximum of 64 partitions on an
IDE disk and 16 on a SCSI disk.
31. These tools are grouped into:
a) Before installation tools – This involves the use of
PartitionMagic or FIPS. PartitioningMagic is much more
versatile and can handle most common UNIX formats as
well.
b) During installation – In this stage, the Linux partition is
partitioned again.
32. While installing Linux you will have the choice of creating new
partitions and associating each partition to a mount point.
For advanced users this is done in two steps:
Use the fdisk tool to create new partitions
Associate a mount point to each partition
For intermediate users most distributions include a user friendly
tool that does both these steps at once:
diskdrake (Mandrake)
DiskDruid (RedHat)
Cfdisk (Debian)
33. Upon power on, the CPU begins processing instructions from the
Read Only Memory usually the basic input output system (BIOS)
Instructions in BIOS perform basic initialization chores to discover
and configure peripheral hardware and begins looking in known
locations for the operating system (or the operating system loader).
When the OS is launched it begins an initialization sequence of its
own.
The MBR occupies the first sector of the disk (512 bytes) and
contains the partition tables together with a bootloader. At boot time
the bootloader reads the partition tables looking for a partition
marked “active” and loads the first sector of this partion.
2 Boot loaders in Linux ( LILO & Grub)
34. There are roughly 3 parts involved:
1. LILO: This is the loader itself. LILO is installed on the
MBR and loads the second stage bootloader,
generally situated in /boot/boot.b.
2. /etc/lilo.conf
3. /sbin/lilo: This binary reads it’s configuration file
/etc/lilo.conf and installs the LILO bootloader.
/sbin/lilo should be run every time a change is
made to /etc/lilo.conf
35. boot* where LILO should be installed (/dev/hda is the MBR)
install which second stage to install (boot.b is the default)
prompt give the user a chance to choose an OS to boot
default name of the image that will be booted by default
timeout used with prompt, causes LILO to pause (units are 1/10 of a sec)
image* path to the kernel to boot (one can use ‘other’ to chain load)
label* name of the image. This is the name a user can type at the boot prompt
root* the name of the disk device which contains the root filesystem /
read-only* mount the root filesystem read-only for fsck to work properly
append give kernel parameters for modules that are statically compiled.
linear/lba32 these options are mutually exclusive. Both ask LILO to read the disk
using
Linear Block Addressing. linear is typically used for very large disks. Lba32 is used to
allow boot time access to data beyond the first 1024 cylinders.
36. GRUB – Grand Unified Bootloader
GRUB is also installed on the MBR. You can either alter this MBR
with the /sbin/grub shell or use a configuration file called
/boot/grub/grub.conf which will be read by /sbin/grub-install