USBに保存できない
USBの容量が空いているのに、書き込みができなくなった。
どうやらUNIXの仕様の問題らしい。
UNIX系のOSでは、USBに書きこむ場合、inodeと実データを記録するらしい。
inodeには以下の情報がある
- ファイルの所有者
- ファイルのアクセス権
- サイズ
- 作成日時
- 実データの場所
このinodeには記録上限があり、実データだけ消していると、空き容量があるのに書き込めない状態になる。
USB中のinodeは以下のコマンドで確認できる。
df -i
もし、inodeのせいで書き込めなくなったら、消すとよい。私の場合は、USBの中に隠しファイルがあり、そこがinodeだった。普通にrmで消して問題ないようだ。
割と毎日使っているけど初めて知った(汗)
まだまだ勉強不足ということか。
bashでファイル名に半角スペースが含まれたものを処理する
jpg画像を一気にconvertした時につまずいた。
#!/bin/bash
for file in *.jpg
do
convert $file ${file%.jpg}.png
done
エラー文
convert: unable to open image `test': No such file or directory @ error/blob.c/OpenBlob/2617.
convert: no decode delegate for this image format `test' @ error/constitute.c/ReadImage/544.
convert: unable to open image `.jpg': No such file or directory @ error/blob.c/OpenBlob/2617.
convert: no decode delegate for this image format `.jpg' @ error/constitute.c/ReadImage/544.
convert: no images defined `test.png' @ error/convert.c/ConvertImageCommand/3021.
どうやら区切り文字を変えてやれば動作するらしい。
行の区切りとする文字を\nだけにする。
()の中に書いているのは、IFSを一時的に使用するため。
#!/bin/bash
(
IFS="$'\n'"
for file in *.jpg
do
convert $file ${file%.jpg}.png
done
)
fedora 18 ショートカット設定
久しぶりに更新。
最近はFedoraを使っている。
忘れそうなのでショートカットの設定を覚書として書いておく。
システム設定から以下の状態までいく。(英語表記)
[System Settings] -> [Keyboard] -> [Shortcuts]
- 半角英数と日本語の切り替え
[Shortcuts]欄の[Typing]をみると、[Switch to next source]がある。
ここを設定すると、入力切り替えができるようになる。
[Disabled]をクリックするとショートカットが設定できるので、[Ctrl + Space]と設定しておこう。
- プログラムの起動
新しいショートカットを作ることもできる。
[Shortcuts]欄の[Custom Shortcuts]にある[+]を押してみると、ショートカットでプログラムが実行できるようになる。
とりあえずターミナルは必須だと思うので例として書く。
ちなみにコマンドはgnome-terminalなのでお間違いのないよう。
ショートカットは[Ctrl + X]とでもしておこう(押しやすいので)。
だいぶ放置していたが、またちまちま更新していこうと思う。
覚書程度に書いていくので、同じ所で悩んでいる方の助けになれば幸いである。
ubuntu12.04のログイン画面の設定
今更ながら設定しました。
それぞれログイン時。
- ゲストアカウントの無効化
- ユーザ名とパスワードを入力する
1.ゲストアカウントの無効化
/etc/lightdm/lightdm.conf
に以下の設定を追記する。
allow-guest=false
その後、
sudo restart lightdm
2.ユーザ名とパスワードを入力
同じく
/etc/lightdm/lightdm.conf
に
greeter-show-manual-login=true
を追記する。
その後
sudo restart lightdm
2の方法ではできなかったので原因究明中・・・
OpenGLをUbuntuにインストールする
OpenGLをUbuntu12.04にインストールした時のメモ。
#OpenGLライブラリ
sudo apt-get install freeglut3-dev libglew1.5-dev
#動かない場合以下もインストールすると動くらしい
sudo apt-get install libxmu-dev libxi-dev
/* テストプログラム */
#include <GL/glut.h>
int main(int argc,char *argv[])
{
/*初期化*/
glutInit(&argc,argv);
/*ウィンドウ作成*/
glutCreateWindow(argv[0]);
/*メインループ*/
glutMainLoop();
return 0;
}
#コンパイル
gcc test.c -lglut
macでRuby1.9をインストール
macでRubyをアップデートしたときの覚え書き
MacPortsを使用。
今回使用したmacがメンテナンスされていなかったのでportを使うとエラーが出たが、以下のコマンドを打つと正常に作動するようになった。
sudo port -d selfupdate
sudo port upgrade installed
sudo port -d sync
Rubyのアップデート
sudo port intall -f ruby19 +mactk
ここで /opt/local/bin/ruby1.9 がインストールされる
+mactk がないと、tkパッケージが使えない。
確認
/opt/local/bin/ruby1.9 -v
このままでも使用できるが、rubyコマンドで使用したいのでシンボリックリンクを作成する。
シンボリックリンク作成
sudo mv /usr/bin/ruby /usr/bin/ruby1.8.7
sudo ln -s /opt/local/bin/ruby19 /usr/bin/ruby
確認
/usr/bin/ruby -v
参考URI: