Operating Systems, Unix / Mac OS X

17  Download (0)

Full text

(1)

Operating Systems, Unix / Mac OS X

Orsys, with 30 years of experience, is providing high quality, independant State of the Art seminars and hands-on courses corresponding to the needs of IT professionals. Orsys proposes a set of courses on the most important topics in IT technologies and management.

Hands-on courses

Unix/Linux Essentials, Hands-on.... Best ( p2 ) Mastering Unix.... Best ( p4 )

Writing Shell Scripts.... Best ( p7 ) Linux, Mastering Tools.... ( p8 )

Unix/Linux Exploit and Deployment.... Best ( p9 ) Advanced Unix Features.... ( p11 )

AIX Shell Programming.... ( p12 )

(2)

Hands-on course , 2 day(s)

Ref : BUX

Pre-requisites

The students should have a general knowledge of computers and systems.

Next sessions

Brussels nov. 19 2015, mar. 17 2016 jun. 30 2016, sep. 29 2016 Geneve nov. 19 2015, mar. 17 2016 jun. 30 2016, sep. 29 2016 Luxembourg nov. 19 2015, mar. 17 2016 jun. 30 2016, sep. 29 2016

Unix/Linux Essentials, Hands-on

Best

> Operating Systems > Unix / Mac OS X

OBJECTIVES

This training is clearly lab-oriented. It presents a chosen selection of essential Unix knowledge that will enable you to use a Unix system on its everyday tasks.

1) Hands-on the system

2) Managing files, using text editors 3) Understanding and using shell

4) Using and building tools, communicating

5) Describing multitasking

6) Reading and modifying a shell script 7) Using Unix on a network

Workshop

Students will be using networked workstations under Unix (AIX, Solaris, HP/UX and Linux) to perform the various labs.

1) Hands-on the system

- Different Unix versions (AIX, HP_UX, Solaris...). - Login and logout.

- Structure of a Unix command. - Using and customizing the desktop. - Unix directories and file systems. - Users and groups, file permissions.

- Essential commands to manage files and directories. - How to use the on-line documentation.

2) Managing files, using text editors

- Essential commands to manage files. - Physical and symbolic links.

- Additional commands to manage files and directories. - Displaying disk usage.

- The vi editor.

3) Understanding and using shell

- Filtering. - Redirecting. - Executing programs. - Environment and processes. - Expanding commands. - Writing shell-scripts. - User environment ". profile". - Additional commands.

4) Using and building tools, communicating

- Using regular expressions.

- Example : grep and the regular expressions. - Essential tools.

- Using pipes.

- Using pipes to build higher level tools. - Additional tools.

- Mail.

5) Describing multitasking

- Background execution.

- Tools to manage background and foreground processes. - Sending signals and killing processes.

- Answering signals.

6) Reading and modifying a shell script

- Shell variables.

- Language instructions (if, for, while, ...). - The test command.

(3)

- Interactive instructions in shell.

7) Using Unix on a network

- Remote connection (telnet, rlogin). - Transfering files (ftp, rcp). - Remote program execution (rsh).

- Remote program execution in a secure environment (ssh). - Understanding security issues.

(4)

Hands-on course , 5 day(s)

Ref : MUX

Pre-requisites

Learners should have general knowledge in computing.

Next sessions

Brussels dec. 14 2015, jan. 18 2016 apr. 11 2016, jul. 4 2016 sep. 19 2016 Geneve dec. 14 2015, jan. 18 2016 apr. 11 2016, jul. 4 2016 sep. 19 2016 Luxembourg dec. 14 2015, jan. 18 2016 apr. 11 2016, jul. 4 2016 sep. 19 2016

Mastering Unix

Best

> Operating Systems > Unix / Mac OS X

OBJECTIVES

This intensive training has several goals: to allow you to reach a real knowledge of the system through pedagogical paths, both theorical and using various labs on different versions of Unix (AIX, HP-UX, Solaris and Linux), to give you synthetic information useful for an everyday use of the system, and present a set of selected examples that show the system capabilities, and to underline some differences between versions of Unix.

1) Basic concepts and functions 2) Executing commands 3) Tools and shell programming

4) Internals and communication 5) Operating the system 6) Usual Unix server operations

1) Basic concepts and functions

Hands-on the system

- Login, interaction and special characters. - Graphical User Interfaces (CDE-GNOME, KDE). - Files and directories, mount.

Exploring the system

- Directory tree and path. - Managing file access.

- File access on files and directory. - Using the online manual pages.

Managing files

- Implementation.

- Physical and symbolic links. - Mapping of files.

- Special files. - Unix directory tree.

Text editors and regular expressions

- Using regular expressions. - Text editors (ed, sed, vi). - Using vi.

Various Unix versions (AIX, HP-UX, Solaris, Linux)

- Why do we have various Unix versions ? - Compatibility.

- Which version for which application ?

2) Executing commands

Executing programs

- Shell execution.

- Processes and environment.

Basic shell features

- Variables and special characters. - Redirecting commands.

- Dynamic generation of commands.

Shell scripts

- How shell-scripts are working ? - Shell scripts execution mode.

Additional information on shells (ksh, bash, csh)

- Functions. - Startup files.

- Additional features of bash and ksh.

3) Tools and shell programming

Toolbox

- Splitting, comparing and analyzing files. - Tools for operators.

(5)

Pipes

- Concepts and use.

- Building new tools with pipes.

Shell programming

- Variables. - Operators. - Loop instructions. - Conditional instructions. - Interactive programs examples. - Shell tips and tricks.

4) Internals and communication

Internals and file management

- Tables and system calls. - Link with processes management. - Interface summary and case study.

Managing processes

- Multitasking and associated calls. - Signals.

- Processes and commands relationships. - Threads. Inter-processes communication - Pipes. - Named pipes. - IPCs. - Sockets. - RPC.

Local and remote communication. TCP/IP

- Local communication.

- Unix on a local area network (TCP/IP). - ARPA commands (telnet, ftp). - R-commands (rcp, rsh, rlogin). - Secured commands (ssh, scp).

- Informational commands (rup, rusers, ...). - Sharing files with NFS.

- Name services (hosts, NIS et DNS).

- Introduction to administration (ping, netstat, ifconfig).

5) Operating the system

Backups and restore

- Managing tapes.

- Backup and restore commands.

Scheduling tasks

- Using crontab. - The at command.

Operating the filesystem

- Standard directory tree.

- Comparing AIX, HP-UX, Solaris and Linux. - Basic operating tasks.

Booting the system

- Boot and shutdown. Run-levels management.

Managing users

- Concepts and essential files. - User creation.

Security features

- Filesystems, network, tools.

Freeware and open source tools

- Downloading and using freeware and open source tools. - Overview of useful tools.

6) Usual Unix server operations

Oracle and Unix

(6)

- Oracle files and processes.

Unix web server features

- Essential setup and session example.

Working with Windows

(7)

Hands-on course , 3 day(s) Ref : SHL

Participants

UNIX/Linux administrator performing system

administration duties including installation, maintenance and integration or developer of text processing software.

Pre-requisites

Basic UNIX/Linux skills. Knowledge of any programming language is added advantage.

Next sessions

Brussels nov. 16 2015, mar. 14 2016 jun. 27 2016 Geneve nov. 16 2015, mar. 14 2016 jun. 27 2016 Luxembourg nov. 16 2015, mar. 14 2016 jun. 27 2016

Writing Shell Scripts

Best

> Operating Systems > Unix / Mac OS X

OBJECTIVES

The UNIX Shell is both an interactive interface to the UNIX system and a powerful scripting language. This training session will present detailed functionalities to help you understanding shell programming. You will acquire Shell programming skills in concrete domains like survey, task automatization, software installation, file processing...).

1) Overview of the UNIX Shell

2) Interfacing UNIX with the interactive Shell 3) An introduction to Shell scripting

4) Advanced Shell programming and the Korn Shell

5) Other UNIX powerful scripting tools

1) Overview of the UNIX Shell

- History of the UNIX Shell. UNIX fork/exec system calls. - Arguments and environment of a UNIX program. - How the Shell reads the command line.

- Differences between Bourne, Korn and Bourne Again Shells.

2) Interfacing UNIX with the interactive Shell

- Starting an interactive Shell. Initialization of the Shell. - Line editing, vi and emacs Ksh modes. Line editing with Bash. - Name completion. Shell options and the set built-in.

- Customizing the environment. The command search path. - Shell commands and scripts.

- Sourcing Shell commands. Execution of a Shell script. UNIX execution of a Shell script, the she-bang. - Creation and use of Shell variables. Passing arguments to a Shell script.

- Differences between exec, background and sub-shells. Using pipelines and lists.

3) An introduction to Shell scripting

- Basic Shell programming.

- Shell variables and compound variables. Strings operators. - Command substitution, braces expansion, tilde substitution.

- Initialization of a script, positional parameters, shift and parameters substitution. - Flow Control.

- If/else, for, case, select, while and until. Functions. The set and eval built-ins.

4) Advanced Shell programming and the Korn Shell

- Typed variables. Arrays, indexed and associative arrays. Typeset, indirect variable references. - Input/Output. I/O redirections, the IFS. Reading from the standard input.

- Process handling. Job control signals and traps. Co-routines and co-process substitution de process. - Optimization of the Korn Shell. Function libraries. Development of new Shell built-in

- Korn Shell debugging. Special debug traps. Using setters and getters.

5) Other UNIX powerful scripting tools

- Frequently used tools associated with the Shell.

- Shar, stty, lockfile, tput, grep, find, cut, sort and xargs AST tree walk and coshell. UNIX regular expressions. - Analysing text with SED. The command line. Scripting with sed.

(8)

Hands-on course , 3 day(s)

Ref : LIU

Pre-requisites

The students should be able to use basic computer hardware (monitor, keyboard, and mouse).

Next sessions

Brussels nov. 30 2015 Geneve nov. 30 2015 Luxembourg nov. 30 2015

Linux, Mastering Tools

> Operating Systems > Unix / Mac OS X

OBJECTIVES

This training will teach you how to use the various Unix/Linux tools, some of them coming from Open Source. These tools will handle your data (raw text, formatted text, image, binary, etc.).

1) Using bash

2) Automating tasks using shell scripts 3) Grep, ed, sed and regular expressions

4) Awk language 5) Publishing data

6) Managing files with tools and commands

1) Using bash

- Using a shell interpreter.

- Using meta-characters (*, $, [, ], …).

- Command line execution, redirecting and pipes (<, <<, >, >>, |). - Launching a command.

- Common errors.

2) Automating tasks using shell scripts

- Startup and install script.

- Monitoring (connexion, file system, files). - Creating a script-shell (&, #!, source). - Variables. Passing arguments.

- Profiling your scripts (2>, script, tee, debug, etc.). - Using at and crontab to execute delayed commands.

- Shell programming : conditional structures (if, for, while), additions (functions, return value, etc.).

3) Grep, ed, sed and regular expressions

- Regular expressions. Meta-characters.

- Getting lines with grep using simple and complex patterns. - Grep extensions : egrep, fgrep.

- Editing with sed. Syntax. Simple examples (display, remove, substitute). - Advanced sed.

Workshop

Grep and sed examples.

4) Awk language

- Awk compared to sed and grep. - Using patterns in awk.

- Variables, records and fields ($0,$1,$NR, etc.). - Simple and complex patterns.

- Awk as a complete language. - Essential functions in awk. - Advanced features.

5) Publishing data

- Converting data (ASCII, MIME). Accents.

- Displaying file contents (od), transform (tr), converting (dos2unix), formatage (tex et latex), publishing (latex2pdf).

- Presenting data : (more or less), concatenate data (fold, pr, col, etc.).

6) Managing files with tools and commands

- File type : file. Read anc concatenate : cat. - File statistics : wc. Splitting a file : split, csplit - Comparing files : diff and cmp. Sorting files : sort. - Searching in files : find. Archiving : tar.

(9)

Hands-on course , 4 day(s)

Ref : UXE

Pre-requisites

The students should be able to use basic computer hardware (monitor, keyboard, and mouse).

Unix/Linux Exploit and Deployment

Best

> Operating Systems > Unix / Mac OS X

OBJECTIVES

This training will teach you how to manage and exploit your computer production environment. 1) Concepts

2) Installing the system and packages 3) Volume Management

4) Backup and Restore Data

5) Network Configuration

6) Monitoring your system with Nagios 7) Writing scripts in bash and zsh

1) Concepts

- Tasks and rôles. - Method. - Audit.

- System Administration Tools. - Real and virtual machines.

Workshop

Overview of admin tools.

2) Installing the system and packages

- Installing a system. - Managing rpm packages. - Updating machines. - Troubleshooting.

Workshop

Installing the system and a rpm package.

3) Volume Management

- Disks. - File systems. - Partitioning, RAID. - Monitoring and availability.

Workshop

Formating, disk partitioning, using logical volumes and creating a file system.

4) Backup and Restore Data

- Concepts. - Planning backups.

- Full, differential and incremental backups. - Restore

Workshop

Configuring backups, planning the restore.

5) Network Configuration

- Network concepts.

- Protocols : SMTP, POP3, HTTP, DNS, DHCP, … - Managing servers.

- Maintenance : ping, traceroute.

Workshop

Configuring the network, setting up samba, DHCP, DNS.

6) Monitoring your system with Nagios

- Monitoring your system. - Setting up Nagios. - Customizing Nagios.

Workshop

Installing Nagios, managing an incident.

7) Writing scripts in bash and zsh

(10)

- Command line. - Creating a shell script. - Specific shell features. - Text file processing - Using sed and awk. - Making reports.

Workshop

(11)

Hands-on course , 3 day(s)

Ref : UXO

Pre-requisites

The students should have a solid knowledge of Unix/ Linux system administration (equivalent to a XAU training).

Advanced Unix Features

> Operating Systems > Unix / Mac OS X

OBJECTIVES

This training will improve your system administration skills under a Unix/Linux system. You will be able to properly tune your system as well as to manage them efficiently.

1) Performance

2) System Configuration

3) Advanced Network Administration 4) High Availability Services and Unix Deployment

1) Performance

- Performance : analysis, resolution method. - Managing system activity.

- Monitoring system load.

- Managing CPU load : single and multi processor analysis. - Managing memory pressure : paging, memory, swap. - Managing disk activity : bottlenecks, RAID solutions.

- Managing network : collision detection, bandwidth management. - Managing application tuning : examples with a web server, Oracle.

2) System Configuration

- Checking kernel parameters. - Accounting setup.

- C2 security setup.

- Using ssh and sudo to improve system security.

3) Advanced Network Administration

- TCP/IP setup. - Netmasks setup.

- Managing DNS/BIND setup. - Managing DHCP.

- Routing setup. - Using a firewall : ipfilter. - Using syslog. Managing syslogd.

4) High Availability Services and Unix Deployment

- Features of a HA Cluster. - Deploying a HA Cluster. - Managing HA NFS. - Managing HA Apache.

(12)

Hands-on course , 5 day(s)

Ref : AIX

Participants

The audience would typically be using Unix as an operating system for multiple tasks.

Pre-requisites

The students should have practical knowldge of Unix basic commands (shell, vi, etc.).

AIX Shell Programming

> Operating Systems > Unix / Mac OS X

OBJECTIVES

This intensive training has several goals : allowing students to reach a real knowledge of the system through pedagogical paths, both theorical and using various labs on IBM AIX systems, gives necessary synthetic information usful for an everyday use of the system, gives details on a set of selected examples that show the system capabilities.

1) Introduction 2) TCP/IP Networking 3) Device Management 4) File Systems

5) Managing Users and Groups 6) Troubleshooting and packages 7) System Installation

1) Introduction

- AIX versions.

- Being a system administrator. - System documentation.

- System Administration tools : CLI, smit and wsm.

2) TCP/IP Networking

- Miscellaneous.

- IPv4, routing, DNS/BIND. - Managing network parameters. - System Resource Control. - Managing services. - Adding a new service.

Workshop

Adding a new service.

3) Device Management

- ODM description. - Managing the ODM.

- Managing printers. Local, distant and remote printers. - Managing Hard Drives. DAS, SAN and NAS. - Adding, displaying and removing a hard drive. - Managing the AIX Logical Volume Manager.

- Description. Managing Volume Groups, Physical Volumes and Logical Volumes.

Workshop

Installing a local printer, installing a remote printer. Managing drives and volume groups.

4) File Systems

- Managing File Systems.

- Description of jfs and jfs2. Managing CD/DVD.

- Creating a File System. Mounting/Unmounting a File System.

- Managing the paging space. Displaying, adding and removing paging space. - Backup and Restore.

- Sharing File Systems with NFS. Client-Server model. Managing a NFS client and server. - Using the automounter.

Workshop

Managing a File System. Managing the AIX paging space. Setting a NFS server, client and automount.

5) Managing Users and Groups

- Adding, displaying and removing Users. - Adding, displaying and removing Groups.

- User security under an AIX system (ssh, sudo, etc.).

- Using name services to manage users and groups : NIS, NIS+ and LDAP.

Workshop

Adding users, groups. Setting sudo. Setting NIS service.

6) Troubleshooting and packages

- Crash Dump analysis. Using errpt. Analysing system messages. - Managing packages.

(13)

Workshop

Adding rpm packages and AIX packages. Setting up ssh.

7) System Installation

- Different installation schemes.

- Patching the system with technical levels. - Installing AIX using DVD.

Workshop

(14)

Hands-on course , 3 day(s) Ref : AXA

Participants

AIX Administrators.

Pre-requisites

The students should know AIX system administration before attending this training.

AIX Advanced System Administration

> Operating Systems > Unix / Mac OS X

OBJECTIVES

This intensive training will improve the skills of AIX system administrators. Through various labs, students will learn how to go deeper in the AIX knowledge.

1) LVM Advanced Administration 2) File System Advanced Administration 3) Advanced Networking

4) Tuning

5) Security and introduction to High Availability 6) NIM – Network Installation Management

1) LVM Advanced Administration

- Using RAID levels. - Managing hotspots.

- Splitting and joigning volume groups. - Hot spares.

2) File System Advanced Administration

- Using quotas.

- Growing and shrinking file systems.

3) Advanced Networking

- Subnetworks. - Routing. - Using inetd.

- Using AIX network commands.

4) Tuning

- Using system accounting.

- Tuning commands, using AIX resources.

- Managing CPU, memory, network and disk resources.

5) Security and introduction to High Availability

- Using TCP feature. - Advanced securty features. - Using sudo, ssh.

- Using syslogd.

- High-Availability with IBM HA-CMP.

6) NIM – Network Installation Management

(15)

Hands-on course , 3 day(s)

Ref : LDX

Pre-requisites

The students should have basic system administration knowledge of a Unix/Linux system.

Next sessions

Brussels dec. 14 2015 Geneve dec. 14 2015 Luxembourg dec. 14 2015

Unix/Linux Open LDAP Directory Service

> Operating Systems > Unix / Mac OS X

OBJECTIVES

At the end of this training, students will master the directory concepts as well as the LDAP protocol. This training will cover security features while deploying an enterprise directory service. Labs will be using the Unix/Linux OpenLDAP public domain implementation.

1) Introduction

2) LDAP Framework and setup 3) Name directory security strategy

4) Developing applications using LDAP 5) Conclusion

1) Introduction

- What is a name directory ? - Distributed directory principle. - Directory Framework. - LDAP Standards : OSI, X500. - OpenLDAP Directories.

Workshop

Installing LDAP on a Linux System. Configuration files and customization.

2) LDAP Framework and setup

- LDAP models.

- Managing data and model. - Managing LDAP Scheme.

- Naming and designing your LDAP service. - LDAP access.

- Distribution model.

Workshop

Designing an LDAP directory. Extending the LDAP scheme. Using authentication. Making LDAP requests. Using fetch requests. Setting up SLURP. Using referrals to other name services.

3) Name directory security strategy

- Authentication.

- LDAP and secure LDAP.

- Security protocols and communications.

- Integrating security frameworks in LDAP (RSA, DES, etc.).

Workshop

Integrating SSL module in OpenLDAP. Securing data access. User authentication.

4) Developing applications using LDAP

- LDAP Development interfaces. - Using directory features in scripts. - Web access : LDAP access URL. - Interface between LDAP and JAVA.

Workshop

Programming OpenLDAP Access. C APIs for LDAP. Windows client accessing an OpenLDAP server on a Unix system.

5) Conclusion

- Other directory products on Unix/Linux : Netscape, Netware Directory Service, Sun/Oracle Solutions. - Tools to help building directories. Meta-directories.

(16)

Hands-on course , 4 day(s)

Ref : LIS

Pre-requisites

Good knowledge of UNIX/ Linux system and C programming language.

Next sessions

Brussels nov. 17 2015 Geneve nov. 17 2015 Luxembourg nov. 17 2015

Unix/Linux system developer

> Operating Systems > Unix / Mac OS X

OBJECTIVES

This training session will teach you how to make use of the wide and precise UNIX system interface to develop performant applications. You will learn to manage processes and threads, file systems, and memory allocation. At the end of this session, you will be familiar with network communication, signals, Posix and System V IPC.

1) Development method and tools 2) Processes

3) Posix Threads 4) Files and filesystems

5) Inter Process Communication 6) Network

7) Memory management and Time 8) Advanced linker control Workshop

Progressive practicals and case studies will enable you to fully understand the presentation of the UNIX/Linux system programming interface.

1) Development method and tools

- The linux distributions, open source software, licenses. - Compilers and associated tools, profilers and debuggers.

Workshop

Use of GDB, cscope and profiling with a simple application.

2) Processes

- The UNIX processes, scheduling processes, priorities and processor affinity. - Live and death of a process. Fork, exec, exit and wait.

- Security issues. Root and standard user, user ids. - Namespaces and application mobility.

Workshop

Creation of a simple multi-process application. Tests of some security issues like process running wild and handling with setrlimit(2).

3) Posix Threads

- Programing with threads. Overview of Posix 1c threads. - Thread creation and termination. Thread scheduling.

- Synchronizing Threads. Mutex and data protection, priority inversion. - Condition variable and flow control. Using signals and threads.

Workshop

A simple multi-thread application using mutexes and condition variables.

4) Files and filesystems

- File handling.

- Filesystems. Accessing metadata. Accessing directories. - I/O Multiplexing. Using poll and select.

- Signals and events with multiplexed I/O

Workshop

A small program using fcntl(2) for file locking and accessing a directory.

5) Inter Process Communication

- Message queues. - Shared memory.

- Semaphores. Handling multiple semaphore sets. - Pipes. Standard I/O redirections.

- Signals. UNIX signals implementation.

Workshop

Implementation of a client/server use case with the help of various technologies: message queues, shared memory and semaphores, pipes and signals.

6) Network

- Socket Interface.

(17)

- mplementation of network servers and super servers.

Workshop

Implementation of our client/server use case with the network interface.

7) Memory management and Time

- Virtual memory. - Memory allocation. - Advanced use

- Date and time. Timers and timeout. - Latencies and determinism.

Workshop

Test of various allocations schemes using malloc(3), brk(2) or mmap(2). Implementing good practice for real-time applications. Using the UNIX real-time interface to measure scheduling latency.

8) Advanced linker control

- Security, real-time and multithreading. - Shared libraries.

Workshop

Figure

Updating...

References