Table of Contents

Andrew Sowers's super awesome HPC Opus!

“You've come the right place.”

Introduction

Hello and welcome. Prepare to bare witness of the digital symphony that follows… In pursuit of infinite wisdom I find myself in high performance computing fundamentals, here I hope to grasp a further understanding of Unix, its related concepts and theory. This is my story…

Part 1

Entries

2/14/2012

Could not edit entry four…. how strange.

Today I've loaded Ubuntu on my Droid incredible 2. On the android market there is a well detailed tutorial that links the dependancies and system images. What you're ultimately doing is partitioning your sdcard and a script boots Ubuntu. Setup your credentials and you're done! To access the session you use a VNC program and point it to localhost.

Entry 1: January 24, 2012

Today our task was to clear an area of the lair so we may setup our own machines to administrate. Whilst rummaging through potential systems for my own use I come across a lonely looking PowerMac G4 Cube… This machines specifications are less then ideal, however I believe that hacking away the unnecessary portions of OS X will permit an acceptable experience. It has been a small time dream of mine to play with one of these bad boys and here's my chance!

Optimizing legacy hardware for modern operation isn't just fun, it's economically sustainable. =)

Entry 2: February 10, 2012

I've decided to try using my favorite web applications in a CLI. So far I'm using Alpine for my Gmail, Pianobar for pandora, Lynx for light web browsing, TTYtter for twitter and I'm looking for more! I run all of these applications off of my PogoPlug server and tunnel in to access them. This provides me with a simple, lightweight and content centric user experience that's accessible from anywhere!

Entry 3: February 13, 2012

Today I stumbled upon this program called Cathode. It's an alternative terminal emulator for mac os. Cathode provides the user experience older physical video terminals such as the vt100. Cathode mimics visual effects that naturally occur in older CRT monitors. I've gone ahead and decided it will be my default choice for all terminal sessions.

Entry 4: January Day, 2012

This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.

As an aid, feel free to use the following questions to help you generate content for your entries:

  • What action or concept of significance, as related to the course, did you experience on this date?
  • Why was this significant?
  • What concepts are you dealing with that may not make perfect sense?
  • What challenges are you facing with respect to the course?

Remember that 4 is just the minimum number of entries. Feel free to have more.

Keywords

hpc0 Keywords

hpc0 Optimization

Definition

Experienced administrators realize the importance of ensuring a systems longevity. Legacy systems are often useful a decade or more after initial deployment. The key to this longevity is being smart about the software you use.

Demonstration

In the OS X environment users are given a lot of gloss: the dashboard, three demential/reflective docks, a transparent menu bar, and various other visual enhancements. If you find that these features aren't imperative to your work and you would like some free system memory you may want to consider disabling them. (I will be describing these procedures further in my first project)

If Mac OS isn't your thing and Linux is you may want to consider compiling a customized version of the openSUSE linux distribution. The openSUSE project offers a simple web tool that enables the user to customize the components of their operating system before installation. The openSUSE build project can be found here: “https://build.opensuse.org/

hpc0 Octave

Definition

Octave is mathematical analysis/computation HPC tool. Scientists and Engineers use programs like Octave to solve complex mathematical situations. High performance computing systems permit less latency and therefore, faster results.

Demonstration

Scientists and Engineers can input complex equations and weigh the processing over HPC nodes within a cluster. This kind of balanced processing is widely popular and practical for HPC applications. Octave gives the user a command line interface for processing requests, shown below:

server@Dimension-4600:~$ octave
GNU Octave, version 3.2.4
Copyright (C) 2009 John W. Eaton and others.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  For details, type `warranty'.

Octave was configured for "i686-pc-linux-gnu".

Additional information about Octave is available at http://www.octave.org.

Please contribute if you find this software useful.
For more information, visit http://www.octave.org/help-wanted.html

Report bugs to <bug@octave.org> (but first, please read
http://www.octave.org/bugs.html to learn how to write a helpful report).

For information about changes from previous versions, type `news'.

octave:1> help

  For help with individual commands and functions type

    help NAME

  (replace NAME with the name of the command or function you would
  like to learn more about).

  For a more detailed introduction to GNU Octave, please consult the
  manual.  To read the manual from the prompt type

    doc

  GNU Octave is supported and developed by its user community.
  For more information visit http://www.octave.org.

octave:2> 

hpc0 Xen Virtualization

Definition

Xen offers virtualization software with a focus on technical specification. Xen supports various architectures, is widely popular and is very robust; xen virtualization is trusted by larger internet groups such as Amazon.

Demonstration

In lab46 we've worked with Xen in a CLI but there is a GUI version as well. Xen offers an array of administrative tools accessible via the command line:

vmserver03:~# xm
Usage: xm <subcommand> [args]

Control, list, and manipulate Xen guest instances.

Common 'xm' commands:

 console              Attach to <Domain>'s console.                     
 create               Create a domain based on <ConfigFile>.            
 new                  Adds a domain to Xend domain management           
 delete               Remove a domain from Xend domain management.      
 destroy              Terminate a domain immediately.                   
 dump-core            Dump core for a specific domain.                  
 help                 Display this message.                             
 list                 List information about all/some domains.          
 mem-set              Set the current memory usage for a domain.        
 migrate              Migrate a domain to another machine.              
 pause                Pause execution of a domain.                      
 reboot               Reboot a domain.                                  
 restore              Restore a domain from a saved state.              
 resume               Resume a Xend managed domain                      
 save                 Save a domain state to restore later.             
 shell                Launch an interactive shell.                      
 shutdown             Shutdown a domain.                                
 start                Start a Xend managed domain                       
 suspend              Suspend a Xend managed domain                     
 top                  Monitor a host and the domains in real time.      
 unpause              Unpause a paused domain.                          
 uptime               Print uptime for all/some domains.                
 vcpu-set             Set the number of active VCPUs for allowed for    
                      the domain.

<Domain> can either be the Domain Name or Id.
For more help on 'xm' see the xm(1) man page.
For more help on 'xm create' see the xmdomain.cfg(5)  man page.

For a complete list of subcommands run 'xm help'.
vmserver03:~# 

Xen allows powerful critiquing of its settings.

hpc0 DD

I desided to swap my 80Gb IDE USB drive on my PogoLab server for a faster, 120Gb 5400RPM SATA drive. After a few Google queries I stumbled upon a tutorial that called for the DD tool.

Definition

DD is a tool for cloning disks.

'if=' - The drive you're going to copy. 'of=' - The drive being copied to.

Demonstration
andrew@Lab:/media$ sudo dd if=/dev/sdh of=/dev/sdg
[sudo] password for andrew: 

156301488+0 records in
80026361856 bytes (80 GB) copied, 7342.41 s, 10.9 MB/s
andrew@Lab:/media$ 

hpc0 Packages

Definition

As an administrator you'll often need to install packages from external repositories.

Demonstration

In Debian you source file for repositories is located in “/etc/apt/sources.list” There you can add or modify sources.

hpc0 Using Package managers

Definition

In Debian we rely on a program called aptitude to install external packages

Demonstration

To update aptitude, use the aptitude update command shown below:

vmserver03:~# aptitude update
Writing extended state information... Done
Get:1 http://dl.google.com stable Release.gpg [189B]                                                                                          
Get:2 http://security.debian.org lenny/updates Release.gpg [836B]                                                                             
Ign http://security.debian.org lenny/updates/main Translation-en_US                                                                           
Ign http://security.debian.org lenny/updates/contrib Translation-en_US                                                                        
Ign http://dl.google.com stable/non-free Translation-en_US                                                                                    
Ign http://dl.google.com stable/main Translation-en_US                                                                                        
Get:3 http://dl.google.com testing Release.gpg [189B]                                                                                         
Ign http://dl.google.com testing/non-free Translation-en_US                                                                                   
Get:4 http://security.debian.org lenny/updates Release [92.4kB]                                                                               
Get:5 http://packages.enlightenment.org lenny Release.gpg [197B]                                                                              
Get:6 http://dl.google.com stable Release [2544B]                                                                                             
Get:7 http://packages.dotdeb.org oldstable Release.gpg [836B]                                                                                 
Ign http://packages.dotdeb.org oldstable/all Translation-en_US                                                                                
Get:8 http://dl.google.com testing Release [2513B]                                                                                            
Ign http://dl.google.com stable Release                                                                                                       
Ign http://dl.google.com testing Release                                                                                                      
Ign http://dl.google.com stable/non-free Packages/DiffIndex                                                                                   
Ign http://dl.google.com stable/main Packages/DiffIndex                                                                                       
Ign http://packages.enlightenment.org lenny/main Translation-en_US                                                                            
Hit http://packages.dotdeb.org oldstable Release                                                                                              
Err http://packages.dotdeb.org oldstable Release                                                                                              
  
Ign http://dl.google.com testing/non-free Packages/DiffIndex                                                                                  
Get:9 http://dl.google.com stable/non-free Packages [1010B]                                                                                   
Ign http://security.debian.org lenny/updates/main Packages/DiffIndex                                                                          
Get:10 http://packages.dotdeb.org oldstable Release [2177B]                                                                                   
Get:11 http://dl.google.com stable/main Packages [1082B]                                                                                      
Ign http://packages.dotdeb.org oldstable Release                                                                                              
Ign http://packages.enlightenment.org lenny/extras Translation-en_US                                                                          
Ign http://security.debian.org lenny/updates/contrib Packages/DiffIndex                                                                       
Ign http://security.debian.org lenny/updates/main Sources/DiffIndex                                                                           
Ign http://security.debian.org lenny/updates/contrib Sources/DiffIndex                                                                        
Get:12 http://dl.google.com testing/non-free Packages [793B]                                                                                  
Get:13 http://security.debian.org lenny/updates/main Packages [346kB]                                                                         
Ign http://packages.dotdeb.org oldstable/all Packages/DiffIndex                                                                               
Hit http://packages.enlightenment.org lenny Release                                                                                           
Err http://packages.enlightenment.org lenny Release                                                                               
  
Ign http://packages.dotdeb.org oldstable/all Sources/DiffIndex                                                                    
Hit http://packages.dotdeb.org oldstable/all Packages                                                                                         
Get:14 http://packages.enlightenment.org lenny Release [910B]                                                                                 
Ign http://packages.enlightenment.org lenny Release                                                                                    
Hit http://packages.dotdeb.org oldstable/all Sources                                                                                   
Ign http://packages.enlightenment.org lenny/main Packages/DiffIndex                                                                           
Get:15 http://security.debian.org lenny/updates/contrib Packages [766B]                                                                       
Get:16 http://security.debian.org lenny/updates/main Sources [121kB]                                         
Ign http://packages.enlightenment.org lenny/extras Packages/DiffIndex                                                              
Get:17 http://security.debian.org lenny/updates/contrib Sources [811B]                                                             
Ign http://packages.enlightenment.org lenny/main Packages                                                                               
Hit http://ftp.us.debian.org lenny Release.gpg                                                                                                
Ign http://packages.enlightenment.org lenny/extras Packages                                                                                   
Ign http://ftp.us.debian.org lenny/main Translation-en_US                                                                                     
Ign http://ftp.us.debian.org lenny/contrib Translation-en_US                                                                                  
Hit http://ftp.us.debian.org lenny Release                                                                                                    
Hit http://packages.enlightenment.org lenny/main Packages                                                                                     
Ign http://ftp.us.debian.org lenny/main Packages/DiffIndex                                                                                    
Get:18 http://www.bimoid.com stable Release.gpg [490B]                                                                                        
Ign http://ftp.us.debian.org lenny/contrib Packages/DiffIndex                                                                                 
Ign http://ftp.us.debian.org lenny/main Sources/DiffIndex                                                                                     
Ign http://ftp.us.debian.org lenny/contrib Sources/DiffIndex                                                                                  
Hit http://ftp.us.debian.org lenny/main Packages                                                                                              
Ign http://www.bimoid.com stable/non-free Translation-en_US                                                                                   
Hit http://packages.enlightenment.org lenny/extras Packages                                                                                   
Hit http://ftp.us.debian.org lenny/contrib Packages                                                                                           
Hit http://ftp.us.debian.org lenny/main Sources                                                                                               
Hit http://www.bimoid.com stable Release                                                                                                      
Err http://www.bimoid.com stable Release                                                                                                      
  
Hit http://ftp.us.debian.org lenny/contrib Sources                                                                                            
Get:19 ftp://ftp.debian.org lenny-proposed-updates Release.gpg [836B]                                                                         
Get:20 http://www.bimoid.com stable Release [1681B]                                                                                           
Ign http://www.bimoid.com stable Release                                                                                                      
Ign http://www.bimoid.com stable/non-free Packages/DiffIndex                                                                                  
Ign http://www.bimoid.com stable/non-free Packages                                                                                            
Hit http://www.bimoid.com stable/non-free Packages                                                                                            
Get:21 ftp://ftp.debian.org lenny-proposed-updates/main Translation-en_US                                                                     
Ign ftp://ftp.debian.org lenny-proposed-updates/main Translation-en_US                                                                        
Get:22 ftp://ftp.debian.org lenny-proposed-updates Release [142kB]                                                                            
Get:23 ftp://ftp.debian.org lenny-proposed-updates/main Packages/DiffIndex [2023B]                                                            
Get:24 ftp://ftp.debian.org lenny-proposed-updates/main 2012-03-02-2013.04.pdiff [2688B]                                                      
Get:25 ftp://ftp.debian.org lenny-proposed-updates/main 2012-03-02-2013.04.pdiff [2688B]                                                      
Get:26 ftp://ftp.debian.org lenny-proposed-updates/main 2012-03-02-2013.04.pdiff [2688B]                                                      
Fetched 724kB in 17s (42.1kB/s)                                                                                                               
Reading package lists... Done             
W: GPG error: http://dl.google.com stable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A040830F7FAC5991
W: GPG error: http://dl.google.com testing Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A040830F7FAC5991
W: GPG error: http://packages.dotdeb.org oldstable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY E9C74FEEA2098A6E
W: GPG error: http://packages.enlightenment.org lenny Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 6B2226D9969C86CA
W: GPG error: http://www.bimoid.com stable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AD17586265F2FB00
W: You may want to run apt-get update to correct these problems

vmserver03:~# 

Then grabbing a new package:

use aptitude install “…”

Displayed below:

vmserver03:~# aptitude install calcurse
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Reading extended state information      
Initializing package states... Done
Reading task descriptions... Done  
The following NEW packages will be installed:
  calcurse 
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 231kB of archives. After unpacking 872kB will be used.
Writing extended state information... Done
Get:1 http://ftp.us.debian.org lenny/main calcurse 2.1-1 [231kB]
Fetched 231kB in 1s (150kB/s)    
Selecting previously deselected package calcurse.
(Reading database ... 46642 files and directories currently installed.)
Unpacking calcurse (from .../calcurse_2.1-1_i386.deb) ...
Processing triggers for man-db ...
Setting up calcurse (2.1-1) ...
Reading package lists... Done             
Building dependency tree       
Reading state information... Done
Reading extended state information      
Initializing package states... Done
Writing extended state information... Done
Reading task descriptions... Done         

vmserver03:~# 

hpc0 What to do with a VM server

Definition

A popular use for a Virtual Machineis a LAMP server (Linux, Apache, Mysql, PHP) server

Demonstration

A virtualized operating system is ideal for handling a simple webserver like this. it has the potential for always on applications and the files are segregated from the rest of the system. It also adds another level of security for your web server, this is because it is VM is hidden from the rest of the system and requires a second authentication for access.

hpc0 What not to do with a VM server

Make time go backwards…because you'll need to fuddle with your config file and reinitiate your VM. Luckily Haas is a master of time and can deal with such impasses.

hpc0 Objective

hpc0 Objective

Further understand the necessary components of a proper web server

Definition

If i hope to get into this line of work I want my focus to be web technologies. I need to know as much as I possibly can.

Method

Lab46 resources, real world experience, contemplation of concepts based on work in the lair.

Measurement

Jacob and I have started http://www.adaptivelogicdesign.com to open our services to new clients and learn new skills while doing so.

Experiments

Experiment 1

Question

Will my virtual machine return from its epic travle through time?

Resources

Lab46 Wiki

Hypothesis

Commenting out this line: “extra = 'clocksource=jiffies'” and reinitiating my VM will solve my time travle woes.

Experiment:

I remove the previous VM with an: “xm destroy newvm” and reinstitute another vm with: “xm create -c /xen/conf/vm07.cfg”

Data

The script then runs and I'm able to console into the new VM!

Analysis

Conclusions

So I assume the the kernal is a time freak and needs this external source to reference time… Awesome.

Experiment 2

Question

can I get new packages after updating my sources.list file without an aptitude update?

Resources

Lab46

Hypothesis

I believe that if I add a new sources.list file I'll be able to install a new package without an aptitude update.

Experiment

vmserver03:~# cd /etc/apt
vmserver03:/etc/apt# ls
apt.conf.d  secring.gpg  sources.list  sources.list.d  trustdb.gpg  trusted.gpg  trusted.gpg~
vmserver03:/etc/apt# rm sources.list
vmserver03:/etc/apt# touch sources.list
vmserver03:/etc/apt# nano sources.list


  GNU nano 2.0.7                                  File: sources.list                                                                          

#############################################################
################### OFFICIAL DEBIAN REPOS ###################
#############################################################

###### Debian Main Repos
deb http://ftp.us.debian.org/debian/ lenny main contrib
deb-src http://ftp.us.debian.org/debian/ lenny main contrib

###### Debian Update Repos
deb http://security.debian.org/ lenny/updates main contrib
deb http://ftp.us.debian.org/debian/ lenny-proposed-updates main contrib
deb-src http://security.debian.org/ lenny/updates main contrib
deb-src http://ftp.us.debian.org/debian/ lenny-proposed-updates main contrib

##############################################################
##################### UNOFFICIAL  REPOS ######################
##############################################################

###### 3rd Party Binary Repos

#### Bimoid - http://bimoid.com/
## Run this command: wget -O - http://www.bimoid.com/debian/apt.key | apt-key add -
deb http://www.bimoid.com/debian/ stable non-free

#### Dotdeb - http://www.dotdeb.org
## Run this command: wget -q -O - http://www.dotdeb.org/dotdeb.gpg | apt-key add -
deb http://packages.dotdeb.org oldstable all

#### Enlightenment - http://enlightenment.org
## Run this command: wget -q http://packages.enlightenment.org/repo.key -O- | apt-key add -
deb http://packages.enlightenment.org/debian lenny main extras

#### Esmska - http://code.google.com/p/esmska/
## Run this command: wget -q -O - http://repo.palatinus.cz/repo.key | apt-key add -
deb http://repo.palatinus.cz/stable /

#### Google Linux Software Repositories - http://www.google.com
## Run this command: wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
deb http://dl.google.com/linux/deb/ stable non-free main

#### Google Linux Software Repositories (Testing) - http://www.google.com
## Run this command: wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
                                                              [ Read 64 lines ]
^G Get Help            ^O WriteOut            ^R Read File           ^Y Prev Page           ^K Cut Text            ^C Cur Pos
^X Exit                ^J Justify             ^W Where Is            ^V Next Page           ^U UnCut Text          ^T To Spell



vmserver03:/etc/apt# aptitude install emacs
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Reading extended state information      
Initializing package states... Done
Reading task descriptions... Done  
The following NEW packages will be installed:
  emacs emacs22{a} emacs22-bin-common{a} emacs22-common{a} emacsen-common{a} libgif4{a} libxmu6{a} libxpm4{a} libxt6{a} xaw3dg{a} 
0 packages upgraded, 10 newly installed, 0 to remove and 0 not upgraded.
Need to get 17.9MB of archives. After unpacking 62.6MB will be used.
Do you want to continue? [Y/n/?] y
Writing extended state information... Done
Get:1 http://ftp.us.debian.org lenny/main libxt6 1:1.0.5-3 [166kB]
0% [1 libxt6 0/166kB 0%]            
Get:2 http://ftp.us.debian.org lenny/main emacsen-common 1.4.17 [17.6kB]
Get:3 http://ftp.us.debian.org lenny/main emacs22-common 22.2+2-5 [14.6MB]
Get:4 http://ftp.us.debian.org lenny/main emacs22-bin-common 22.2+2-5 [165kB]                                                                 
Get:5 http://ftp.us.debian.org lenny/main libgif4 4.1.6-6 [39.4kB]                                                                            
Get:6 http://ftp.us.debian.org lenny/main libxmu6 2:1.0.4-1 [51.1kB]                                                                          
Get:7 http://ftp.us.debian.org lenny/main libxpm4 1:3.5.7-1 [40.3kB]                                                                          
Get:8 http://ftp.us.debian.org lenny/main xaw3dg 1.5+E-17 [161kB]                                                                             
Get:9 http://ftp.us.debian.org lenny/main emacs22 22.2+2-5 [2607kB]                                                                           
Get:10 http://ftp.us.debian.org lenny/main emacs 22.2+2-5 [20.0kB]                                                                            
Fetched 17.9MB in 49s (361kB/s)                                                                                                               
Selecting previously deselected package libxt6.
(Reading database ... 46667 files and directories currently installed.)
Unpacking libxt6 (from .../libxt6_1%3a1.0.5-3_i386.deb) ...
Selecting previously deselected package emacsen-common.
Unpacking emacsen-common (from .../emacsen-common_1.4.17_all.deb) ...
Selecting previously deselected package emacs22-common.
Unpacking emacs22-common (from .../emacs22-common_22.2+2-5_all.deb) ...
Selecting previously deselected package emacs22-bin-common.
Unpacking emacs22-bin-common (from .../emacs22-bin-common_22.2+2-5_i386.deb) ...
Selecting previously deselected package libgif4.
Unpacking libgif4 (from .../libgif4_4.1.6-6_i386.deb) ...
Selecting previously deselected package libxmu6.
Unpacking libxmu6 (from .../libxmu6_2%3a1.0.4-1_i386.deb) ...
Selecting previously deselected package libxpm4.
Unpacking libxpm4 (from .../libxpm4_1%3a3.5.7-1_i386.deb) ...
Selecting previously deselected package xaw3dg.
Unpacking xaw3dg (from .../xaw3dg_1.5+E-17_i386.deb) ...
Selecting previously deselected package emacs22.
Unpacking emacs22 (from .../emacs22_22.2+2-5_i386.deb) ...
Selecting previously deselected package emacs.
Unpacking emacs (from .../emacs_22.2+2-5_all.deb) ...
Processing triggers for man-db ...
Setting up libxt6 (1:1.0.5-3) ...
Setting up emacsen-common (1.4.17) ...
emacsen-common: Handling install of emacsen flavor emacs
Setting up emacs22-common (22.2+2-5) ...
Setting up emacs22-bin-common (22.2+2-5) ...
Setting up libgif4 (4.1.6-6) ...
Setting up libxmu6 (2:1.0.4-1) ...
Setting up libxpm4 (1:3.5.7-1) ...
Setting up xaw3dg (1.5+E-17) ...
Setting up emacs22 (22.2+2-5) ...
emacs-install emacs22
install/cmake: Byte-compiling for emacs22
Wrote /usr/share/emacs22/site-lisp/cmake/cmake-mode.elc
install/dictionaries-common: Byte-compiling for emacsen flavour emacs22
Wrote /usr/share/emacs22/site-lisp/dictionaries-common/debian-ispell.elc
Wrote /usr/share/emacs22/site-lisp/dictionaries-common/ispell.elc
Wrote /usr/share/emacs22/site-lisp/dictionaries-common/flyspell.elc
emacsen-common: Handling install of emacsen flavor emacs22
emacsen-common: byte-compiling for emacs22
Loading /etc/emacs22/site-start.d/00debian-vars.el (source)...
Loading /etc/emacs/site-start.d/50cmake.el (source)...
Loading /etc/emacs/site-start.d/50dictionaries-common.el (source)...
Loading debian-ispell...
Loading /var/cache/dictionaries-common/emacsen-ispell-default.el (source)...
Loading /var/cache/dictionaries-common/emacsen-ispell-dicts.el (source)...
Wrote /etc/emacs22/site-start.d/00debian-vars.elc
Wrote /usr/share/emacs22/site-lisp/debian-startup.elc
Setting up emacs (22.2+2-5) ...
Reading package lists... Done             
Building dependency tree       
Reading state information... Done
Reading extended state information       
Initializing package states... Done
Writing extended state information... Done
Reading task descriptions... Done         

vmserver03:/etc/apt# 

Data

vmserver03:/etc/apt# emacs

File Edit Options Buffers Tools Help                                                                                                          
Welcome to GNU Emacs, one component of the GNU/Linux operating system.

Get help           C-h  (Hold down CTRL and press h)
Emacs manual       C-h r        Browse manuals     C-h i
Emacs tutorial     C-h t        Undo changes       C-x u
Buy manuals        C-h C-m      Exit Emacs         C-x C-c
Activate menubar   F10  or  ESC `  or   M-`
(`C-' means use the CTRL key.  `M-' means use the Meta (or Alt) key.
If you have no Meta key, you may instead type ESC followed by the character.)
Useful tasks:
Visit New File                  Open Home Directory
Customize Startup               Open *scratch* buffer

GNU Emacs 22.2.1 (i486-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2008-11-09 on raven, modified by Debian
Copyright (C) 2008 Free Software Foundation, Inc.

GNU Emacs comes with ABSOLUTELY NO WARRANTY; type C-h C-w for full details.
Emacs is Free Software--Free as in Freedom--so you can redistribute copies
of Emacs and modify it; type C-h C-c to see the conditions.
Type C-h C-d for information on getting the latest version.























-uuu:%%-F1  *GNU Emacs*    All L1     (Fundamental)-------------------------------------------------------------------------------------------
For information about GNU Emacs and the GNU system, type C-h C-a.

Analysis

Based on the data collected:

  • My hypothesis was correct
  • without an aptitude update I was able to still install packages

Conclusions

Though some of the mirrors were the same, some were added. Regardless, installation was still possible without an aptitude update.

Experiment 3

Question

What is the question you'd like to pose for experimentation? State it here.

Resources

Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.

Hypothesis

Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.

State your rationale.

Experiment

How are you going to test your hypothesis? What is the structure of your experiment?

Data

Perform your experiment, and collect/document the results here.

Analysis

Based on the data collected:

  • Was your hypothesis correct?
  • Was your hypothesis not applicable?
  • Is there more going on than you originally thought? (shortcomings in hypothesis)
  • What shortcomings might there be in your experiment?
  • What shortcomings might there be in your data?

Conclusions

What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.

Part 2

Entries

Entry 5: March 8, 2012

Today we're sitting in class talking about Diablo 3 and warcraft. Maybe we'll get some work done someday! =D

Entry 6: March 10, 2012

Today I setup a SAMAB server on my PogoPlug headless server. This means to date this $50 box has become:

  1. programing box
  2. Web Server
  3. CLI app box I.E. ttytter-twitter Alpine-gmail Lynx-'super-light' Web browser
  4. SFTP server for living in the cloud
  5. A secure gateway for internal access into my network

And now it's a SMB server/client for windows hosts!

Best $50 ever.

Entry 7: March 19, 2012

Today we're planing to setup our ip cams for the plants.

  • I suppose this is to be a practical way of demonstrating monitoring techniques using internet technologies
  • This is relevant because system monitoring is crucial for success

Entry 8: March Day, 2012

This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.

As an aid, feel free to use the following questions to help you generate content for your entries:

  • What action or concept of significance, as related to the course, did you experience on this date?
  • Why was this significant?
  • What concepts are you dealing with that may not make perfect sense?
  • What challenges are you facing with respect to the course?

Remember that 4 is just the minimum number of entries. Feel free to have more.

Keywords

hpc0 Keywords

hpc0 LAMP server

Definition

Linux, Apache Mysql and PHP server

Demonstration
  • Unordered List Iteminstall Apache: apt-get install apache2
  • install Mysql: apt-get install mysql-server
  • install PHP: apt-get install php5 php-pear php5-suhosin AND apt-get install php5-mysql so mysql and php play nice like they should.
  • Once your system or VM is configured with these programs you can establish a database and begin serving web pages!

The default location for your web server is /var/www/index.html

hpc0 SAMBA server

Definition

SAMBA is an SMB/CIFS client/server for Linux and UNIX boxes. SAMBA will often been seen as the default sharing method for local Linux nodes in a windows dominated network.

Demonstration

I installed SAMBA on my headless PogoServer that runs arch Linux; I'll show you the outout:

[andrew@alarm ~]$ sudo pacman -S samba
warning: samba-3.6.3-2 is up to date -- reinstalling
resolving dependencies...
looking for inter-conflicts...

Targets (1): samba-3.6.3-2

Total Installed Size:   54.29 MiB
Net Upgrade Size:       0.00 MiB

Proceed with installation? [Y/n] y
(1/1) checking package integrity                                                                                   [####################################################################] 100%
(1/1) loading package files                                                                                        [####################################################################] 100%
(1/1) checking for file conflicts                                                                                  [####################################################################] 100%
(1/1) checking available disk space                                                                                [####################################################################] 100%
(1/1) upgrading samba                                                                                              [####################################################################] 100%

[andrew@alarm ~]$ cd /etc/samba
[andrew@alarm samba]$ ls
private  smb.conf.default
[andrew@alarm samba]$ sudo touch smb.conf
[andrew@alarm samba]$ cp /etc/samba/smb.conf.default /etc/samba/smb.conf
[andrew@alarm samba]$ sudo rc.d start samba
:: Starting Samba Server                                                                                                                                                               [DONE] 

[andrew@alarm samba]$ sudo pdbedit -a -u Andrew
new password:
retype new password:
Unix username:        Andrew
NT username:          
Account Flags:        [U          ]
User SID:             S-1-5-21-605549301-1251446114-1201287368-1000
Primary Group SID:    S-1-5-21-605549301-1251446114-1201287368-513
Full Name:            
Home Directory:       \\alarm\andrew
HomeDir Drive:        
Logon Script:         
Profile Path:         \\alarm\andrew\profile
Domain:               ALARM
Account desc:         
Workstations:         
Munged dial:          
Logon time:           0
Logoff time:          never
Kickoff time:         never
Password last set:    Sat, 10 Mar 2012 08:56:30 CST
Password can change:  Sat, 10 Mar 2012 08:56:30 CST
Password must change: never
Last bad password   : 0
Bad password count  : 0
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
[andrew@alarm samba]$   

You can now share the files of your Linux user with windows clients!

hpc0 Extraction fun with .tar.gz .tar.bz2 and .tar

We can't always rely on package managers to do our dirty work when installing new software or programs…

Definition

Sometimes when you're installing something new you need to extract it from a tar ball before working with it.

Demonstration

For .tar.gz one must simply enter:

tar xvfz "the archive"

In the case of a .tar just remove the z. it should look like this:

tar xvf "the the archive"

For a .tar.bz2:

tar xvfj "the archive"

Then enter the directory the untar has produced. You should be greeted by a bunch of files including the make and install files.

hpc0 Make

Definition

Make is a tool to recompile programs for installation.

Demonstration

Here are some make options I find useful:

  • You can tell make to run in another directory using -C
  • -f to pick the file you'd like to make
  • -i will allow you to ignore errors whilst making things.

hpc0 ssh port forwarding

Definition

ssh port forwarding allows you to access port on a remote network via ssh.

Demonstration

Shown below is opening port 25565 on 10.80.3.34 through lab46

Last login: Thu Apr  5 13:42:57 on ttys002
 __      __          ___                                        
/\ \  __/\ \        /\_ \                                       
\ \ \/\ \ \ \     __\//\ \     ___    ___     ___ ___      __   
 \ \ \ \ \ \ \  /'__`\\ \ \   /'___\ / __`\ /' __` __`\  /'__`\ 
  \ \ \_/ \_\ \/\  __/ \_\ \_/\ \__//\ \L\ \/\ \/\ \/\ \/\  __/ 
   \ `\___x___/\ \____\/\____\ \____\ \____/\ \_\ \_\ \_\ \____\
    '\/__//__/  \/____/\/____/\/____/\/___/  \/_/\/_/\/_/\/____/
                                                                
                                                                                                   
 ______              __                             
/\  _  \            /\ \                            
\ \ \L\ \    ___    \_\ \  _ __    __   __  __  __  
 \ \  __ \ /' _ `\  /'_` \/\`'__\/'__`\/\ \/\ \/\ \ 
  \ \ \/\ \/\ \/\ \/\ \L\ \ \ \//\  __/\ \ \_/ \_/ \
   \ \_\ \_\ \_\ \_\ \___,_\ \_\\ \____\\ \___x___/'
    \/_/\/_/\/_/\/_/\/__,_ /\/_/ \/____/ \/__//__/  
                                                    
                                                    

ldhcp-213:~ asow123$  ssh -g -L 25565:vm34.student.lab:25565 asowers@lab46.corning-cc.edu
asowers@lab46.corning-cc.edu's password: 
 __         _     _ _   __   . . . . . . . . . . . . . . . . . . . . . . . . .
|  |   __ _| |__ / | |_/ /   . Basic System Usage:  Type 'usage' at prompt   .
|  |__/ _` | '_ \\_  _/ _ \  . Events and News:     Type 'news' at prompt    .
|_____\__,_|_.__/  |_|\___/  . Broken E-mail?       Type 'fixmail' at prompt .
---------------------------  . Check Lab46 Mail:    Type 'alpine' at prompt  .
c o r n i n g - c c . e d u  . . . . . . . . . . . . . . . . . . . . . . . . .

 Lab46 is the Computer & Information Science Department's Student Development
 Server for Computer-related coursework, projects, and exploration.  For more
 information, please check out:
  .. .  .    .        .                .                .        .    .  . ..
 .  Lab46 Web Page:       http://lab46.corning-cc.edu/                       .
 .  Lab46 Help Form:      http://lab46.corning-cc.edu/help_request           .
 .  Help E-mail:          haas@corning-cc.edu or wedge@lab46.corning-cc.edu  .
  .. .  .    .        .                .                .        .    .  . ..
      _        
  .-./*)       
_/___/   `.    
  U U      'You can check the current directory by typing 'pwd'.'
You have old mail.
Last login: Thu Apr  5 12:54:01 2012 from 172.16.198.128
lab46:~$ 

hpc0 Window manager forwarding

You can forward an entire window manager via you ssh session onto X11

Definition

On a remote system you may need more then a terminal for specific applications that demand graphics. All one needs to do is forward their Window manager via their secure shell!

Demonstration

Just grab a package manager of your choice and go to town! I'm going to use Xfce4 in my example:

[root@PogoLab ~]# pacman -S xfce4
:: There are 17 members in group xfce4:
:: Repository extra
   1) exo  2) garcon  3) gtk2-xfce-engine  4) gtk3-xfce-engine  5) terminal  6) thunar  7) tumbler  8) xfce-utils  9) xfce4-appfinder  10) xfce4-mixer  11) xfce4-panel
   12) xfce4-session  13) xfce4-settings  14) xfconf  15) xfdesktop  16) xfwm4  17) xfwm4-themes

Enter a selection (default=all): 
resolving dependencies...
looking for inter-conflicts...

Targets (21): libxfce4ui-4.8.1-1  libxfce4util-4.8.2-1  vte-0.28.2-3  xorg-xinit-1.3.2-1  exo-0.6.2-3  garcon-0.1.11-1  gtk2-xfce-engine-2.99.2-1  gtk3-xfce-engine-2.99.2-1
              terminal-0.4.8-1  thunar-1.2.3-5  tumbler-0.1.24-1  xfce-utils-4.8.3-1  xfce4-appfinder-4.8.0-2  xfce4-mixer-4.8.0-2  xfce4-panel-4.8.6-1  xfce4-session-4.8.3-1
              xfce4-settings-4.8.3-2  xfconf-4.8.1-1  xfdesktop-4.8.3-2  xfwm4-4.8.3-1  xfwm4-themes-4.6.0-2

Total Installed Size:   71.22 MiB

Proceed with installation? [Y/n] y
(21/21) checking package integrity                                                                          [################################################################] 100%
(21/21) loading package files                                                                               [################################################################] 100%
(21/21) checking for file conflicts                                                                         [################################################################] 100%
( 1/21) installing libxfce4util                                                                             [################################################################] 100%
( 2/21) installing exo                                                                                      [################################################################] 100%
Optional dependencies for exo
    perl-uri: for mail-compose helper script
( 3/21) installing garcon                                                                                   [################################################################] 100%
( 4/21) installing gtk2-xfce-engine                                                                         [################################################################] 100%
( 5/21) installing gtk3-xfce-engine                                                                         [################################################################] 100%
( 6/21) installing vte                                                                                      [################################################################] 100%
( 7/21) installing terminal                                                                                 [################################################################] 100%
( 8/21) installing xfconf                                                                                   [################################################################] 100%
( 9/21) installing libxfce4ui                                                                               [################################################################] 100%
Optional dependencies for libxfce4ui
    glade: for using the included glade module
(10/21) installing thunar                                                                                   [################################################################] 100%
Optional dependencies for thunar
    gvfs: for trash support, mounting with udisk and remote filesystems
    polkit-gnome: for mounting internal partitions (needs root password)
    xfce4-panel: for trash applet
    tumbler: for thumbnail previews
    thunar-volman: manages removable devices
    thunar-archive-plugin: create and deflate archives
    thunar-media-tags-plugin: view/edit id3/ogg tags
(11/21) installing tumbler                                                                                  [################################################################] 100%
Optional dependencies for tumbler
    ffmpegthumbnailer: for video thumbnails
    gstreamer0.10: for video thumbnails
    poppler-glib: for PDF thumbnails
    libgsf: for ODF thumbnails
    libopenraw: for RAW thumbnails
    freetype2: for font thumbnails
(12/21) installing xorg-xinit                                                                               [################################################################] 100%
Optional dependencies for xorg-xinit
    xorg-twm
    xterm
(13/21) installing xfce-utils                                                                               [################################################################] 100%
NOTE
----
 ==> xfce can run on top of a framebuffer. However, for most users it is
 ==> best to install xorg as an x-server. Please install either xorg-xinit
 ==> as minimal environment or the xorg meta package.
 pacman -S xorg-xinit
      -- or --
 pacman -S xorg
Optional dependencies for xfce-utils
    perl:	for migration scripts
    xscreensaver: for locking screen with xflock4
    gnome-screensaver: for locking screen with xflock4
    xlockmore: for locking screen with xflock4
(14/21) installing xfce4-appfinder                                                                          [################################################################] 100%
(15/21) installing xfce4-panel                                                                              [################################################################] 100%
(16/21) installing xfce4-mixer                                                                              [################################################################] 100%
Optional dependencies for xfce4-mixer
    gstreamer0.10-base-plugins: to support basic audio hardware
    gstreamer0.10-good-plugins: well supported hardware
    gstreamer0.10-bad-plugins: not so well supported hardware
    gstreamer0.10-ugly-plugins: might contain questionable license hardware
(17/21) installing xfce4-session                                                                            [################################################################] 100%
Optional dependencies for xfce4-session
    fortune-mod: for xfce4-tips
(18/21) installing xfce4-settings                                                                           [################################################################] 100%
Optional dependencies for xfce4-settings
    libcanberra: for sound control
(19/21) installing xfdesktop                                                                                [################################################################] 100%
Optional dependencies for xfdesktop
    xfce4-panel: panel menu plugin
(20/21) installing xfwm4                                                                                    [################################################################] 100%
(21/21) installing xfwm4-themes                                                                             [################################################################] 100%


[root@PogoLab ~]# sudo xfce4-panel

You should then be greeted by a lovely xfce panel interface to launch applications from.

hpc0 Keyword 15

Identification of chosen keyword (unless you update the section heading above).

Definition

Definition (in your own words) of the chosen keyword.

Demonstration

Demonstration of the chosen keyword.

If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:

/*
 * Sample code block
 */
#include <stdio.h>
 
int main()
{
    return(0);
}

Alternatively (or additionally), if you want to demonstrate something on the command-line, you can do so as follows:

lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$ 

hpc0 Keyword 16

Identification of chosen keyword (unless you update the section heading above).

Definition

Definition (in your own words) of the chosen keyword.

Demonstration

Demonstration of the chosen keyword.

If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:

/*
 * Sample code block
 */
#include <stdio.h>
 
int main()
{
    return(0);
}

Alternatively (or additionally), if you want to demonstrate something on the command-line, you can do so as follows:

lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$ 

hpc0 Objective

hpc0 Objective

State the course objective

Definition

In your own words, define what that objective entails.

Method

State the method you will use for measuring successful academic/intellectual achievement of this objective.

Measurement

Follow your method and obtain a measurement. Document the results here.

Analysis

Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.

  • How did you do?
  • Is there room for improvement?
  • Could the measurement process be enhanced to be more effective?
  • Do you think this enhancement would be efficient to employ?
  • Could the course objective be altered to be more applicable? How would you alter it?

Experiments

Experiment 4

Question

Can I forward an entire window manager via X11?

Resources

PogoPlug, GIYF

Hypothesis

I believe you can forward an entire window manager via X11 and SSH

Experiment

AirAndrew:~ asow123$ ssh -X andrew@67.241.242.136
andrew@67.241.242.136's password: 
Last login: Tue Apr 10 09:31:12 2012 from 50.42.61.239
 __      __          ___                                          ______          
/\ \  __/\ \        /\_ \                                        /\__  _\         
\ \ \/\ \ \ \     __\//\ \     ___    ___     ___ ___      __    \/_/\ \/   ___   
 \ \ \ \ \ \ \  /'__`\\ \ \   /'___\ / __`\ /' __` __`\  /'__`\     \ \ \  / __`\ 
  \ \ \_/ \_\ \/\  __/ \_\ \_/\ \__//\ \L\ \/\ \/\ \/\ \/\  __/      \ \ \/\ \L\ \
   \ `\___x___/\ \____\/\____\ \____\ \____/\ \_\ \_\ \_\ \____\      \ \_\ \____/
    '\/__//__/  \/____/\/____/\/____/\/___/  \/_/\/_/\/_/\/____/       \/_/\/___/ 
                                                                                  
                                                                                  
 ____                        __                __       __     
/\  _`\                     /\ \              /\ \     /\ \    
\ \ \L\ \___      __     ___\ \ \         __  \ \ \____\ \ \   
 \ \ ,__/ __`\  /'_ `\  / __`\ \ \  __  /'__`\ \ \ '__`\\ \ \  
  \ \ \/\ \L\ \/\ \L\ \/\ \L\ \ \ \L\ \/\ \L\.\_\ \ \L\ \\ \_\ 
   \ \_\ \____/\ \____ \ \____/\ \____/\ \__/.\_\\ \_,__/ \/\_\
    \/_/\/___/  \/___L\ \/___/  \/___/  \/__/\/_/ \/___/   \/_/
                  /\____/                                      
                  \_/__/        



[andrew@PogoLab ~]$ sudo xfce4-panel
Password: 

Data

Xfce then began to load atop my local machine.

Analysis

My hypothesis was correct, the window manager is a lot like a user application and therefor can be forwarded via the network.

Conclusions

This could be especially useful for remote configuration and administration.

Experiment 5

Question

What is the question you'd like to pose for experimentation? State it here.

Resources

Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.

Hypothesis

Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.

State your rationale.

Experiment

How are you going to test your hypothesis? What is the structure of your experiment?

Data

Perform your experiment, and collect/document the results here.

Analysis

Based on the data collected:

  • Was your hypothesis correct?
  • Was your hypothesis not applicable?
  • Is there more going on than you originally thought? (shortcomings in hypothesis)
  • What shortcomings might there be in your experiment?
  • What shortcomings might there be in your data?

Conclusions

What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.

Retest 2

Perform the following steps:

State Experiment

Whose existing experiment are you going to retest? Provide the URL, note the author, and restate their question.

Resources

Evaluate their resources and commentary. Answer the following questions:

  • Do you feel the given resources are adequate in providing sufficient background information?
  • Are there additional resources you've found that you can add to the resources list?
  • Does the original experimenter appear to have obtained a necessary fundamental understanding of the concepts leading up to their stated experiment?
  • If you find a deviation in opinion, state why you think this might exist.

Hypothesis

State their experiment's hypothesis. Answer the following questions:

  • Do you feel their hypothesis is adequate in capturing the essence of what they're trying to discover?
  • What improvements could you make to their hypothesis, if any?

Experiment

Follow the steps given to recreate the original experiment. Answer the following questions:

  • Are the instructions correct in successfully achieving the results?
  • Is there room for improvement in the experiment instructions/description? What suggestions would you make?
  • Would you make any alterations to the structure of the experiment to yield better results? What, and why?

Data

Publish the data you have gained from your performing of the experiment here.

Analysis

Answer the following:

  • Does the data seem in-line with the published data from the original author?
  • Can you explain any deviations?
  • How about any sources of error?
  • Is the stated hypothesis adequate?

Conclusions

Answer the following:

  • What conclusions can you make based on performing the experiment?
  • Do you feel the experiment was adequate in obtaining a further understanding of a concept?
  • Does the original author appear to have gotten some value out of performing the experiment?
  • Any suggestions or observations that could improve this particular process (in general, or specifically you, or specifically for the original author).

Part 3

Entries

Entry 9: April 6, 2012

Today I got Xfce4 running atop arch on my pogoplug. I forward the window manager through X11 via the network and interface with it on my client pc.

This is significant for a number of reasons:

  • External GUI administration has an array of applicable uses.
  • I can access web interfaces i.e. my router html config, all via a secure shell.
  • I'm hoping to find a way to reduce latency of these applications over distant network connections.

Entry 10: April Day, 2012

This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.

As an aid, feel free to use the following questions to help you generate content for your entries:

  • What action or concept of significance, as related to the course, did you experience on this date?
  • Why was this significant?
  • What concepts are you dealing with that may not make perfect sense?
  • What challenges are you facing with respect to the course?

Remember that 4 is just the minimum number of entries. Feel free to have more.

Entry 11: April Day, 2012

This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.

As an aid, feel free to use the following questions to help you generate content for your entries:

  • What action or concept of significance, as related to the course, did you experience on this date?
  • Why was this significant?
  • What concepts are you dealing with that may not make perfect sense?
  • What challenges are you facing with respect to the course?

Remember that 4 is just the minimum number of entries. Feel free to have more.

Entry 12: April Day, 2012

This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.

As an aid, feel free to use the following questions to help you generate content for your entries:

  • What action or concept of significance, as related to the course, did you experience on this date?
  • Why was this significant?
  • What concepts are you dealing with that may not make perfect sense?
  • What challenges are you facing with respect to the course?

Remember that 4 is just the minimum number of entries. Feel free to have more.

hpc0 Keywords

hpc0 Squid
Definition

Squid is an open source HTTP, HTTPS, and FTP proxy application that is flexible enough for Corporate, Education or personal use.

Demonstration

I'm going to setup my own proxy for HTTP and HTTPS so I may evade web restrictions whilst I'm out and about.

First I'm going to grab the Squid program for arch via the Pacman package manager:

[root@PogoLab ~]# pacman -S squid
resolving dependencies...
looking for inter-conflicts...

Targets (8): cloog-0.17.0-1  gcc-4.6.3-1  isl-0.09-1  libmpc-0.9-2  libtool-2.4.2-4.1  mpfr-3.1.0.p7-1  ppl-0.12-1  squid-3.1.19-1.1

Total Download Size:    17.38 MiB
Total Installed Size:   87.46 MiB

Proceed with installation? [Y/n] y
:: Retrieving packages from core...
 mpfr-3.1.0.p7-1-arm                                                                              319.8 KiB   343K/s 00:01 [##########################################################################] 100%
 libmpc-0.9-2-arm                                                                                  53.4 KiB   502K/s 00:00 [##########################################################################] 100%
 isl-0.09-1-arm                                                                                   377.5 KiB   488K/s 00:01 [##########################################################################] 100%
 cloog-0.17.0-1-arm                                                                                74.2 KiB   636K/s 00:00 [##########################################################################] 100%
 ppl-0.12-1-arm                                                                                  1965.6 KiB   707K/s 00:03 [##########################################################################] 100%
 gcc-4.6.3-1-arm                                                                                   13.5 MiB  1129K/s 00:12 [##########################################################################] 100%
 libtool-2.4.2-4.1-arm                                                                            268.5 KiB   650K/s 00:00 [##########################################################################] 100%
:: Retrieving packages from extra...
 squid-3.1.19-1.1-arm                                                                             887.1 KiB   569K/s 00:02 [##########################################################################] 100%
(8/8) checking package integrity                                                                                           [##########################################################################] 100%
(8/8) loading package files                                                                                                [##########################################################################] 100%
(8/8) checking for file conflicts                                                                                          [##########################################################################] 100%
(1/8) installing mpfr                                                                                                      [##########################################################################] 100%
(2/8) installing libmpc                                                                                                    [##########################################################################] 100%
(3/8) installing isl                                                                                                       [##########################################################################] 100%
(4/8) installing cloog                                                                                                     [##########################################################################] 100%
(5/8) installing ppl                                                                                                       [##########################################################################] 100%
(6/8) installing gcc                                                                                                       [##########################################################################] 100%
(7/8) installing libtool                                                                                                   [##########################################################################] 100%
(8/8) installing squid   
[root@PogoLab ~]#

That's about it… make sure you've setup your router to forward port 3128 so squid my communicate externally. Set your proxy credentials on your client machine and you're off the races!

hpc0 squid.conf

For my proxy server I've settled with the following config file:

acl ip_acl src 192.168.1.0/24
http_access allow ip_acl
http_access allow all
cache_mgr asow123@gmail.com
cache_mem 64 MB
cache_dir diskd /var/log/squid/cache0 64 16 256
cache_effective_user andrew
http_port 3128 transparent

This tells all trafic forwarded to the proxy on port 3128 to travel through its assigned port and return to the client. The cache is 64 megabytes (Enough for personal use.)

hpc0 superuser

A superuser is the root user. A system typically has a single root account and can allow other users superuser privileges. The concept of a superuser establishes a layer of security on your system; you wouldn't want to allow absolute log, program and file navigation access to every user.

An administrator or root user can add new sudo user in the /etc/sudoers file. Here is an example of a string adding sudo privileges to a user named joe:

 joe  ALL=(ALL) ALL 
hpc0 sudo vs root

So want to be a super user? Think sudo's the same thing? Not quite. The difference between sudo and root execution is when a user executes a command using using sudo a log is kept of the commands used. This is not the case with root.

This log adds an additional layer of security.

hpc0 Unison

Unison is a great bidirectional directory synchronization application. I've setup a script to describe its functionality:

#!/bin/bash
_path="/home/andrew/Cloud"
_unison=/usr/local/Cellar/unison/2.40.63/bin/unison
_rserver="67.241.242.136"
 for r in ${_rserver}
do
        for p in ${_path}
        do
                ${_unison} -batch /Users/asow123/Cloud  "ssh://${r}/${p}"
        done
done

Here is the script in action:

AirAndrew:/ andrew$ ./Unison.sh
Contacting server...
Connected [//AirAndrew//Users/asow123/Cloud -> //PogoLab//home/andrew/Cloud]
Looking for changes
  Waiting for changes from server
Reconciling changes
props    <-?-> props      /  
local        : dir props changed  modified on 2012-05-02 at 21:26:20  size 2025059   rwxr-xr-x
PogoLab      : dir props changed  modified on 2012-05-02 at 21:25:03  size 1946009   rwxr-xr-x
new file <-?-> new file   .DS_Store  
local        : new file           modified on 2012-05-02 at 21:23:17  size 6148      rw-r--r--          
PogoLab      : new file           modified on 2012-04-30 at 18:06:57  size 6148      rw-r--r--          
  w file <-?-> new file   Icon
local        : new file           modified on 2012-04-30 at 17:54:31  size 79050     rw-rw-rw- icon MACS
PogoLab      : new file           modified on 2012-04-30 at  9:46:17  size 0         rw-rw-rw-
No updates to propagate
AirAndrew:/ andrew$ 
hpc0 Generating ssh keys

Sometimes you just need indefinite access.

Definition

An ssh key will allow you to establish a secure shell with a trusted host if the server is compliant with clients generated key.

Demonstration

On the client side

ssh-keygen -t dsa

generates an ssh key for the remote server.

Add the key to this file ~/.ssh/authorized_keys

Then login! =D

hpc0 evn DISPLAY=:
Definition

Forwarding Applications is so cool!

Demonstration

You can forward applicaitons to other display environments like this:

[andrew@PogoLab ~]$ sudo env DISPLAY=:10 gparted

======================
libparted : 3.1
======================
^C[andrew@PogoLab ~]$ 

So… lets explain what just happened. On my MacBook I was ssh'd into @PogoLab and set gparted to open on my PowerBook that was ALSO connected to @PogoLab

The $DISPLAY number is what counts; :0 would be the local display and 10 was the SSH session connected to the PowerBook

hpc0 manual X11 forwarding

For when you're too good for just ssh -X

Demonstration

Let's say I want X apps to open on my macbook air when they are executed on @PogoLab. First I must add the remote ip of PogoLab to my X hosts on the macbook:

AirAndrew:~ andrew$ sudo xhost +192.168.1.101
Password:
192.168.1.101 being added to access control list
AirAndrew:~ andrew$ 

Then on @PogoLab I must export my display to the macbook:

[andrew@PogoLab ~]$ export DISPLAY=192.168.1.147:0.0
[andrew@PogoLab ~]$ 

hpc0 Objective

hpc0 Objective

Play hard work hard

Definition

Through video games and other forms of digital entertainment, one can acquire a set of skills that enable that person to excel in the fundamentals of that subject.

Method

For instance, I didn't know how to forward ports via ssh before it was necessary when attempting to play MineCraft on a Lab46 VM-server.

Analysis

If you never make time for a little fun you may find your situation dull and stagnate.

Experiments

Experiment 7

Question

What is the question you'd like to pose for experimentation? State it here.

Resources

Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.

Hypothesis

Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.

State your rationale.

Experiment

How are you going to test your hypothesis? What is the structure of your experiment?

Data

Perform your experiment, and collect/document the results here.

Analysis

Based on the data collected:

  • Was your hypothesis correct?
  • Was your hypothesis not applicable?
  • Is there more going on than you originally thought? (shortcomings in hypothesis)
  • What shortcomings might there be in your experiment?
  • What shortcomings might there be in your data?

Conclusions

What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.

Experiment 8

Question

What is the question you'd like to pose for experimentation? State it here.

Resources

Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.

Hypothesis

Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.

State your rationale.

Experiment

How are you going to test your hypothesis? What is the structure of your experiment?

Data

Perform your experiment, and collect/document the results here.

Analysis

Based on the data collected:

  • Was your hypothesis correct?
  • Was your hypothesis not applicable?
  • Is there more going on than you originally thought? (shortcomings in hypothesis)
  • What shortcomings might there be in your experiment?
  • What shortcomings might there be in your data?

Conclusions

What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.

Retest 3

Perform the following steps:

State Experiment

Whose existing experiment are you going to retest? Provide the URL, note the author, and restate their question.

Resources

Evaluate their resources and commentary. Answer the following questions:

  • Do you feel the given resources are adequate in providing sufficient background information?
  • Are there additional resources you've found that you can add to the resources list?
  • Does the original experimenter appear to have obtained a necessary fundamental understanding of the concepts leading up to their stated experiment?
  • If you find a deviation in opinion, state why you think this might exist.

Hypothesis

State their experiment's hypothesis. Answer the following questions:

  • Do you feel their hypothesis is adequate in capturing the essence of what they're trying to discover?
  • What improvements could you make to their hypothesis, if any?

Experiment

Follow the steps given to recreate the original experiment. Answer the following questions:

  • Are the instructions correct in successfully achieving the results?
  • Is there room for improvement in the experiment instructions/description? What suggestions would you make?
  • Would you make any alterations to the structure of the experiment to yield better results? What, and why?

Data

Publish the data you have gained from your performing of the experiment here.

Analysis

Answer the following:

  • Does the data seem in-line with the published data from the original author?
  • Can you explain any deviations?
  • How about any sources of error?
  • Is the stated hypothesis adequate?

Conclusions

Answer the following:

  • What conclusions can you make based on performing the experiment?
  • Do you feel the experiment was adequate in obtaining a further understanding of a concept?
  • Does the original author appear to have gotten some value out of performing the experiment?
  • Any suggestions or observations that could improve this particular process (in general, or specifically you, or specifically for the original author).