tmux with screen-like key-bindings

I recently starting switching from screen to tmux for my daily workflow, partly triggered by the increasing use of tmate for pair-programming sessions.

For that purpose I wanted the key-bindings to be as similar as possible to the ones I am used to from screen, which mostly involving the prefix (hotkey) from Ctrl-b to Ctrl-a. This is achieved in the awesome tmux configuration file ~/.tmux.conf by

set-option -g prefix C-a

Now in screen, you can send the hotkey through to the application by typing Ctrl-a followed by a plain a. I use this frequently, e.g. for sending Ctrl-a to the shell prompt instead of pos1. Tmux offers the send-prefix command specifically for this purpose, which can be bound do a key. My ~/.tmux.conf file already contained

bind-key a send-prefix

According to the tmux manual page, this complete snippet should make it work:

set-option -g prefix C-a
unbind-key C-b
bind-key C-a send-prefix

but it was not working for me! :-(

Continue reading

A nice little chat on IRC

Day changed to 30 Okt 2014
(13:09) <metze> 217b4b60fd602bad569e7e06adabe308e23c5807
(13:22) <obnox> 105724073300af03eb0835b3c93d9b2e2bfacb07
(13:22) <obnox> rw = brl_get_locks_internal(talloc_tos(), fsp, false);
(13:28) <obnox> 5d8f64c47d02c2aa58f3f0c87903bbd41d086aa0
(13:30) <metze> 77d2c5af511d60b3437b9cfa2113283ed2aa6194
(13:33) <obnox> 29bf737
(13:34) <obnox> d0290a9
(13:34) <obnox> 4e9b4a5
(13:34) <obnox> 7a6cf35
(13:53) <metze> dd33241d29122721edd35e2d53992939ef556c1a
(13:57) <obnox> 5633861c4b6f22b09a9fa0bf91fdeb43b4f3558b


Powershell Cheat Sheet

Here are a few Powershell commands I used for testing and analysis of SMB3 Multi-Channel:

Get-SmbMultiChannelConnection [-IncludeNotSelected ]

Especially the “-IncludeNotSelected” to Get-SmbMultiChannelConnection is
useful when debugging connection problems with Multi-Channel setups.

Interestingly, by appending a filter pipe to these commands, one can
produce more output, e.g.:

Get-SmbMultiChannelConnection | fl * | more

(fl is synonymous Filter-List)
This seems slightly strange at first but is actually quite handy.

Demo of SMB3 multi-channel with Samba

Version 3 of the SMB protocol was introduced by by Microsoft with Windows Server 2012. One of the compelling features is called “multi-channel” and gives the client the possiblitly to bind multiple transport connections to a single SMB session, essentially implementing client-controlled link aggregation at the level of the SMB protocol. The purpose of this is (at least) twofold: Increasing throughput, since the client can spread I/O load across multiple physical network links, and fault-tolerance, because the SMB session will be functional as long as one channel is still functional.

A Samba-implementation of multi-channel is still work in progress, but already rather advanced.

Here is a screencast demo of how that already works with latest WIP code:

Continue reading

git: rebasing all commits of a branch

I have been searching for this feature a bit, so I note it down here for easier retreival…

Interactive rebasing (git rebase -i) is one of the most awesome things about git. Usually my call pattern is git rebase -i COMMIT1. This will present all commits of the current branch after COMMIT1 in the rebase editor. I.e. with this syntax, you always need the parent commit of the first commit you want to see in rebase. But sometimes one needs to interactively rebase all commits, e.g. when preparing a new branch before publishing it.

After playing with inserting a “x false” as the topmost line in the rebase editor, which works, I now found that git (of course :-) ) has a syntax for this:

Continue reading

Running Debian Squeeze as libvirt/kvm Guest on Ubuntu

I struggeled for a while with Debian Squeeze, trying to persuade it to run as a libvirt/kvm guest on my Ubuntu 12.04 host. After successful installation, the guests failed to boot the kernel with the messages:

Loading Linux 2.6.32-5-amd ...
unaligned pointer 0x8ebf0002
Aborted. Press any key to exit.

For my own reference, I record here the solution I just found after trying all sorts of things like installing different versions of grub into the virtual machine:

Continue reading

Samba Team Visits Microsoft For SMB2.2 Interop Event

In the week of February 27 to March 2, 2012, a few Samba developers accepted an invitation by Microsoft and attended an SMB2.2 testing opportunity at Microsofts Enterprise Engineering Center in Redmond. Jeremy Allison, Steve French, Volker Lendecke, Chris Hertel, Christian Ambach, Matthieu Patou and I found our way to Redmond with Stefan Metzmacher participating to some extent via IRC and mumble. For me, the event was a big success, and I am happy that I finally made up my mind to go there.  This is my personal report.

Continue reading