Mazn.net

やってみて 調べてみて 苦労しなけりゃ 箱は動かじ

fedora

Fedora 17を19にアップグレードする

Fedora 17 のサポートが気づいたら終わっていたので、最新の19にアップグレードしました。ちなみに、Fedora 19へのアップグレードは、17以降でないとだめなので、16以前のFedora を使っている場合は、17までアップグレードしておく必要があります。

必要なファイルはバックアップしておきます。私の環境はVMwareなので、仮想マシンのイメージ丸ごとバックアップしました。

次に、rpmnew ファイルや rpmsave ファイルを整理しておきます。

# find /etc /var -name '*?.rpm?*'

上記コマンドでrpmnewファイルが表示されたら、今のファイルのバックアップをとり、必要に応じて差分を反映しておきます。

次に不要なパッケージを削除しておきます。不要なファイルは下記のコマンドで検索できます。

# package-cleanup --leaves

問題なさそうならば一気に削除しましょう。(問題ないかどうかの判断は難しいですが・・・)

# rpm -e `package-cleanup --leaves | sed '1d'`

削除に、もう一度検索し、他に表示されないかもう一度確認しておきます。他に表示されたら必要に応じてもうちど削除しましょう。

 

最後にアップグレードです。fedupツールを使います。 ※ 最初、preupgrade コマンド使うと私の環境では再起動後インストールが始まらず、失敗しました。再起動後にマウスカーソルしか表示されなかったので、GUIが立ち上がらないのが原因かと思い、vmware本体やvmware-tools をアップデートし、vmwareのディスプレイの設定で、3Dアクセラレーションを無効にしました。preupgradeが原因なのか、これらの設定変更が有効に働いたのかは追求していませんが、同じ状況に陥った人がいれば試してみてください。

# yum instlal fedup

私はGUIを使ってないので、cli版のコマンドでアップデートします。

# fedup-cli --network 19 --debuglog /root/fedup.debug.log

ネットワーク経由でダウンロード、インストールが始まります。

コマンドが正常終了し、手動で再起動すると、Upgrade ・・・  というのがGRUBの起動画面の先頭行に表示されるので、これを選択するとアップデートの続きが始まります。終了まで1時間以上かかりました。

 

 

 

レスキューモード(シングルユーザモード)で起動する@Fedora 17 (RHEL7?)

※ 2015/4/24追記 : RHEL7やCentOS7はブート画面でレスキューモードを選択できるように改善されたため、この記事のような難しい操作は不要です。

 

RHEL16まで、起動時にランレベル1(シングルユーザーモード)で起動するには、grub起動時にカーネルパラメータに"1" というパラメータを追加すれば可能でした。これはパスワードなしでログインできるため、rootのパスワードを忘れてしまった場合などにもよく使われていました。

しかし、RHEL7からはsystemdが採用されるようなので、この方法ではランレベル1(相当)の起動はできなくなります。現時点ではまだ、RHEL7はリリースされていないので、Fedora17を例に起動方法を紹介します。

 

Fedora 17 では、systemd 採用のためそもそもランレベルとう概念がなくなりました。代わりに、レスキューターゲットエマージェンシーターゲットの二つが用意されています。

レスキューターゲット(rescue.target) は、今までのランレベル1相当(シングルユーザーモード相当)です。 一方、エマージェンシーターゲット(emergency.target) はレスキューターゲットでも起動できない、つまりルートファイルシステムもマウントできないような時に使用するためのターゲットのようです。

これらのターゲットで起動するには、最初の以下のgrub2の起動画面で、"e" を押します。

grub2boot

 

すると、grub2の設定ファイルの画面になるので、linux という行に、"systemd.unit=rescue.target" または "systemd.unit=emergency.target" というパラメータを追加します。

emergency

上記では、エマージェンシーターゲットを指定した例です。後は、F10 を押すと起動しますので、煮るなり焼くなりお好きにしてください。

KVM on KVM @ Fedora 17

最近のLinuxカーネルは、KVMのネスト (KVMのゲストOS上でKVMを動かす)ができますのでやってみました。 ※古いカーネルではできないようですが、Fedora 17のカーネルは対応済みです。

デフォルトは、ネスト機能がOFFになっています。

# cat /etc/issue
Fedora release 17 (Beefy Miracle)
Kernel \r on an \m (\l)
# cat /sys/module/kvm_intel/parameters/nested
N

ホストOS(Fedora 17)の設定を変更します。/etc/modprobe.d/kvm-nested.conf ファイルを作って以下を記述。

options kvm_intel nested=1
モジュールをリロード
# modprobe -r kvm_intel
# modprobe kvm_intel
ちなみに、KVMがすでに動いていると、-r する時に以下のようなエラーが出てしまいますので注意してください。
FATAL: Module kvm_intel is in use.
有効になったことを確認します。
# cat /sys/module/kvm_intel/parameters/nested
Y
次にゲストOSの設定です。普通にvirt-managerでゲストを作ると、ゲスト内でのCPUのタイプが"QEMU Virtual CPU"となり、仮想化を使うことができません。(表示例はゲストOSにCentOS6を使用)
# cat /proc/cpuinfo | grep -e "model name" -e "vmx"
model name      : QEMU Virtual CPU version 1.0.1
よって、一端ゲストOSを停止し、CPUのタイプを変更します。Fedora 17の仮想マシンマネージャーでは、以下のように"ホストCPUのコピーの設定"というボタンがあるので、これをクリックするだけです。
virtmanager
私のホストの環境は、"Intel(R) Core(TM) i5 CPU   661  @ 3.33GHz"で、ボタンをクリックすると上記のように"Westmere"が自動的に設定されました。ちなみに、設定前と設置後のゲストOSの設定xmlファイルのdiffを見ると以下のように行が追加されていました。
     <pae/>
   </features>
+  <cpu mode='custom' match='exact'>
+    <model fallback='allow'>Westmere</model>
+    <vendor>Intel</vendor>
+    <feature policy='require' name='tm2'/>
+    <feature policy='require' name='est'/>
+    <feature policy='require' name='monitor'/>
+    <feature policy='require' name='ss'/>
+    <feature policy='require' name='vme'/>
+    <feature policy='require' name='dtes64'/>
+    <feature policy='require' name='rdtscp'/>
+    <feature policy='require' name='ht'/>
+    <feature policy='require' name='ds'/>
+    <feature policy='require' name='pbe'/>
+    <feature policy='require' name='tm'/>
+    <feature policy='require' name='pdcm'/>
+    <feature policy='require' name='vmx'/>
+    <feature policy='require' name='ds_cpl'/>
+    <feature policy='require' name='pclmuldq'/>
+    <feature policy='require' name='xtpr'/>
+    <feature policy='require' name='acpi'/>
+  </cpu>
   <clock offset='utc'/>
   <on_poweroff>destroy</on_poweroff>
では、再度ゲストOSを起動し、ゲスト内でCPUの情報を見てみます。
# cat /proc/cpuinfo | grep -e "model name" -e "vmx"
model name      : Intel(R) Core(TM)2 Duo CPU     T7700  @ 2.40GHz
flags           : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush 
mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc arch_perfmon rep_good unfair_spinlock 
pni pclmulqdq vmx ssse3 cx16 sse4_1 sse4_2 popcnt aes hypervisor lahf_lm
model name      : Intel(R) Core(TM)2 Duo CPU     T7700  @ 2.40GHz
flags           : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush 
mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc arch_perfmon rep_good unfair_spinlock 
pni pclmulqdq vmx ssse3 cx16 sse4_1 sse4_2 popcnt aes hypervisor lahf_lm
ホストとはCPUのmodelが異なりますが、仮想化を使うためのvmxビットがうまく立ちました。
ゲストOS上でのゲストOSの作成は特に特別な操作は必要ありません。

systemdやsystemctlコマンドを少し調べてみた

systemd が使いにくいので避けていたのですが、やっとFedora 15 を 17 にアップデートしてみました。実はFedora 15もsystemdを採用しているがまだ随分とSystemV系のスクリプトが残っていた。しかしFedora 17ではsystemdを使いこなさないとサーバ運用できないので、調べた結果をまとめてみた。 (Upstartは短命だったな。。。)

まずは、どんなサービスがあるか一覧を確認。

# systemctl --full list-unit-files
UNIT FILE                               STATE
proc-sys-fs-binfmt_misc.automount       static
dev-hugepages.mount                     static
dev-mqueue.mount                        static
media.mount                             static
proc-sys-fs-binfmt_misc.mount           static
sys-fs-fuse-connections.mount           static
.... (省略) ....
httpd-event.service                     disabled
httpd-worker.service                    disabled
httpd.service                           disabled
ip6tables.service                       enabled
iptables.service                        enabled
... (省略) ....

Apache (httpd.service)  は無効(disabled)になっているのが分かるし、ファイアウォール(iptables) は有効(enable)になっているのが分かる。static はおそらくシステム必須のもので変更できないやつかな?(後で調べてみよう)

ちなみに、関連するファイルは/usr/lib/systemd/systemにあるみたい。/usr/lib/systemd/system/httpd.service ファイルの中身はFedora 17の場合こんな内容だった。

[Unit]
Description=The Apache HTTP Server (prefork MPM)
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/var/run/httpd/httpd.pid
EnvironmentFile=/etc/sysconfig/httpd
ExecStart=/usr/sbin/httpd $OPTIONS -k start
ExecReload=/usr/sbin/httpd $OPTIONS -t
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/usr/sbin/httpd $OPTIONS -k stop
PrivateTmp=true

[Install]
WantedBy=multi-user.target

 

起動してみる。 /etc/init.d/のスクリプト実行するのと比べてコマンド打つのが少し面倒になった。

# systemctl start httpd.service

停止はstartをstopにするだけ。

# systemctl stop httpd.service

 

上記はあくまで手動での起動・停止なので、次はシステム起動時に自動的に起動できるようにしてみる。

# systemctl enable httpd.service
ln -s '/usr/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service'

System Vと同じく、シンボリックリンクを作って自動起動を制御しているみたいなので、手動でシンボリックリンク作ってもいけそうだ。

有効になったかどうかを確認してみると、無事enableになったのが確認できた。

# systemctl --full list-unit-files | grep httpd.service
httpd.service                           enabled

無効はenableの逆、disalbe を使う。

# systemctl disable httpd.service
rm '/etc/systemd/system/multi-user.target.wants/httpd.service'

 

以上、基本操作はこんなところでしょうか。そのうちシステムの起動プロセスも調べてみよう。

CPU を Ivy Bridge に変更したら early exception 0d rip error が出た@Fedora 15

CPUを古いAMDのAthlonから、IntelのIvy Bridge (i5) に変更しました。

Intelの仮想化支援機能vtをBIOSで有効にして、Windows上のVMware Server 2でFedora 15  (64bit) を実行すると、以下のエラーがFedora起動時に出て起動できませんでした。

early exception 0d rip error

おそらく最新のCPUにVMware Server 2.x が対応していないと思われるし、すでにメンテナンスもされていないので改善される見込みも薄い。ということで、VMware Player 5 に仕方なく乗り換えたら、うまく動いてくれました。

Thinkpad USB Trackpoint キーボードでスクロール@Fedora 17

Fedora 17 上で、Thinkpad USB Trackpoint キーボードの中クリック+ポインターでスクロールするための設定メモです。

/etc/X11/xorg.conf.d/20-thinkpad.conf とうファイルを作って、以下を記述し、再ログインするだけです。

Section "InputClass"
    Identifier    "Trackpoint Wheel Emulation"
    MatchProduct "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device|Composite TouchPad / TrackPoint"
    MatchDevicePath "/dev/input/event*"
    Option    "EmulateWheel"    "true"
    Option    "EmulateWheelButton"    "2"
    Option    "Emulate3Buttons"    "false"
    Option    "XAxisMapping"    "6 7"
    Option    "YAxisMapping"    "4 5"
EndSection

Google IME (mozc) のインストール@Fedora 17

Google製のLinux用IME、Mozc をインストールしてみた。

# yum install mozc  ibus-mozc

一旦ログアウトし、再ログイン。アプリケーション一覧から、入力メソッド〜を起動し、iBUSの設定を開く。

後は、インプットメソッドから、Mozcを追加し、一番上に移動すれば完了。

設定画面はここから呼び出せないようですが、コマンドラインから起動可能です。

$ /usr/libexec/mozc_tool --mode=config_dialog

Flashのインストール@Fedora 17

LinuxにFlashインストールするのも随分楽になりました。

今ではAdobeがyumのリポジトリを提供してくれているのでこれを利用します。

http://get.adobe.com/jp/flashplayer/ から、adobe-release-x86_64-1.0-1.noarch.rpm をダウンロードしインストールします。

# rpm -ivh adobe-release-x86_64-1.0-1.noarch.rpm

後はyumコマンドでインストールすれば完了

# yum install flash-plugin.x86_64

AutoKeyでLinuxのキーボード操作をカスタマイズ@Fedora 17

Linux でキーボード操作を、AutoKey というアプリでカスタマイズしてみました。

Fedora 17 にはパッケージがすでに用意されているので、yum で簡単にインストール可能です。

# yum install autokey

インストール後、以下のアイコンが登録されるので、クリックして設定画面を開きます。

設定画面が開かない場合、Fedora 17のGnome3の場合、右下隅にマウスをもっていくと、Windowsのタスクトレイのような物が出てきて、そこにアイコンがある場合があるので、そこから設定画面を開きます。ちなみにAutokeyの右のアイコンはeasystrokeという汎用のマウスジェスチャアプリで、これも便利です。

設定画面ではサンプルの設定が登録されていますが、とりあえず自分専用のフォルダを作ります。ここでは、ホームディレクトリの、.my_autokey というディレクトリを指定しました。

今回は、サンプルとして、Firefox で、Windowsキー + 1 で、左のタブに移動する設定を追加してみます。

 

Firefox というサブフォルダを作り、そこに New Script で設定を追加します。設定名は left-tab にしました。

Firefox で左のタブに移動するショートカット(Ctrl +Shift + Tab) を、右のスクリプトに以下のように記述します。 ※赤丸のボタンを押すと、キー操作を記録できるので、そこからスクリプトを作成してもOKです。

次にホットキーを登録します。HotKey の Set をクリックし、"Press to Set" をクリックし、登録したいホットキー "Windows + 1" を押すと下のように登録されます。なお、画面を見てわかるとおり、キーは Ctl, Alt, Shift, Super(Window) キーしか組み合わせができないようです。無変換キーと組み合せたい場合は、無変換をこれらのキーの代わりに使えるようにキーのマッピングを変えてあげると便利です。

最後は、Firefox のウィンドウ上だけ有効にするための設定の追加です。Window Filter から、"Navigator" と入力し登録します。

Navigator というのは、Firefox のウィンドウクラス名です。

クラス名なんて普通わかりませんので、わからない場合は、xprop コマンドで調べましょう。コマンドを起動後マウスカーソルが+に変わるので、Firefox のウィンドウをクリックすると、クラス名が取得できます。

$ xprop | grep WM_CLASS
<ここでウィンドウをクリックする>
WM_CLASS(STRING) = "Navigator", "Firefox"

あとは、Save ボタンを押して登録完了です。

 

なお、デフォルトでは設定が有効になっていないので、右下のタスクトレイから、Enable にチェックを入れましょう。(これにハマった)

日本語入力のON/OFFのキーを変更する@Fedora 17

Fedora 17 のデフォルトの日本語入力切り替えのキーは、Ctrl + Space ですが、これはいまいち使いにくいので、これを変換キーに変更する。

アプリケーションのアクティビティ一覧から、”入力メソッドセレクター” を起動。

IBusの設定を開いて、"切り替え"に"Henkan"を入力して、適用し、ログインし直せば完了です。

無変換キーをWindowsキーに変更する@Fedora 17

日本語キーボードには、無変換キーがあるが、Linux では使う機会がないので、Windows キーに変更してみた。

よくある Ctrl キー  と Caps キーを入れ替えるのと同じ。

~/.Xmodmap に以下を記述

keycode 102 = Super_L

設定反映

# xmodmap ~/.Xmodmap

keycode がわからない場合は xev コマンドでも使ってください

Fedora 16 のLive CD (iso) を USBメモリから起動する @ grub2

まずはじめに、結論から言うと、Ubuntu の iso はUSBメモリから直接起動できますが、Fedora 16 の Live CD  は、そのままでUSBメモリから起動できません。起動するには、iso 内のあるファイルにパッチを当てる必要があります。このページではその話も含めて記述しています。

 

まずは、USB メモリに grub2 をインストールします。インストールはここを参考にしましたが、簡単に書くと、私の場合は ubuntu-11.10-desktop-i386.iso の Live CDを使ってPCをCD起動し、USBメモリを挿して、以下のコマンドをrootで実行しました。/media/usb が USB のマウント先、/dev/sda がUSBメモリのデバイスです。環境によってデバイス名は異なるので、環境に合わせて読み替えてください。(読み替えないと最悪起動しなるので注意)

# grub-install --no-floppy --root-directory=/media/usb /dev/sdb

すると、USBメモリに、/boot/grub ディレクトリや各種必要なファイルが作られます。

次に、Fedora 16 Live Desktop の isoイメージ (Fedora-16-i686-Live-Desktop.iso) を USB メモリにコピーします。今回は、/boot/grub/iso にコピーしました。

さらに、/boot/grub/grub.cfg を以下のように記述することで、ある程度までUSB起動できるようになりますが、起動中に rootファイルシステムが見つからないとdracut がエラーを出して止まります。

menuentry "fedora-16-i686-live-desktop.iso" {
loopback loop /boot/iso/fedora-16-i686-live-desktop.iso
linux (loop)/EFI/boot/vmlinuz0 root=live:/boot/iso/fedora-16-i686-live-desktop.iso rootfstype=auto ro liveimg rhgb rd.luks=0 rd.md=0 rd.dm=0
initrd (loop)/EFI/boot/initrd0.img
}

そこでパッチの登場です。isoイメージ内の /EFI/boot/initrd0.img にこのパッチを当てます。(initrd0.img ファイル抜き出して、イメージ展開、再度イメージ化して・・・と結構面倒です) ※ initrd に自分でパッチを当てる場合は、当てた後に/sbin/liveiso-find というファイルが作れるのですが、デフォルトだとパーミッションがおかしいので、-rwxr-xr-x に変更してあげる必要があります。initrdの編集の仕方はこちらを参考にしてください。

そして、grub.cfg の設定を以下のように変更します。

menuentry "fedora-16-i686-live-desktop.iso" {
loopback loop /boot/iso/fedora-16-i686-live-desktop.iso
linux (loop)/EFI/boot/vmlinuz0 root=live:/boot/iso/fedora-16-i686-live-desktop.iso rootfstype=auto ro liveimg rhgb rd.luks=0 rd.md=0 rd.dm=0
initrd /boot/iso/fedora16_new_initrd0.img
}

これで、起動できるようになります。お疲れ様でした。

ちなみに、Ubuntuの場合は、iso を同じ場所に置いて、grub.cfg に以下を追記してあげるだけで iso から起動可能です。

menuentry "ubuntu-11.10-desktop-i386.iso" {
set root=(hd0,1)
loopback loop /boot/iso/ubuntu-11.10-desktop-i386.iso
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/boot/iso/ubuntu-11.10-desktop-i386.iso noeject noprompt --
initrd (loop)/casper/initrd.lz
}

 

最後に、VMware で起動確認する場合は、USBブートできないので、PLoP を使うと便利です。PLoPは、USBブートに対応していないPCを、CDから起動し、USBに処理を渡すことができます。

 

initrd を展開しファイルを編集する @ Fedora 16

Fedora 16 Live CD の initrd を編集する必要があったので、その時のメモです。

作業用のディレクトリを作成します
# mkdir -p /tmp/work
initrdを展開します。
# gzip -cd /boot/initrd.img >/tmp/initrd
# cd /tmp/work
# cpio -i --file=../initrd
これで/tmp/workディレクトリにファイルが展開されますので、好きなだけ編集します。 initrdファイルの再作成は以下の通り。
# cd /tmp/work
# find . -print | cpio -o --file=../initrd_new --format=newc
# cd ..
# gzip -c9 initrd_new > initrd_new.img

USB 起動のLinux環境を作る @ Fedora 16 on Windows 7

CDやDVD起動でLinuxのデスクトップ環境を実現できる Live CDやLive DVDというLinuxがいくつかありますが、USBだと設定保存できるので便利ですよね?

と思って行き着いたのが、Linux Live USB Creator です。

本ソフト、persistentモードといってもちろん設定をUSB上に残せるほか、FAT32 フォーマットのUSBにインストールできるので、残りの容量は通常のUSBメモリとしてWindowsから使えますし、VirtualBox でWindows上で実行もできるという優れものです。

似たようなソフトとしては、Fedora が提供している Live USB Creator (名前似てますが違うもの) とか、Ubuntu では Create a USB startup disk というアプリがありますが、どちらも VirtualBox を一緒にインストールしてくれる機能がないので、いろいろ試した結果、Linux Live USB Creator を選択しました。

 

作り方はすごく簡単なのですが、一点だけ注意が必要で、Windows 7 上で作る場合、管理者権限でアプリを起動しないと、うまく作成できないようで、maznの環境では、起動時にrootファイルシステムがマウントできないといったエラーになったり、画面に何も表示されなかったりしました。

Sony VAIO Z (VPCZ22) にLinux (Fedora 16)入れてみた

Sony VAIO Z (VPCZ22) SSDベンチマークに引き続き、Fedora 16 入れてみました。

何事もなく USB3.0 使えますし、無線LANも問題なく認識。画面もFull HD解像度で出力されます。

めでたしめでたし。

 

と思いきや、どうもタッチパッドの動きがおかしい。

クリック領域で指動かしても、カーソルが動いてしまうので、狙った箇所をクリックできません。

感度も高く、そもそも正確にカーソールを狙った場所に動かすのも難しい。

 

とりあえず、ここを参考に以下のコマンドを実行。感度は丁度よくなりましたが、やはりクリック領域でもカーソル動きます。

どっかのパラメータ触れば、クリック領域を対象外にすることはできそうですが、それはまた今度調べます。

 #!/bin/bash
 <<EOF sed 's/^#.*$//' | sed 's/ *= */=/' | xargs synclient
     LeftEdge                = 2900
     RightEdge               = 4000
     TopEdge                 = 1620
     BottomEdge              = 3900
     FingerLow               = 24
     FingerHigh              = 29
     FingerPress             = 255
     MaxTapTime              = 180
     MaxTapMove              = 221
     MaxDoubleTapTime        = 180
     SingleTapTimeout        = 180
     ClickTime               = 100
     FastTaps                = 1
     EmulateMidButtonTime    = 75
     EmulateTwoFingerMinZ    = 280
     EmulateTwoFingerMinW    = 6
     VertScrollDelta         = 100
     HorizScrollDelta        = 100
     VertEdgeScroll          = 0
     HorizEdgeScroll         = 0
     CornerCoasting          = 0
     VertTwoFingerScroll     = 1
     HorizTwoFingerScroll    = 0
     MinSpeed                = 1
     MaxSpeed                = 1.75
     AccelFactor             = 0.0398089
     TrackstickSpeed         = 40
     EdgeMotionMinZ          = 29
     EdgeMotionMaxZ          = 159
     EdgeMotionMinSpeed      = 1
     EdgeMotionMaxSpeed      = 401
     EdgeMotionUseAlways     = 0
     TouchpadOff             = 0
     LockedDrags             = 1
     LockedDragTimeout       = 5000
     RTCornerButton          = 2
     RBCornerButton          = 3
     LTCornerButton          = 0
     LBCornerButton          = 1
     TapButton1              = 0
     TapButton2              = 1
     TapButton3              = 0
     ClickFinger1            = 1
     ClickFinger2            = 2
     ClickFinger3            = 3
     CircularScrolling       = 0
     CircScrollDelta         = 0.1
     CircScrollTrigger       = 0
     CircularPad             = 0
     PalmDetect              = 1
     PalmMinWidth            = 9
     PalmMinZ                = 199
     CoastingSpeed           = 20
     CoastingFriction        = 10
 #    PressureMotionMinZ      = 29
 #    PressureMotionMaxZ      = 159
     PressureMotionMinFactor = 1
     PressureMotionMaxFactor = 1
     GrabEventDevice         = 1
     TapAndDragGesture       = 1
     AreaLeftEdge            = 0
     AreaRightEdge           = 0
     AreaTopEdge             = 0
     AreaBottomEdge          = 0
 #   JumpyCursorThreshold    = 0
 EOF 

※JumpyCursorThresholdオプションは認識されませんでしたので、コメントアウトしています。

電源ボタンを押して休止状態(ハイバネート)にする@Fedora 14

電源ボタンを押すと、デフォルトではシャットダウンプロセスが走りますが、休止(hibernate)に変更してみました。

まずは、pm-hibernate コマンドで正常に動くかを確かめておいてください。

# pm-hibernate

通常は、数十秒後に電源が落ち、再度電源を投入すると元の状態に戻るはずです。

 

 

あとは電源ボタンを押した時に、今まではshutdownが動いていた箇所をコメントアウトし、pm-hibernateを実行するようにするだけです。

# ACPID config to power down machine if powerbutton is pressed, but only if
# no gnome-power-manager is running

event=button/power.*
#action=/etc/acpi/actions/power.sh
action=/usr/sbin/pm-hibernate

 

awk ' $1 == '$uid_session' && ($2 ~ /gnome-power-manager/ || $2 ~ /kpowersave/ || $2 ~ /kded4/ || $3 ~ /guidance-power-manager/) \ { found = 1; exit } END { exit !found } ' || pm-hibernate

Linuxで汎用マウスジェスチャ@Fedora 14 with KDE

Windows では strokeit という汎用のマウスジェスチャをずっと使ってて、同様のアプリケーションが Linux にもないかずっと探していましたが、やっとめぐり逢えました。

その名もeasystrokeです。

Fedora 14 では yum で簡単にインストール可能です。

まずはインストール。

# yum install easystroke

以上です。次に設定です。以下のように-gオプションで起動すると、GUIの設定画面が立ち上がります。設定はデフォルトでホームディレクトリの.easystrokeディレクトリに保存されます。

# easystroke -g

easystroke.jpg

初めて起動した時、上のようにstrokeitと違って何もジェスチャは定義されていません。ここに、デフォルトの設定、つまり全アプリケーション共通のジェスチャの設定と、アプリケーション固有の設定を追加することができます。たとえば、共通の設定ならば、ウィンドウの最大化、最小化、閉じる(Alt + F4)などを、固有の設定ならばFirefoxならばタブを閉じるなどを設定していきます。固有のアプリケーションを定義したいならば、Add Application をクリック後、出てくるカーソルで起動しているアプリケーションをクリックします。

easystroke2.jpg

定義できるジェスチャはマウスで自由に登録できます。デフォルトではマウスのスクロールボタンがジェスチャーに使用するボタンになっていますが、これは設定で変更可能です。さらにそれぞれのジェスチャに実際の動作を定義します。例えばアプリを閉じるなら"Alt+F4"といった感じです。

しかし、ここで問題が。ウィンドウの最大化・最小化にはKDEではデフォルトでキーボードショートカットが割り当てられていないため、ウィンドウに送るコマンドが定義できません。こういうときは、KDEのショートカットをカスタマイズします。

Fedora 14 のKDEのデフォルトでは、スタートメニューから、”コンピュータ”→”KDEシステムの設定” を起動し、”さらにショートカットとジェスチャー”  をクリックします。さらに”グローバルキーボードショートカット”から、KDEコンポーネントとして”KWin"を選択します。

ここでウィンドウの動作毎のショートカットの定義 が可能ですので、ウィンドウの最大化、最小化に適当にショートカットを割り当てることで、easytrokeで使用することができます。

kde-global-key-shortcut.jpg

最後に、毎回手動で起動するのが面倒だと思うので、easystrokeのpreferenceタブから、Autostart easystroke にチェックを入れてあげれば設定は終了です。

このブログについて
プライバシーポリシー・お問い合わせ等
購読する(RSS)
記事検索
アーカイブ
カテゴリー
  • ライブドアブログ