2014-06-30

Aircraft-grade Aluminum Case for Raspberry Pi

Aircraft-grade Aluminum Raspberry Pi Assembly Guide from the ModMyPi blog

WiFi for Raspberry Pi

How to install wifi on Raspberry Pi is a handy, simple description of bringing up WiFi on a Raspberry Pi.

Following this guide, everything worked on the first try.

Note that prior efforts to bring the WiFi interface up from the command line were unsuccessful; the iw, ip, iwconfig, and ifup commands did not bring the wlan0 interface up.

The connection to the Pi in this instance was an SSH connection; the Pi running headless with X11 forwarded across and SSH tunnel via VNC, so the eth0 connection was active until disabled from wicd after wlan0 was successfully provisioned.

Note that the WiFi configuration for the dongle – wlan0 – does not appear to have been saved on reboot; Pi still comes up with Ethernet eth0 active, and the wlan0 module loaded and showing in the iwconfig ougtput, but the interface is not up, does not have an IP address, and no routing nor gateway configured for it.

2014-06-29

Using FUSE to store RaspiVid video files remotely

 In working with the Raspberry Camera Module and the supplied RaspiCam utilities, it became desirable to store capture video data files somewhere besides the local filesystem of the Raspberry Pi devices.  The solution most immediately presenting itself was to utilize the sshfs utility to create a FUSE mount of a user-accessible directory on a centralized mass-storage server.

Prerequisites:
  1.  sshfs installed on Raspberry Pi
  2.  server is running ssh
  3.  pi has server account
  4.  pi has generated ssh ID
  5.  pi has ID loaded in active ssh-key-agent
  6. server pi acct has pi ID in authorized keys list
Server user account is:  pi
Server directory to mount:  /home/pi/Videos
Local directory to mount on:  ./Videos
Cmd: 
   sshfs pi@server.nym:/home/pi/Videos ./Videos

With the mount in place, we can ...
cd Videos
raspivid -o ./raspivideo.h264 -n -k
to store a segment of video to the remote server's file system.

Dual Boot an Asus Chromebook with ChromeOS and Linux

Upgradethe ASUS Chromebook article has a good bit of very useful information about messing with the internals of the chromebook.

Dropbox Source Code

How do I build the Dropbox installer for Linux from source? short and sweet - we should have this for the Raspberry Pi RSN - it may already be out here...

update:  This code did not build successfully on the Raspberry Pi, first try. The problem was during ./configurelibnautilus-extension-dev could not be satisfied because processing of the depends-on fails, reporting a missing newline on an apt config file for the ssh package - no idea WtF reegardz that ther, meh.

Installing a LAMP Server and Wordpress

The article How to Install Apache, MySQL, and PHP on ChrunchBox Linux has a nice description of how to install and configure the LAMP server componenets, including a Wordpress blog install.

2014-06-25

Emacs Backspace Key-mapping

Same old problem running Emacs inside a screen session...



EmacsWiki: Backspace Key:
"
(global-set-key (kbd "C-?") 'help-command)
(global-set-key (kbd "M-?") 'mark-paragraph)
(global-set-key (kbd "C-h") 'delete-backward-char)
(global-set-key (kbd "M-h") 'backward-kill-word)
"



'via Blog this'

stuffz

2014-06-24

graphviz-dot-mode.el #emacs #link

"graphviz-dot-mode.el --- Mode for the dot-language used by graphviz (att)."



'via Blog this'

2014-06-23

Network Interface Bonding

Linux.com :: What can you do with a second Ethernet port?: "To bond two Ethernet interfaces, you must have the bonding module compiled for your kernel (which on a modern distro is almost a certainty), and the ifenslave package (which is a standard utility, although you might need to install it from from your distro's RPM or APT repository)."
'via Blog this'
On a typical two-port motherboard, the Ethernet adapters are named eth0 and eth1, so we will use that for our example commands.
With ifenslave installed, take both Ethernet adapters offline by running
sudo ifdown eth0
sudo ifdown eth1.
Load the bonding module into the Linux kernel with modprobe. There are two important options to pass to the module: mode and miimon.  Mode establishes the type of bond (round-robin, failover, and so on), and miimon establishes how often (in milliseconds) the links will be checked for failure.
sudo modprobe bonding mode=0 miimon=100
will set up a round-robin configuration in which network packets alternate between the Ethernet adapters as they are sent out.
The miimon value of 100 is a standard place to begin; you can adjust if it you really want to tweak your network.
To create an actual bond (which for convenience we'll call bond0), run
sudo ifconfig bond0 192.168.1.100 up
to assign an IP address to the bond, then run
ifenslave bond0 eth0
followed by
ifenslave bond0 eth1
to tie the physical Ethernet interfaces into it.
Round-robin mode is good for general purpose load balancing between the adapters, and if one of them fails, the link will stay active via the other.
The other six mode options provide features for different setups.
  • Mode 1::  active backup, uses just one adapter until it fails, then switches to the other.
  • Mode 2::  balance XOR, tries to balance traffic by splitting up outgoing packets between the adapters, using the same one for each specific destination when possible.
  • Mode 3::  broadcast, sends out all traffic on every interface.
  • Mode 4::  dynamic link aggregation, uses a complex algorithm to aggregate adapters by speed and other settings.
  • Mode 5::  adaptive transmit load balancing, redistributes outgoing traffic on the fly based on current conditions.
  • Mode 6::  adaptive load balancing, does the same thing, but attempts to redistribute incoming traffic as well by sending out ARP updates.
The latter, complex modes are probably unnecessary for home use. If you have a lot of network traffic you are looking to manage, consult the bonding driver documentation. For most folks, bonding's fault tolerance and failover is a bigger gain than any increased link speed. For example, bonding two WAN links gives you load balancing and fault tolerance between them, but it does not double your upstream throughput, since each connection (such as a Web page HTTP request) has to take one or the other route.