投稿

ラベル(Linux)が付いた投稿を表示しています

Rapsodio 13.11.06 (Based on SystemRescueCd) 完成

イメージ
ヘッダファイルを削除することなく容量削減。 容量削減に伴う変更点 make.conf の LINGUAS を en に変更 package.use で seamonkey と gimp に linguas_ja を追加 /usr/share/doc/* を削除 python3を削除 XFCEを削除 JWMを削除 主な追加機能 32bit STD Kernel 3.4.66(SystemRescueCd 3.8.1 パッチ適用, ALSA有効) webm と theora の動画なら SeaMonkeyで再生可能 vorbis 対応のストリーミング・ラジオ再生可能 起動中に起動音が鳴るように変更 標準ログインシェルを zsh から bash に変更 追加したデスクトップアプリ ウィンドウマネージャに Window Maker 採用 システムモニターは xosview インプットメソッドは SCIM & Anthy ブラウザは SeaMonkey 2.21 SeaMonkey アドオン(Compact Menu 2 4.3.1) SeaMonkey アドオン(Adblock Plus 2.4) GIMP 2.8.6 PDFビューワは Evince 2.32.0 アーカイブマネージャは File Roller 2.32.2 ISOファイルサイズ 681MB

近況〜PCとカスタムLiveCDをメンテしてます #5

今日は isofile の生成 マウント場所は “ /mnt/custom ” 。メインOSから “ -o bind ” でもいいが安全を考慮して CD で起動してマウントする。 # mount /dev/sda5 /mnt/custom # export sysrcd=/mnt/custom/customcd/files 昨日作っておいたカーネルを入れる。 # cd $sysrcd/usr/src/linux/arch/x86 # mv -i bzImage /mnt/custom/customcd/isoroot/isolinux/rescue32 /usr/src/, /usr/local/systemrescuecd-code/ などを退避する。 /root, /var/log, /var/cache の中のキャッシュや履歴など要らないファイルを削除する。 /var/chaceh/fontconfig/* は、消しても良いが X11 の初回起動が遅くなるので敢えて残す。 最後に “ / ” のサイズを確認すると 2.4GB だった。 # du -sh $sysrcd 2.4G /mnt/custom/customcd/files CD1枚に収まるんだろうか……。とりあえず squashfs で “ / ” を圧縮するコマンドを叩く sysresccd-custom squashfs これで sysrcd.dat(/mnt/custom/customcd/files/) が作成される。 時間がかかるのでコーヒーブレイク - ♪ - 終わったので最終確認して isofile を出力 # echo "3.5.0-13.11.03" > /mnt/custom/customcd/isoroot/version # sysresccd-custom isogen sysrcd_custom これは早く終わる。しかし…… # ls -lh /mnt/custom/customcd/isofile/*.iso -rw-r--r-- 1 root root 742M 11月 3 13:27 /mnt/custom/customcd/isofile/sysresccd-20131103-132...

近況〜PCとカスタムLiveCDをメンテしてます #4

カーネルモジュールの ALSA を有効にして SeaMonkey の USE フラグを変更することにした。 カーネルの再構築 クロスコンパイルしても 64bit 機を所有してないので、32bit の std カーネルだけアップデートする。自分しか使わないんだけど一応、32bitマシンならどこへ持って行っても起動できるようにモジュールは減らさない。実機にインストールしているカーネルとは違い沢山のモジュールがあるため時間がかかるが我慢。ALSA を有効にし、全てのサウンドドライバをモジュール化したコンフィグでビルド。 # cd /usr/src/linux # make menuconfig # make # make modules # make modules_install 以前の 32bit 版 std カーネルのモジュールを削除する # rm -rf /lib/modules/3.4.37-std* SeaMonkey と追加インストールされるパッケージの USE フラグは下記のように “/etc/portage/package.use” に追記する。 www-client/seamonkey custom-optimization gstreamer pulseaudio startup-notification system-cairo system-icu system-jpeg system-sqlite wifi dev-db/sqlite secure-delete media-plugins/alsa-plugins pulseaudio ffmpeg libsamplerate speex media-plugins/gst-plugins-meta ffmpeg alsa flac ogg oss pulseaudio theora vorbis media-libs/flac ogg sse media-libs/libsndfile alsa sqlite minimal media-libs/libsamplerate sndfile media-video/libav alsa oss pulseaudio theora truetype vdpau vorbis speex virtual...

近況〜PCとカスタムLiveCDをメンテしてます #3

昨日のつづき 今日は、LiveCDから作業するんでは無くメインの Gentoo で起動して chroot する。 LiveCD のカーネルは ALSA を無効にしてるので音楽すら聞けず淋しいから。 昨日は、/mnt/custom/customcd/files/ に chroot しましたが、今日は /dev/sda5 の /home 直下に掘ってあるディレクトリに直接入ります。 $ su - # export sysrcd=/home/customcd/files # mount -o bind /dev $sysrcd/dev # mount -vt devpts devpts $sysrcd/dev/pts # mount -vt tmpfs shm $sysrcd/dev/shm # mount -vt sysfs sysfs $sysrcd/sys # mount -vt proc proc $sysrcd/proc # mount -o bind /run $sysrcd/run # chroot $sysrcd /usr/bin/env -i \ > TERM=$TERM HOME=/root PATH=/bin:/usr/bin:/sbin:/usr/sbin \ > /bin/bash --login # source /etc/profile && env-update 【注】行頭の “ > ” は、PS2(第二プロンプト)です。 パッケージのアップデートは、朝起きたら全て終了していたので今日はカーネルを再構築する。 「カーネルのバージョンは上げる、ソースは emerge で取得して楽をしたい」 という気になったので、layman を活用して SystemRescueCd の overlay からソースもパッチも頂く事にした。 portage ツリーは SourceForge の git リポジトリにあるので、まずは git のインストール。( 参照 ) # emerge -av dev-vcs/git 次に portage ツリーの取得 # cd /usr/local # git clone git://git.code.sf.net/p/systemrescuecd/c...

近況〜PCとカスタムLiveCDをメンテしてます #2

1383286223: === (168 of 227) Compiling/Merging (x11-apps/xsetroot-1.1.1::/usr/p ortage/x11-apps/xsetroot/xsetroot-1.1.1.ebuild) 1383286244: *** Finished. Cleaning up... 1383286244: *** exiting unsuccessfully with status '1'. 1383286258: *** terminating. 168で連勝が止まった(笑) /var/tmp/portage/x11-apps/xsetroot-1.1.1/work/xsetroot-1.1.1/xsetroot.c:47:28: fatal error: X11/bitmaps/gray: No such file or directory compilation terminated. make[2]: *** [xsetroot.o] Error 1 make[2]: Leaving directory `/var/tmp/portage/x11-apps/xsetroot-1.1.1/work/xsetroot-1.1.1_build' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/x11-apps/xsetroot-1.1.1/work/xsetroot-1.1.1_build' make: *** [all] Error 2 X11/bitmaps/gray: No such file or directory ls で見ると bitmaps ディレクトリごと無かった。これは "sysresccd-cleansys devtools" を実行していたから。 目的のファイルを含むパッケージを探す。 # equery b /usr/include/X11/bitmaps/gray * Searching for /usr/include/X11/bitmaps/gray ... x11-misc/xbitm...

近況〜PCとカスタムLiveCDをメンテしてます

イメージ
近況 100GB の内臓 HDDで適当に切っていたパーティションを切り直し各サイズを変更した。過去は、XP が入っていた HDD にFreeBSD と Gentoo をデュアルブートするためのレイアウトだった。 /dev/sda1 50GB (FreeBSD) /dev/sda5 15GB / /dev/sda6 2GB swap /dev/sda7 ALL /home わずか数週間後に FreeBSD は、削除して  /dev/sda1 は Gentoo の /usr/local に割り当て。これで数年使ってたが、空き領域が減るにつれて気に入らなくなったので思い切って再編成。 /dev/sda1 30GB / /dev/sda2 4GB swap /dev/sda5 ALL /home データを退避させる外付け HDD でも持ってたら楽なんだけど、無いので gparted でリサイズしながら移動。使ったのは以前にカスタマイズしていた SystemRescueCd 。この CD のおかげでめでたく再編成完了。 SystemRescueCd は、3.5.0 がベースで 2013年4月からアップデートを行っていなかったのでついでにやってしまう事にした。 3.8.1 がリリースされているが、大きな変更はされてないようなので、 3.5.0 のままパッケージのみをアップデートする。さすがに 7ヶ月も経過するとパッケージ数の少ない LiveCD とは言え 300 を越える更新があった。 Gentoo の場合、依存性が変わるとブロックされるので定期的にメンテしてないと一発でシステム全体のアップデートが困難になる。ということで、 emerge -uDNav @world が通るまでに丸一日かかってしまった。残り 227パッケージのアップデートをやってカーネルも再構築して、更についでに initram も busybox の init スクリプトもごにょごにょ弄る事にする。 ここから予定 これだけはやっておきたい initram の busybox で ctrl と caps lock の入れ替え。 1. まず、 LiveCD の /etc/conf.d/keymaps を編集する。extended_keymaps に ctrl を追加 ...

fontconfig-2.10.92 にアップデート

イメージ
fontconfig を 2.8.0-r1 から 2.10.92 にアップデートしたところ $HOME/.fonts.conf と $HOME/.fonts.conf.d の置き場が変わったようだ。 /etc/fonts/conf.d/50-user.conf によると新しい場所は、 $HOME/.fonts.conf => $HOME/.config/fontconfig/fonts.conf $HOME/.fonts.conf.d => $HOME/.config/fontconfig/conf.d $HOME/.config/fontconfig は、自動で作成されておらず mkdir で。

Linuxセキュリティ標準教科書(Ver1.0.0)無償配布版を入手

イメージ
LPI-Japan が新たな標準教科書を無償公開してくれましたので入手しました。簡単なアンケートに回答するとダウンロードできます。が、「 個人的に勉強目的として利用したい 」にチェックしてるのに事業所云々も答えないとダウンロードできませぬ。 教科書のダウンロードページはこちら https://www.lpi.or.jp/linuxsecuritytext/download.php 情報元はITproのニュース http://itpro.nikkeibp.co.jp/article/NEWS/20131002/508527/ 今更資格取る気は無いけど Linux は、日頃から利用してるので勉強はしたいのです。:)

ウェブサービスにアップしたプロフィール画像がボケる?

イメージ
プロフィール画像をウェブサービスにアップする事があると思いますが、サービス側で縮小されて使われる事がありますよね。その時、思いの外ボケてしまいガッカリすることも……。 筆者は、 GIMP で加工を行なってますのでエクスポートした PNG 画像をインデックス化して減色したり、インターレースにしたりシャープネスフィルタをかけたりと試行錯誤してもボケたまま。ウ~ン、と悩んでるところにふと思いついて、透過処理要らないのにアルファチャンネルも要らないよなと思い、削除したところビンゴでした。 他にも画像形式を変えたり圧縮率を変えたりと意味のない作業を繰り返しサービス側の鯖に無駄な負担かけてすいませんでした m(__)m 背景の透過が必要ないプロフィール画像でボケて困る時はお試しあれ。その道に詳しい人ならこんな悩みは無いんでしょうが、筆者のようなドシロウトさんなら共通の悩みかも?

カーネル 3.4 から 3.10 へ移行する ステップ1

3.4.62 の調子が悪く 3.4.61 にロールバックしたけど 3.10 が LTS になったので移行してみようと思う。まずはコンフィグ。メジャーアップなので、いつも通り大量の英文と闘う。比較するとこんな感じになった。これで今からビルドします。

ラジコ録音スクリプトを使って予約録音

crontabから削除していたので再登録 先ほど投稿 したスクリプトを使う 火曜日から土曜日までの毎日午前3時から90分間の番組を録音 以下は関西エリアで放送されている「もうすぐ夜明けABC」の例 $ crontab -e 0 3 * * tue-sat ~/scripts/radiko.sh -s abc -r 90 >/dev/null 2>&1 radiko.jpの遅延を考慮して 5分〜10分ほど多めに録っておいても良いかも。

radiko.jp の再生、録音で rtmpdump が Segmentation fault

イメージ
昨年の radiko 仕様変更から暫く遠ざかっていたスクリプトの改変に着手。 radiko の仕様変更部分は有志が既にそれぞれの場所で公開されているが、自分の環境では rtmpdump の Segmentation fault がどうしても解消しないでいた。これも radiko のせいだと思い込んでいたが、いくら検索してもそのような事例がヒットしないので、こちら側の問題かもしれない。というわけで本腰を入れて探ってみたがどうしても分からないのでとりあえず USE フラグを変更してみる。 以前は " gnutls ssl -polarssl " gnutls を 無効にして polarssl を有効にしてみたところ rtmpdump がコンパイルエラー。 思い切って gnutls も無効にしてみたところセグフォ解消したではないか。 結局深く追求しないまま " ssl -gnutls -polarssl " で一件落着という事にする。 スクリプト内容は、有志により公開されているコードと過去に使用していたものをマージする事にした。 ヘルプ部分の選局は大阪の例。

Android で Radiko を録音しPCで曲だけを抽出する

イメージ
以前は rtmpdump と mplayer で再生も録音もしてたが、 Radiko  の仕様変更により面倒くさくなって投げ出していた。Flash も入れてないので視聴すら出来ない状態。 Android では Raziko というアプリで簡単に録音できる。これで録音してPCにコピーし曲だけを抽出してみた。Raziko で録音したファイルは /sdcard/raziko/ の中に mpeg4 オーディオの形式で保存されている。(オプションで mp3 で出力することも出来る) 録音されたファイルを PC にコピーして SoX (Sound eXchange) でトリミングするわけですが、拡張子 .aac では SoX が弾くので .m4a に変更する。ついでにファイル名も短くするためシンボリックリンクで間に合わせる。 $ ln -sv ファイル名.aac in.m4a 0.5秒間の静音でファイルを切り出しvorbisに変換する。 $ sox in.m4a out.ogg silence 1 0.1 0.1% 1 0.5 0.1% : newfile : restart カレントディレクトリに out001.ogg, out002.ogg という連番ファイルが出来ているので EasyTag などでタグを作成しファイル名を変更しておしまい。 日本語訳された SoX のマニュアルを参考にしました。 SoX, SoXI, soxformat マニュアルページ日本語訳 http://www.hcn.zaq.ne.jp/___/unix/sox-ja.html

pulseaudio のシステムワイド設定で悩む

イメージ
/etc/pulse/system.pa に load-module module-alsa-sink とか load-module module-alsa-sink device=hw:0,0 を追加すると起動できなくなる。 試しに root で pulseaudio --sytem=1 でやってみるとこのようなエラーが。 D: [pulseaudio] alsa-util.c: Trying hw:0,0 with SND_PCM_NO_AUTO_FORMAT ... I: [pulseaudio] alsa-util.c: Error opening PCM device hw:0,0: Device or resource busy E: [pulseaudio] module.c: Failed to load module "module-alsa-sink" (argument: "device=hw:0,0"): initialization failed. E: [pulseaudio] main.c: Module load failed. E: [pulseaudio] main.c: Failed to initialize daemon. ちなみに fuser -v /dev/snd/* としても何も出てこない。 で、module-alsa-sink の位置を udev の上に貼ってみたらすんなり起動した。 load-module module-alsa-sink device=hw:0,0 ### Automatically load driver modules depending on the hardware available .ifexists module-udev-detect.so load-module module-udev-detect .else ### Use the static hardware detection module (for systems that lack udev/hal support) load-module module-detect$ .endif 起動はしたがこれで良いのかどうか分からない。 でもシステ...

Android マスコットキャラの cowfile を書いてみた

イメージ
探したけど見つからなかったので書いてみたよ。初 cowfile です。ちょっと太り気味なAndroid君になった。 ファイルの置き場は ${HOME}/.local/share に cows ディレクトリを掘って COWPATH に代入して使う。 ファイルを置く場所はどこでもOK 検索時に見つけたんだけど Cowsay for Android ってのもあるんだなぁ。 $ mkdir $HOME/.local/share/cows $ echo "export COWPATH="$HOME/.local/share/cows" >> ~/.bashrc $ . ~/.bashrc cowfile は droid.cow としてこんな感じで。 $the_cow = <<"EOC"; $thoughts \\.--./ $thoughts / . . \\ _ |________| _ | || || | |_|| ||_| |________| | | | | |_| |_| EOC

au ホームスポットキューブで無線LANに挑戦

イメージ
諸事情により、というか気まぐれにより昨年の夏ごろに固定回線を解約していました。暫くネットの無い生活を送っておりましたが、昨年の暮れごろにスマホデビュー致しまして WiMAX + USB テザリングにてネット生活を再開しました。しかし、室内に於いて WiMAX の電波が非常に悪く、妻に頼んで固定回線の再契約をしてもらいました。昨年までは KDDI のメタル回線 ADSL 50MB (非無線環境)でしたが昨日から J:COM ケーブル 160MB + au ホームスポットキューブ になりました。 今までは無線環境が無かったため、それに伴う知識などは全くスルーしていました。なので改めて Linux での無線LAN 環境をお勉強する事になりました。 一応カーネルにはパソコン内臓の無線NICのモジュールだけはオンにしてあり、必要なパッケージもインストール済みだったので後は設定だけでしたが、やはり初無線という事もあり WEP だの WPA だの SSID だのと用語がチンプンカンプンです。 とりあえずは Gentoo ですので /etc/conf.d/net に wlan0 の設定を書いて net.lo の シンボリックリンク貼りゃ出来るかなと思ってたがここで必要になったのが、無線特有の設定項目。(当たり前ですがネ) Gentoo のドキュメント見たが書いてる事のどれが必要なのかサッパリだった。 あれやこれやと格闘する事 6時間。思い立って 192.168.0.254 に接続し WiFi-HOMESPOT 設定ツール のログを見てみた。 May 12 23:23:38 KDDI暗号設定が失敗しました 何だと!? 一度頭も今までの設定もまっさらにして初めからやってみた。 すると wpa_passphrase で生成した psk の値が違うではないか! 要するにホームスポットキューブのウラ面に書いてあるパスワードの「6」を「8」と読み間違えて入力していたのだ! もうね、歳のせいで小さい文字は読めないんですよ!(今年で47歳) wpa_passphrase に辿り着いたのが調べだして1時間後くらいだったから、丸5時間無駄なあれこれやってたのだ……。DHCPで取得したアドレスがリンクローカル(APIPA)だったりipv6だったりとか。 ...

Longterm Kernel 3.4.43

Version: 3.4.43 (longterm) Released: 2013-05-01 Source: linux-3.4.43.tar.xz PGP Signature: linux-3.4.43.tar.sign Patch: patch-3.4.43.xz ( Incremental ) ChangeLog: ChangeLog-3.4.43 アップデートサイクル早いね 毎週カーネルの再構築やってる

emerge --backtrack オプションの信用性ってどうなの?

It may be possible to solve this problem by using package.mask to prevent one of those packages from being selected. However, it is also possible that conflicting dependencies exist such that they are impossible to satisfy simultaneously.  If such a conflict exists in the dependencies of two different packages, then those packages can not be installed simultaneously. You may want to try a larger value of the --backtrack option, such as --backtrack=30, in order to see if that will solve this conflict automatically. For more information, see MASKED PACKAGES section in the emerge man page or refer to the Gentoo Handbook. 最近になってこれをよく見かけるようになったけど --backtrack オプションって信用できるのか? よく理解できないままエラーだけクリアされていくのはちょっと怖いな。後々大きなトラブルになってしまいそうな気がする。

dev-libs/icu のアップデート

dev-libs/icu:0 (dev-libs/icu-51.1::gentoo, ebuild scheduled for merge) pulled in by (no parents that aren't satisfied by other packages in this slot) (dev-libs/icu-49.1.2::gentoo, ebuild scheduled for merge) pulled in by dev-libs/icu:0/0= required by (dev-lang/php-5.4.13::gentoo, installed) dev-libs/icu:0/0= required by (dev-libs/libxml2-2.9.0-r2::gentoo, installed) dev-libs/icu:0/0= required by (media-libs/harfbuzz-0.9.12::gentoo, installed) =dev-libs/icu-49* required by (app-office/libreoffice-bin-3.6.4.3::gentoo, installed) dev-libs/icu:0/0= required by (media-libs/libvisio-0.0.26::gentoo, installed) dev-libs/icu:0/0= required by (media-libs/libcdr-0.0.13::gentoo, installed) >=dev-libs/icu-49.1.1-r1:0/0= required by (www-client/chromium-26.0.1410.43::gentoo, installed) (and 1 more with the same problems) うーむ。libreoffice-bin が dev-libs/icu のバージョンアップを拒否してるので chromium とバッティングするようになってしまった。とりあえずは package.mask で icu-49 のままにしておけるが、次の libre...

Window Maker と tint2 の相性が良い

イメージ
今更ながら Window Maker と tint2 の相性の良さに気づいた。Window Maker を使ってるとパネルなんて要らないかなと思ってたが、縦解像度が 800px のディスプレイだと下の領域が少し余るので試しに入れてみたらかなり良い感じ。ちょうど 32px 空いてるのでタスクパネルとしてジャストフィット。それに tint2 のビルトインアプレットのおかげで wmbattery と wmsystemtray をドックから追い出す事ができた。 volman とか入れると wmmixer も必要なくなるが一応飾りとして入れ替えずに使ってる。:) ワークスペースの余白を 5px とっているのでクリップをマウスオーバーで自動的に全面表示に。また最大化ウィンドウがあっても余白部分でアプリケーションメニューやウィンドウリストメニューに もマウスでアクセスできる。Window Maker 側のミニアイコン(最小化時のアイコン)は WPrefs で無効にしている。 唯一難点を言えば tint2 のマルチデスクトップ表示は狭い画面には厳しい。オーソドックスなページャーが欲しいがアレコレ追加すると本末転倒だしシンプルさに欠けていくので我慢する! スクリーンショットにある主だったアプリケーション Window Maker - 0.95.4 SeaMonkey - 2.17.1 Terminal - 0.4.8 SpaceFM - 0.8.5 wmclock wmcpuload wmmemload wmnetload wmmixer wmmp Window Maker は現在でもアクティブに開発が続いているプロジェクトですので、これを読まれた方は今一度見直してみてはいかがでしょうか? ドックアプリの更新が寂しい限りではありますが。XD