This page is OBSOLETE and stored for historical reasons.
Did you mean the latest: Linux Basics?
Historical Page - Linux Basics - 2009 spring - dat8tf063-10
After completing Linux Basics, you
- Can install a Linux workstation with software
- Can use command line interface
- Can install 1-2 most important servers
- Know the idea of Free software and the most important Free licenses
- Know how to keep learning Linux independently
Linux Basics tie8tf063-10 is lectured on Mondays 08:00 - 11:45 in classroom h5013. Course lasts for period 1 of 2009. The course is teached by Tero Karvinen (karte's timetable).
There is a pre-exam for Linux Basics on the first class.
Agenda
1 Pre-exam, Installation w4
2 Desktop Linux, Licenses w5
3 Command Prompt w6
4 Package Management and Administration w7
(feel free to learn Linux on your winter holiday w8)
5 Apache Web Server w9
6 OpenSSH Server and Client w10
7 Automation w11
8 Exam 08:00, class H5013 w12
Detailed Agenda
1 Installation, Distributions
- Install Ubuntu Dapper 6.06 LTS. Obtaining install medium. Demonstration. Trying it. Details. Dual boot installations, backing up. Differences to installing other operating systems.
2 Desktop
- Basics - all your users want to do this: Browsing the web, reading email trough web, writing documents, (printing).
- Common tasks: Browsing filesystem, publishing on the Web
3 Command Prompt
- Moving and looking around. Relative and Absolute Path.
- File Manipulation.
- SSH Remote Control
- Help
- History and Guessing
- Usefull commands
- See also: Command Line
4 Management and Administration
- Many ways to use the package manager: “Applications: Add applications”, “Administration: Synaptic”, “Update Manager”, ‘apt-get’
- Definition of the package manager. Probelms solved by the package manager.
- Priviledged use. Root doesn’t surf. ‘sudo’
- sudo apt-get update, sudo apt-get install inkscape, sudo apt-get upgrade, apt-cache search apache
- See also: Commands for Admin
5 Apache Web Server
- Installing Apache
- Enabling user homepages
- Why Apache
6 OpenSSH Server and Client
- Installing OpenSSH server
- Letting a friend log in
- Why OpenSSH (and how to choose software for remote access)
- Security, features, price, platforms
- Posix file permissions
- Create a folder where your friend can write
7 Automation
- Benefits of automation, scripting, programming environments
8 Summary
9 Exam
Assignments
Publish homework reports on your myy homepage in the URL given. For example, task h-1 will be published in http://myy.helia.fi/~a12345/linux/install.html , Where a12345 is your student number and 1 is the number of the task. Use normal html for publishing web pages. Each student does homework separatly and writes his own report. You can of course advice fellow students if they get stuck. Homeworks must be on the homepage one whole day before next class. Mention my course: “Based on Linux Basics course by Tero Karvinen http://www.iki.fi/karvinen“. If you want, you can use a Free license (like the license of Linux) by adding text: “This document can be copied under the GNU General Public License”.
Homeworks are official only after given on the class. But feel free to have a look what I’m initially planning.
Install
h-1: Do a and either a or b.
a) Burn Ubuntu on a CD and try that in a computer outside lab. (Also describe the computer in your report).
b) Free software in companies (essay). Include detailed examples: which company, when, which software, what business benefits...
(In the first excercice, just save your report in a digital form to myy or usb key. We’ll learn to publish web pages on the next class). http://myy.haaga-helia.fi/~a12345/linux/install.html
Desktop
Remember to publish h-1 if you have not done that already.
h-2: a) Install three applications using package manager. Describe their functionality. Include screenshots. Try to pick software that’s interesting or usefull to you.
b) Install language support for your language (If you are a native English speaker, pick another language). System: Administration: Language Support adds languages. Login screen bottom left corner Options let’s you choose language. How well does it work? Characters displaying correctly? Spellcheck working? Translations correct?
c) Create a spreadsheet with a chart. Foo
Command Line
h-3: a) Try all the commands learned, many times - learn them all by heart. For this a part, only document if something unexpected happens or if you want more information about some command. Do and report: b) Try 5 commands (other than those mentioned on the class or the Command Line document). Use ‘man -k foo’ to find new commands if needed c) write a story of a day with command line. Invent relevant tasks. Use commands learned and others.
http://myy.haaga-helia.fi/~a12345/linux/command-line.html
See also: Command Line.
Administration
h-4: a) Install three new pieces of software we have not tried before. Use command line interface for this. b) Give a short example of their use. c) Analyze a log of your choosing. Concentrate on some specific aspect or service. You can choose any log from /var/log/ you want, but most common are syslog, dmesg, Xorg.0.log and apache/*. You can use ‘grep’ to pick interesting lines. d) Optional hard: Install and use PGP enigmail Commands for Admin
Apache
h-5:
a) Mention three specific examples of client and server in client-server architechture. (eg. Firefox web browser is a client for Apache web server).
b) What does log look like when you php-page is run
Optional c) install and test mysql-server and phpmyadmin
d) optional challenging: write a php program to access mysql database
Remember the basics: command line
SSH
h-6: a) Change password b) Share files with ssh c) Securely copy files between computers with scp d) Run a graphical user interface program remotely trough ssh e) Optional extra: automate login with ssh client public key authentication f) Difficult optional extra: Use an http tunnel to HH www cache g**) Difficult optional extra: mount sshfs
Programming
h-7: a) Read the GNU Free Software Definition. Pay attention to four freedoms. Read Licenses and the Definition of Free Software (This a is just a reading task, no report needed).
b) Run “Hello world” in Java
c) Run “Hello world” in two other languages. (See also: Programming languages on Linux)
d) Write a shell script to display networking information of your computer (eg. ip-address, mask, name servers, default route, fully qualified domain name).
e) Make a shell script available to all users of the system (put in /usr/local/bin).
f) optional extra: install eclipse IDE and compile “Hello World” with that.
Good luck for preparing for the exam!