UTOSC 2010

From Omnia
Jump to navigation Jump to search

Subpage Table of Contents

UTOSC 2010

Wireless

SLCC-OPEN
OpenSource
iaScqJ3k

Nmap

Presenter - High School Senior?

Publishing with Open Source

Presenter - Jerome S. Horowitz

Latex and Tex

TEX developed by Donald E. Knuth (1977).

"typeset a book"?

LATEX started by Leslie Lamport (1982).

http://en.wikipedia.org/wiki/Typesetting

Tools:

  • Textmaker
  • Kile
  • Docbook

CLI Judo

Presenter: Derek Carter "goozbach" (http://blog.friocorte.com/)

Variable Tricks:

  • RANDOM
  • PS1
  • PS2
echo ${RANDOM}   # number between 0 and MAXINT
NUM=${RANDOM}
let "NUM %= 500"

PS1 is prompt

PS1=[\u@\h \w]\$

PS2 is the second level prompt, for when you don't close a command

PS2="secon level> "
echo "my name is

Install "Bash Completion" package to do other cool stuff

bitlbee - irc interface to messaging networks (ie yahoo, jabber, etc)

What did you use to record the .flv?

tmux - alternative to screen command

byobu - wrapper around screen does profiles, screens, status lines, etc

pv - progress bar in your terminal (like cat) - works great for sha1sum

pv big.iso | sha1sum

Suggestion: add time to prompt so you know how long commands take

todo - command based todo list

alias td=todo.sh
td add "make a presentation"
td add "second"
td list
td do 1  # mark done

found on: todo.txt - on git hub

Customizations

alias q='exit'
ll
la
ls
redo='sudo !!'
wtf=dmesg
ls -F  # adds identifiers / @ |
please=
thanks='echo no prob'
realias='source ${HOME}/.bash_aliases'
refunction='source ${HOME}/.bash_functions'

Functions:

mkcd (make dir and cd)

mkcd () {
  mkdir -p -- "$@" && cd -- "$@"
}

pathmunge (add path to path)

pathmunge () {
  if ! echo $PATH | grep -E -q ".....

tricks = superuser.com

Keybindings:

~/.inputrc
\C-t "say something!"    # control tab

Library: bti - bash twitter idiocy

echo "test " | bti --bash

dent_promt.sh

 PROMPT_COMMAND="history 1 | sed -e "...." | bti --bash
PROMPT_COMMAND='echo dood'

Can be used for battery status, or current git branch

Best practice:

read_zork () {
  ....
}
PROMPT_COMMAND=read_zork

SSH known_hosts destroy: null host keys

host localhost .....
   strict... no?
   key file = /dev/null?

xyzzy: how session was recorded

terminator - gnome terminal splittable


This whole presentation will be added to Git Hub

  • "The Bashful Adventurer"

Recorded with ffmpeg to flv


Traps:

mytrap() {
  sleep 1
  echo -e "\nso you sent me a trap"
}
trap mytrap 0 1 2 5 15 19
echo "send me traps"
while true; do
  sleep 1
done

Dialog - cursive based dialog window

dialog --title "input box" --clear "$@" \
 --inputbox "enter name" 16 51 2> $tempfile
# --select
# man dialog
# /usr/share/doc/dialog

GUI alternative to dialog - gtk based dialog - zenity

KDE dialog has lots of cool widgets - kdialog

Cheat at hangman:

cat /usr/share/dict/words | tr -s 'A-Z' 'a-z' | sort | grep "^......$" | wc -l
cat /usr/share/dict/words | tr -s 'A-Z' 'a-z' | sort | grep "^t.m..o$" | wc -l

How to tell if a pipe fails

cat /usr/share/dict/words | tr -s 'A-Z' 'a-z' | sort --gargle | grep "^t.m..o$" | wc -l
echo ${PIPESTATUS}

Stringet Bash:

Replatform Technologies - bash presentation - shows you the why on bash stringent

Torque - HPC for Home Use

presenter: Stephen McQuary

Adaptive computing - scheduling for super computers

High Performance Computing - HPC

MPI - Message Passing Interface

Super computers - like IBM BlueGene/P

JOBC - Just a Bunch of Computers (shouldn't it be JOBC?)

Computational Fluid Dynamics

There is a problem called the "Embarrassingly Parallel Problems". These are best suited for parallelization.

oggenc "wav"

Simple method with xargs

# the P4 parallels the processes
time ls *.wav | xargs -n1 -P4 oggenc -- quiet

Torque: - based on Open PBS

Moab is a proprietary scheduler

pbs_server talks to pbs_mom(s) (mother superior?)

"wall time" is the max time a process can run before there is a problem

clusterresources.com is the old name. Download under /download/torque

tmux - like screen

htop - cool top program

torque home - /var/spool/torque

/var/spool/torque/  - torque home
   /servername      - name / fqdn / ip
   /server_priv/nodes   - list nodes and cpu  (np number of processes)
pbs_server
qstat
pbsnodes
pbs_mom

dsh - dancer shell - run command on many systems

~/.dsh/machine.list
dsh -a uptime
alias dsha=dsh -a
dsh.com - show machine_names
pbsnodes -l  # looser machines

nfs:

/share *.ac(rw,no_sub_tree_check,no_root_squash)

submit.sh:

#PBS ... commands directive
#PBS -L nodes=1:ppn=1,walltime=00:02:00
#PBS -N oggend_job
cd $PBS_O_WORKER
sleep 300
echo hello world
qsub submit.sh
qstat
stat -a [name]

moab - excellent scheduler (proprietary)

pbs_sched (fifo scheduler for dev)
.o output
.e error
qterm
qstat -x

echo "job" | qsub -l walltime=300 -N sleeptest

 # or is it 00:02:00?

"avoided fail block"

qstat
iftop - network monitor

Capturing Audio and Video on the Cheap

Presenter: Clint Savage

Purple Atom - purpleatom.com

FreeSeeR

Software:

  • audacity
  • gtkRecord my Desktop
  • Istanbul

Streaming:

  • ice cast - shout cast
  • ices2
  • dark ice

Video:

  • vga2usb - epiphan.com $300
  • scan converter / EZCap


Video Editors: kdenlive, kino, pitivi

Screen cap: istanbul, gtk-record my desktop

GStreamer: gstreamer.freedesktop.org

! is a pipe to Gstreamer

Radio Shack wireless lapel Microphone $50 - best

Advanced Git

git hub:

git hub: advancedGit
git 
git init
git add [file]
git commit
git clone git://github.com/timcharper/advancedGit.git
git clone http://github.com/timcharper/advancedGit.git

Topics:

  • Rebasing
  • Hooks
  • branching mixed up
  • tab completion
  • .gitignore
  • ressurect / undo branch deletions
  • interactive rebase

Clean Commits - it all starts here

alias to add and commit? - would not recommend to do, as the staging feature is really handy

git commit -a
aliases 'git add -p'

Twitter: timcharper (Tim C Harper)

Getting branches mixed up:

gitk --all  # history visualizer
tig       # console purists
yum install git-gui
git co -b wip  # branch work in progress

Cucumber and Nagios

Cucumber - http://cukes.info/

"Behavior Driven Development with elegance and joy"

cucumber-nagios - http://auxesis.github.com/cucumber-nagios/

"cucumber-nagios lets you describe how a system should work in natural language, and outputs whether it does in the Nagios plugin format"


cucumber-nagios-gen
cucumber-nagios-gen project utosc.com
sudo gem bundle install  # install dependencies
cucumber-nagios-gen feature
bin/cucumber-nagios features/utosc.com/login.feature
bin/cucumber-nagios features/utosc.com/login.feature --pretty
cucumber --require features features/utosc.com/login.feature
Scenario: Visiting home page
 When I got to http://www.mcquay.me
 Then the request should succeed
 And I got to /register
 Then I should see "Required. 30"
 When I fill in "Username" # missing last bit

UTOSC 2010 - Python Full Meal Deal

See UTOSC 2010/Python Full Meal Deal

Automation

Presenter: Jared Smith

DHCP PXE TFTP

Anaconda

gen password with open ssl

how to not reauto start install with Anaconda? -- cobbler is the fix

anaconda-ks.cfg create on install on RHEL based installs

cobbler to configure

koan - install for virt. env.

puppet - config engine

func - companion to puppet

  • like dancer shell
  • see cluster ssh

"surprise is the opposite of engagement"

Buy 'em cheap and stack 'em deep

"Meat cloud computing" - where the install isn't scripted or standardized

Item potency - persistence?

stage your changes?

Zenoss

Presenter: Corey Edwards

---

Many have thought "I could build a better Nagios", and many have failed. Turns out it's a pretty difficult thing to get right and thus Nagios remains the defacto NMS.

Zenoss may be the solution for you. It offers many advances over previous generation tools such as Nagios and Cacti. It's simple to use, easily extensible and rich in features.

In this presentation we will:

  • learn the benefits of Zenoss
  • install Zenoss
  • create custom templates
  • set up monitoring for an example network
  • write python scripts to interact directly with the Zenoss database

Come learn how Zenoss can make your life easier.

---


Zenoss: http://www.zenoss.com/

Community Edition: http://community.zenoss.org/index.jspa


Zenoss is *ALL* web based! Nice!

Zenoss is written in Python


Wordpress

See wordpress

NEW