linux

CIの時間をボトムアップに短縮する方策

背景 新機能の追加が継続している 既存機能の改修、改善が継続している 時とともにCIの実行時間が増加し続けている 自動テストはときどき失敗する(flaky) CIの成功が、コードレビューを始めるきっかけになっている(CIが成功するまでコードレビューが始まらな…

Bashの設定スクリプト集をBash-it向けに移植した

だいぶ前に、いろんな環境で汎用的に使えるBashのスクリプト集を作っていた。 github.com docker コマンドや kubectl コマンドの接続先をいい感じに管理したくて、自分しか参照できない非公開の Dropbox や Google Drive に接続情報を置いて、必要に応じて半…

利用できるオプションの異なる hostname コマンドに対応する

hostname コマンドには複数の形態があるためたまに困ることがあります。 GNU coreutils の hostname hostname invocation (GNU coreutils) hostname(1) - Linux manual page net-tools の hostname hostname(1) - Linux manual page 困ること MSYS には net-…

bash の /dev/tcp/host/port

これが気になっちゃったので。 linux.die.net /dev/tcp/host/port If host is a valid hostname or Internet address, and port is an integer port number or service name, bash attempts to open a TCP connection to the corresponding socket. /dev/udp…

sudo で実行するコマンドに環境変数を指定したい

背景 たいていの場合は必要最小限の環境変数しか設定されないことになっています。 https://www.sudo.ws/man/1.8.13/sudoers.man.html Command environment By default, the env_reset option is enabled. This causes commands to be executed with a new, …

Linux のパッケージ管理システムの例

社内勉強会で Dependency hell - Wikipedia を読んでいます。 Linux のパッケージ管理システムの例として挙がっているものに知っているものも知らないものもあったのでメモ。 apt Chapter 2. Debian package management Debian のパッケージ管理システム。 d…

Thinkpad X32 のハードディスクを SSD に換装

MBA を買う気が起こらないけど、SSD には興味があったので試しにやってみました。Thinkpad X32 は PentiumM 1.8GHz で RAM 1GB といった程度のスペック。交換したディスクのスペックはこんなかんじ。 型番CSSD-PHM32WJ2 容量32GB SequentialRead:110MB/s, Wr…

APM は OFF にしよう

今さらながらに再確認。 ハードは Thinkpad X32 です。grub の設定を変更。 apm=on だとハイバネートすらできなくなったので、acpi だけ使うことにする。 $ vi /boot/grub/grub.cfg linux /vmlinuz-2.6.32-23-generic root=UUID=..... ro quiet splash apm=o…

ゲストOS側で共有フォルダ上のファイル削除が失敗する

WindowsをホストOS、LinuxをゲストOSとする。ホストOSのどこかのディレクトリを、ゲストOS側でマウント可能なディスクのようにできるのが、 Virtualbox GuestAddition に備わってる機能。なんだけど、ゲストOS側でのファイル削除が失敗(遅れる?)することで、…

macaddress を ifconfig 以外の手段で集めるには?

わりと古くて新しい問題のようです。 ここの記述を元に思考錯誤したらなんかできた。 http://wiki.nbj.co.jp/devel/index.htm?LinuxTips#i22 $ lspci -m|grep Ether|awk '{print $1}'|while read busid; do mac=`lspci -vvs ${busid}|grep -i serial|perl -l…

w と who の違い

同じものだと思ってたら結構違ってた。意外だ。 /usr/bin/who は coreutils に含まれていて、/usr/bin/w は procps に含まれる。 $ ls -l /usr/bin/who -rwxr-xr-x 1 root root 47712 2009-10-06 20:06 /usr/bin/who $ ls -l /usr/bin/w.procps -rwxr-xr-x 1…

/lib/lsb/init-functions

/etc/init.d の下にあるスクリプトが最初にロードしてるので読んでみた。 デーモンプログラムの起動関数とか、プロセスIDを取得する関数とか、ログメッセージ出力用関数が定義されてました。 init.d の下に置くものを作る機会はそうそうないですが、覚えてお…

cd -

シェル変数 OLDPWD に移動します. OLDPWD The previous working directory. This is set when the shell initializes and whenever the directory changes.from man zshall

bonding したインターフェースの振る舞いを試してみる

ifenslave で eth0 と eth1 を bonding したネットワークインターフェース bond0 があるものとします。 active-backup です。 $ cat /etc/network/interfaces auto lo iface lo inet loopback iface bond0 inet dhcp slaves eth0 eth1 bond_mode active-back…

lvs を試してみる

VirtualBox で実験。 DSAS ブログに書いてあることをやるだけなので素振りですね。 DSAS開発者の部屋:こんなに簡単! Linuxでロードバランサ (1) サーバを用意する まずはサーバを 3 つ用意する。 ロードバランサ用に 1 つ。 こいつは家の中の LAN に参加さ…

virtualbox3 で NAT で port forward

ネットワークアダプタを Intel PRO/100 MT Desktop にしていたら、NAT + port forward ができなかった。 たぶん、デバイス名(下の例では pcnet のところ) が e1000 ではないのだと思う。 Key: VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/Protocol,…

debian(lenny) で frame buffer console

最初からカーネル組み込みになっている模様。 手探りなので、ソースはありません。 $ sudo modprobe fbcon FATAL: Module fbcon not found. $ sudo modprobe vga16fb $ which jfbterm /usr/bin/jfbterm $ jfbterm

usb hd の電源を制御

http://osdir.com/ml/hardware.gps.gpsbabel.general/2007-08/msg00029.html usb スキャナの電源制御について問題があるよ,と言う内容だったけど,ここを参考にした. 対象は,ac 電源付きの usb hd. マウントしてないときは電源が切れてて欲しいので,ど…

意外なことが役に立つこともあったりなかったり

僕は知っていた。http://0xcc.net/cdbiff/index.html.ja aptitude show beep Package: beep State: installed Automatically installed: no Version: 1.2.2-20 Priority: 任意 Section: universe/sound Maintainer: Ubuntu MOTU Developers Uncompressed Siz…

パスワードを忘れてしまったら ...

自分だけが使ってるホストで、パスワードを忘れてしまったら ... そんなことは自分には日常茶飯事です。こういうときは、適当な LiveCD を見つけて、CD から OS を起動します。 たいていはレスキューモードとかあるので、/ のデバイスをマウントします。 そ…

Ubuntu のセットアップをした直後

正直あまり気にしてなかったですが、他所に行ったら怒られそうなので。Ubuntu Linux をインストールした直後の状態では、ネットワーク接続が制限されてません。 どうやら、ufw という iptables のラッパーを使うのが作法のようです。有効にするためにこんな…

dhcp だけど自分のホストくらいは名前で参照したくならない?

dhcp かつ Dymanic DNS を使わないことが前提で。 DNS の接続時に自分を登録するのが Dynamic DNS なんだったかな。 Windows のネットワーク接続設定にあるやつ。 でも、普通の LAN ではやってない、と思う。 となると、可能なのはこの 2 つか。 RESOLVER を…

Ubuntu8.10 でカーネルを再構築

libncurses5-dev がないと、menuconfig できません。