コマンドライン入力


行頭に移動 (Ctrl-a)
行末に移動 (Ctrl-e)
カーソル位置から行末までを削除 (Ctrl-k)
補完・または候補一覧を表示 (TAB)

readline 行入力支援ライブラリ


コピー&ペースト

LinuxターミナルMac X11ターミナルWindowsMac
コピーマウスクリックで黒くする(ハイライト)Ctrl + ccommand(アップル) + c
ペースト中クリック(左右同時クリック)X11の環境設定→3ボタンエミュレートを有効→option + クリックCtrl + vcommand(アップル) + v


ネットワーク

sshを用いたリモートログイン

ssh -X アカウント名@IPアドレス

-X:X11転送を許可
-Y:信頼されたX11転送を許可

http://www.unixuser.org/~euske/doc/openssh/jman/ss...

@@@@@@@@@@@@@
@ warning!
@@@@@@@@@@@@@

と表示されてログインできない
→同一のIPアドレスでサーバが入れ替わった場合、アドレスキーをリセットする必要がある。
vi .ssh/known_host

で、対象マシンのIPアドレスを削除


ファイル転送


・sftp

sftp アカウント名@IPアドレス

でリモートにアクセス。
cdで移動し、目的の場所で

get リモートのファイル名  # ファイルをローカルに転送
put ローカルのファイル名  # ファイルをリモートに転送

・scp

リモートにあるファイルをここにコピー
scp アカウント名@IPアドレス:ファイルへのパス/ファイル名 .

ここにあるファイルをリモートにコピー
scp ファイル名 アカウント名@IPアドレス:置きたい場所へのパス/

ディレクトリごとコピー
scp -r ・・・

http://www.club.kyutech.ac.jp/support/manual/ssh.h...

・rsync
rsync --stats -e ssh -rav account@ipアドレス:パス .

http://www.infoscience.co.jp/technical/rsync/rsync...
ファイル転送ソフト

・FileZilla

http://sourceforge.net/projects/filezilla
のFileZilla_Clientから、FileZilla_・・・_win32-setup.exeをダウンロード、実行する。

File→Site Manager、New Siteで新規作成

Host: IPアドレス
Port: 22
Servertype: SFTP using SSH2
Logontype: Normal
User: ユーザー名
Password: パスワード

を入力してConnect。
以降はFileの下のPCマークのボタンから。


・FFFTP

http://www2.biglobe.ne.jp/~sota/ffftp.html


shでよく使う文

for文

for ${hoge} in ${hoge_list} ;do

done
while文

while [ ${hoge1} -le ${hoge2} ] ;do

hoge1=$((hoge1+1))
done
case文

case ${hoge} in
  a|b|c)

  ;;
  *)

  ;;
esac
if文

if [ ${hoge1} -lt ${hoge2} ] ;then

elif [ ${hoge1} -eq ${hoge2} ] ;then

else

fi


月のループ

for ${mmm} in jan feb mar apr may jun jul aug sep oct nov dec ;do

done

大文字
JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC

00-12とmmmの対応

case ${mo} in
01) mmm=jan ;;
02) mmm=feb ;;
03) mmm=mar ;;
04) mmm=apr ;;
05) mmm=may ;;
06) mmm=jun ;;
07) mmm=jul ;;
08) mmm=aug ;;
09) mmm=sep ;;
10) mmm=oct ;;
11) mmm=nov ;;
12) mmm=dec ;;
esac

mmmと00-12の対応

case ${mmm} in
jan) mo=01 ;;
feb) mo=02 ;;
mar) mo=03 ;;
apr) mo=04 ;;
may) mo=05 ;;
jun) mo=06 ;;
jul) mo=07 ;;
aug) mo=08 ;;
sep) mo=09 ;;
oct) mo=10 ;;
nov) mo=01 ;;
dec) mo=12 ;;
esac

季節平均

for ssn in djf mam jja son ;do

case ${ssn} in
  djf) t1=12 ; t2=1  ; t3=2  ; mmm=DJF ;;
  mam) t1=3  ; t2=4  ; t3=5  ; mmm=MAM ;;
  jja) t1=6  ; t2=7  ; t3=8  ; mmm=JJA ;;
  son) t1=9  ; t2=10 ; t3=11 ; mmm=SON ;;
esac

't1=(q(t=${t1})+q(t=${t2})+q(t=${t3}))/3'

done
うるう年判定

if [ $((year%4)) -eq 0 -a $((year%100)) -ne 0 -o $((year%400)) -eq 0 ] ;then

else

fi

day of year(通日)と月の対応

for mm in 1 2 3 4 5 6 7 8 9 10 11 12 ;do
case ${mm} in
1)  str=1   ; end=31  ;;
2)  str=32  ; end=59  ;;
3)  str=60  ; end=90  ;;
4)  str=91  ; end=120 ;;
5)  str=121 ; end=151 ;;
6)  str=152 ; end=181 ;;
7)  str=182 ; end=212 ;;
8)  str=213 ; end=243 ;;
9)  str=244 ; end=273 ;;
10) str=274 ; end=304 ;;
11) str=305 ; end=334 ;;
12) str=335 ; end=365 ;;
esac

うるう年を考慮した月ごとの日数の割り当て

mon=1
while [ ${mon} -le 12 ] ;do

if [ ${mon} -eq 1 ] ||  [ ${mon} -eq 3 ] || [ ${mon} -eq 5 ] || [ ${mon} -eq 7 ] || [ ${mon} -eq 8 ]
(続き) || [ ${mon} -eq 10 ] || [ ${mon} -eq 12 ] ;then
nt=124
elif  [ ${mon} -eq 4 ] ||  [ ${mon} -eq 6 ] || [ ${mon} -eq 9 ] || [ ${mon} -eq 11 ] ;then
nt=120
else
    if [ $((year%4)) -eq 0 -a $((year%100)) -ne 0 -o $((year%400)) -eq 0 ] ;then
      nt=116
    else
      nt=112
    fi
fi
・・・
mon=$((mon+1))
done

awk


http://www.linux.or.jp/JM/html/GNU_gawk/man1/gawk....

http://www.asahi-net.or.jp/~aa4t-nngk/awk.html
less file | awk 'BEGIN{FS=","} 5100==$3 && 0<$31 {print $2, $31}'
,区切りで読んだfileの3列目が5100かつ31列目が0より大きい行の
2列目と31列目を表示

BEGIN{FS=","}          # ,で列を区切って読む
5100==$3               # 3列目が5100のとき
A && B                 # AかつB
{print $2, $31}        # 2列目と31列目を表示

特定の文字列までを抽出
ls 20100403_hoge.txt | awk -F_ '{print $1}' # 最初の_までの文字列を抽出
→画面出力: 20100403

文字列から数字のみを抽出
awk -F'[^0-9]+' hoge.txt             # 数字以外の文字を無視して数字のみが抽出される


awk内でシェル変数を使う

http://www.asahi-net.or.jp/~aa4t-nngk/awk.html#she...

awk -v name=value '{・・・}'

awk内で変数の受け渡し

awk '
  {
   name=value
   print name
  }
'

sort


ファイルをタイムスタンプの順に表示
ls -l *.txt | awk '{print $6, $7, $NF}' | sort

演算子

以上	>=
以下	<=
等しい	==
等しくない	!=
かつ	&&
または	||

特殊変数

NF(ARGC) : 欄の数
$NF : 最後の欄
NR : 行番号
$0  : 1行全部

http://www.u.tsukuba.ac.jp/%7Es0930225/02grads_bin...
http://ryuiki.agbi.tsukuba.ac.jp/~nishida/MEMO/awk...
http://www-cr.scphys.kyoto-u.ac.jp/member/sakano/m...

拡張子の前までのファイル名を取得

string_filename=${file##*/}
string_filename_without_extension=${string_filename%.*}

http://www.kishiro.com/FreeBSD/get_filename_in_she...

#!/bin/bash


1行目は
#!/bin/bash
とする.このようにしない場合,日本語のコメントがあると
”cannot execute binary file”というエラーになる.

wild card


http://www.hpc.cs.ehime-u.ac.jp/~aman/linux/bash/f...
?何か1文字
*0文字以上の文字列
[文字列]文字列のいずれか1文字
[!文字列]文字列に含まないいずれか1文字
{候補1,候補2,…}候補いずれかに当てはまる文字列

ex. 6〜8月のファイルを抽出

ls
190101 190102 190103 ・・・ 200012
ls ????0[678]
190106 190107 190108 190206 190207 190208 ・・・200008

命令の組み合わせ
;連続実行
&バックグラウンド実行
&&命令1が正常終了した場合、命令2を実行する
||命令1が正常終了しなかった場合、命令2を実行する

ex. 命令1をしてから命令2をしたい
f77 hoge.f ; ./a.out
コンパイルと実行を一度にできる。↑キーで一度に呼び出せるので便利

特殊変数

script.shを実行するとき、
script.sh arg1 arg2 arg3 ...

のように引数としてarg1, arg2, ...を与えていた場合、script.shの中で以下が代入される。
$0script.shという文字列
$1arg1という文字列
......
$#引数の数
$$実行したプロセスID

ex. 引数1として入力ファイル名、引数2として出力ファイル名が必要なhoge.shで、
引数の数が2以外のときエラーを表示して終了する

#!/bin/bash

case $# in
        2)
        ;;
        *)
        echo "error: please input "hoge.sh infile outfile""
        exit
        ;;
esac

スクリプト本体

コマンドを実行した結果の代入
aa=$(コマンド)

または
aa=`コマンド`

ex.
aa=$(ls)
echo $aa


ls

は同じ

整数の演算


let 算術式 ※ $は使わないこと あるいは
((算術式))

算術式の例
num++足す1
num--引く1
num1 + num2num1 足す num2
num1 - num2num1 引く num2
num1 * num2num1 掛ける num2
num1 / num2num1 割る num2
num1 % num2num1 割る num2 の余り
num1 ** num2num1 の num2 乗

ex.

aa=1
let aa++
echo $aa

2

小数の演算

http://matsui.homeunix.com/index.php?Unix%A5%B3%A5...

条件式

test 条件式 あるいは
[ 条件式 ]

数値
num1 -lt num2num1 が num2 より小さい
num1 -le num2num1 が num2 以下
num1 -gt num2num1 が num2 より大きい
num1 -ge num2num1 が num2 以上
num1 -eq num2num1 と num2 が等しい
num1 -ne num2num1 と num2 が等しくない

文字列
str1 = str2str1 と str2 が同一のとき
str1 != str2str1 と str2 が同一でないとき
strstr が1文字以上存在するとき
-n str
-z strstr が0文字(null)のとき

ファイル
-d filefile がディレクトリのとき
-e filefile が存在するとき
-f filefile が存在するとき(普通のファイル)
-r filefile が存在し読み取り可能のとき
-w filefile が存在し書き込み可能のとき
-x filefile が存在し実行可能のとき
-s filefile が存在し0サイズより大きいとき

条件式
|expr1 -a expr2	|expr1 かつ expr2|
|expr1 -o expr2	|expr1 または expr2|
|!expr	|expr でないとき|

ex. 存在しないときディレクトリを作成

if [ ! -d ./hoge ] ;then
mkdir -p ./hoge
fi

条件式を組み合わせた条件式
かつ&&
または||

条件式Aかつ条件式Bを満たすとき
if [ 条件A ] && [ 条件B ] ;then

条件式Aまたは条件式Bを満たすとき
if [ 条件A ] || [ 条件B ] ;then



1981年8月?1982年7月とそれ以外で条件分岐
if [ ${yyyy} -eq 1981 -a ${mm} -ge 8 ] && [ ${yyyy} -eq 1982 -a ${mm} -le 7 ] ;then

else

fi

入出力の受け渡し
|	出力を受け渡す(パイプ)
>	表示する代わりにファイルに書き込み(出力のリダイレクション)
>>	前の内容を削除せず末尾に追加(追加のリダイレクション)
<	(入力のリダイレクション)
<<	文字列が出るまで(ヒアドキュメント)

ex. 一つのページとして表示
ls -Al | less

ex. コマンドのマニュアルをファイルに書き込む
man wget > wget.txt

ex. "EOF"が出るまでをファイルに書き込む(シェル内でfortranやGrADSスクリプトを作る)

cat>hoge.gs<<EOF
・・・
EOF

.bashrcのalias


ホームディレクトリの.bashrcに
alias g="grads -l"
と書いて(source .bashrcで設定を有効にする)おけば、gと打っただけでgradsが起動。同様に
alias マシン名="ssh -X アカウント名@IPアドレス"
などなど

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/...

環境変数


http://x68000.q-e-d.net/~68user/unix/environment.h...

http://www.hyuki.com/yukiwiki/wiki.cgi?UNIX%A4%CE%...

DISPLAY	Xサーバが実際に描画するサーバ名
GROUP	自分の属するグループ名
HOME	ホームディレクトリ
LANG	使用言語の指定
LD_LIBRARY_PATH	ランタイムライブラリを検索するパス名
LIBRARY_PATH	ライブラリのパス名
MANPATH	オンラインマニュアルのパス名
PATH	プログラムの置いてあるディレクトリ名を設定
PWD	カレントディレクトリ名
REMOTEHOST	現在のホストにログインする前にいたホスト名
SHELL	現在使用しているシェル
TERM	端末 (ターミナル) の名称
TMOUT	タイムアウト
TZ	タイムゾーン
USER	自分のログインネーム
printenv 環境変数の一覧表示

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/...
env
printenv

setenv, export 環境変数の設定


csh, tcshの場合
setenv

bash, shの場合
export

http://x68000.q-e-d.net/~68user/unix/environment.h...


X windowを使ったアプリケーションの立ち上げ

gedit テキストエディタ

gthumb 画像ファイルの表示


png, gif 対応
ps 非対応

display 画像ファイルの表示


ps, eps, png, jpg, gif等対応

firefox webブラウザ

Linuxコマンド


unixコマンドリファレンス?
Linuxコマンド?
unixコマンド便覧?
UNIXの部屋?
Linuxコマンドブック ビギナーズ?

Linuxコマンドの種類
/bin/	Linux の最も基本なコマンド	cp ls pwd vi 他
/sbin/	管理用に最低限必要なコマンド	ifconfig shutdown 他
/usr/bin/	一般的なユーザコマンド	awk du emacs find gedit less man perl ssh top wget 他
/usr/sbin/	デーモン系管理用コマンド、/sbin から溢れたコマンド	adduser samba userdel 他
/usr/X11R6/bin/	X Window Systemに関係しているコマンド、GUI関係のコマンド	convert display gv startx xeyes xload 他
/usr/local/bin/	ソースファイルなどからインストールしたコマンド	gradsnc ほか
/usr/local/sbin	ソースファイルなどからインストールした管理コマンド	

http://www.u-waza.org/linux-tips/binlist.html
ls -laR | grep -c '^-' (ファイル数の表示)
ls -laR | grep -c '^-' ファイルの数が表示される

echo, printf 画面表示(標準出力)

echo $a 変数aに代入されている文字を表示
echo -n $a ; echo $b 変数aと変数bを改行せずに表示
printf "abc" ; printf "xyz" 文字abcと文字xyzを改行せずに表示

du, df メモリ容量や使用量を確認

df -h ディスク容量を確認
du -sh * 各ディレクトリのディスク使用量を確認

ps, kill プロセスの状態を調べる、停止する


ps -xl 現在のアカウントで実行しているプロセスの表示
PID:プロセス番号 STAT:プロセス状態
(R 実行中 S 休眠中 D 割り込み不可能な休眠中 T 停止 Z ゾンビプロセス)
kill プロセス番号 プロセスをkillする
kill -KILL プロセス番号 プロセスがkillできなかったとき、強制的にkillする
それでもkillできなければrebootする

http://cai.cs.shinshu-u.ac.jp/sugsi/Lecture/linux/...

pstree プロセスのツリー形式表示

pstree -ap コマンドラインの引数、プロセスIDを含めて表示

http://www.linux.or.jp/JM/html/psmisc/man1/pstree....

tar 圧縮・解凍

tar xvf 〜.tar
tar xvf 〜.tar.gz
tar xvf 〜.tar.bz2

http://uguisu.skr.jp/Windows/tar.html

top プロセスの状態を表示

top 数秒おきにメモリ消費量、スワップ消費量、各プロセスID、メモリ消費量などを表示
qで終了
top -U who アカウント名whoのプロセスのみ表示

http://x68000.q-e-d.net/~68user/unix/pickup?top

mount 外付けハードディスクの読み込み

dmesg

接続されたディスクの場所(デバイス)が表示される
例:
・・・
usb-storage: scsi cmd done, result=0x0
usb-storage: *** thread sleeping.
sda1
・・・
など
適当なディレクトリを作っておいて(例:/data2)
mount -t vfat /dev/sda1 /data2

chmod パーミッションの変更

chmod (option) [a+w] [file name] 相対方式
chmod (option) [644] [file name] 絶対方式

http://www.k-tanaka.net/unix/chmod.html

chown 所有者、グループの変更

chown kamae:users [file name] fileをユーザkamae、グループusersの所有に変更
chown -R kamae:users [directory name] directory全体を変更

convert 画像ファイルの変換


ImageMagickオプション

convert aaa.eps aaa.png ファイル形式の変換 対応:EPS、TIFF、JPEG、GIF、PNG、EPS、PDF
convert -density 100 aaa.eps bbb.eps 解像度の変更(値が大きいほど高画質)
convert -resize 600x400 aaa.eps bbb.eps サイズの変更
convert -rotate 90 aaa.eps bbb.eps 回転
convert hoge_a.jpg hoge_b.jpg ・・・ hoge.pdf 複数画像を一つのPDFに結合
convert +append hoge_a.jpg hoge_b.jpg ・・・ hoge.jpg 複数画像を横並びの一つの画像に結合
convert hoge_a.gif hoge_b.gif ・・・ hoge.gif GIFアニメの作成
convert -loop 0 -delay 100 hoge_a.gif hoge_b.gif ・・・ hoge.gif 無限にループ、コマ送り1秒
convert +antialias hoge.eps hoge.png アンチエイリアスなしでepsを変換

GrADSで高解像度のpngファイルを出力

print hoge.eps
!convert -rotate 90 -density 600 -resize 600 +antialias hoge.eps hoge.png

そだんTutors?
会津大学UNIXウィキ?

http://d.hatena.ne.jp/pyopyopyo/20050801/p1
pdfで拡大しても画質が下がらない図の作成

http://pctraining.s21.xrea.com/multimedia/graphic-...

ラスタデータからpdfを作成すると画質が下がるが、ベクトルデータから作成すれば
画質が下がらない。
ラスタデータ jpeg, png, gif, bmpなど
ベクトルデータ ps, eps, emf, wmfなど

ながれ 原稿執筆要領,ファイル形式の手引き?

GrADSやGMTで作成した図の場合、psやepsで出力したファイルをそのまま使用すればよい。
一度ラスタデータを経由すると、convertでベクトルデータにしてもギザギザは残る。

montage 画像を配列


ImageMagickオプション?

pr1.png〜pr12.pngを400x300ピクセルで4x3枚並べたhoge.pngを作成
montage -geometry 400x300+0+0 -tile 4x3 pr*.png hoge.png

画像の大きさをそのままで結合するときはconvert、
画像の大きさを揃えて結合するときはmontageを使用する。

xload システムの負荷を表示

xload -update 2 2秒ごとの負荷を表示

date 時刻表示


date 時刻を表示
su
ntpdate eric.nc.u-tokyo.ac.jp ネットワークを介して時計を修正

http://x68000.q-e-d.net/~68user/unix/pickup?ntpdat...

uname Linuxのカーネル、ディストリビューションを調べる

nkf 文字コードの変換


文字コードの確認
nkf -g infile

UTF-8コード(日本語)のunix改行形式(LF)に変換に変換
nkf -w -Lu infile > outfile

http://it.kndb.jp/entry/show/id/744/

文字化けファイルの変換スクリプト

#!/bin/bash
#
# convert windows 'mozibake' ascii file
# to linux UTF-8 ascii file
#                        Y.Kamae 09/10/09
#

input_dir='./JMA-CDROM/Japan_DailyData'
output_dir='./Japan_DailyData'

mkdir -p ${output_dir}

list=`ls ${input_dir}`
echo '## input directory=' ${input_dir}
echo '## output directory=' ${output_dir}
echo '## file list=' ${list}
echo '## start convert ##'

for file in ${list} ;do

nkf -w -Lu ${input_dir}/${file} > ${output_dir}/${file}
echo '## convert' ${file} 'to UTF-8 ascii'

done

echo '## end convert ##'
rmdir --ignore-fail-on-non-empty ${output_dir}

gedit等で編集していたhtmlファイルの文字コードが変更されてしまい、文字化けして表示されてしまう場合

cp index.html index2.html      #バックアップをとっておく
nkf -s --overwrite index.html  #Shift-JISコードのファイルに変更

od バイナリデータの表示

od –t u1 filename

バイト符号なし整数データを10進数表示
od –t d1 filename

バイト符号付き整数データを10進数表示
od –t d2 filename

バイト符号付き整数データを10進数表示
od –t f4 filename

バイト浮動小数点実数データを10進数表示
od –t f8 filename

バイト浮動小数点実数データを10進数表示

http://www.sss.fukushima-u.ac.jp/~ichii/RS_C_Linux...

ln リンクの作成


ホームディレクトリの下に/work/name/へのリンクwork/を作成
ln -s /work/name ./work

大量のファイルから任意の条件で取り出した一部のファイルから構成されるディレクトリを作成

 for file in ... ;do
 mkdir -p link
 ln -s dir/${file} link/
 done #file

いろんな場所に散在しているファイルをまとめて参照

model=hoge
var=hogehoge
vv=??

for n in ? ?? ???? ;do

case ${n} in
???) nin=?? ; nout=???? ;;
esac

ln -s -f ../../${model}/${nin}/${vv}.bin ${nout}${var}.bin
echo "ln -s -f ../../${model}/${nin}/${vv}.bin ${nout}${var}.bin"

n=$((n+1))
done #n

wget ダウンロード


http://members.at.infoseek.co.jp/futora/wget153/op...

httpサーバのfileをダウンロード
wget http://www.../file

ftpサーバからダウンロード
wget ftp://.../file

オプション

再帰的 -r
../data/にファイルを置く -P../data/
親ディレクトリーを参照しない -np
取得済みのファイルと同じか古いファイルは取得しない -N
ローカル側のhost名を外す -nH
passiveモードでダウンロード --passive-ftp
アカウントとパスワードを使ってダウンロード --user=hoge --password=hogehoge
ローカルに反映させない階層構造の数 --cut-dirs=4

ex. NOCS Surface Flux Dataset v2.0のダウンロード
wget --user=anonymous --password=hogehoge(E-mailアドレス) ftp://dss.ucar.edu/datasets/ds260.3/data/nocs_v2_2...

ncftpget


wgetと違い、ワイルドカードを使用可。
ncftpはsftpと違い、tab補完が可。

http://net-newbie.com/trans/ncftpget.1.txt

sbin系

shutdown システムのシャットダウン

shutdown -r now ただちにシステムを再起動
shutdown -h now ただちにシステムを停止し、電源を切る

http://www.k4.dion.ne.jp/~mms/unix/linux_com/shutd...

useradd アカウントの追加

su root権限になる

useradd -m hoge hogeというアカウントをホームディレクトリを自動作成して追加する

passwd hoge hogeのパスワードを設定

userdel アカウントの削除

userdel -r hoge hogeというアカウントをホームディレクトリごと削除

内臓HDDのフォーマット

外付けHDDのフォーマット


外付けHDDをLinuxで認識、フォーマット

http://itpro.nikkeibp.co.jp/article/COLUMN/2006022...

http://www.turbolinux.com/support/document/knowled...

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/...

http://www1.ocn.ne.jp/~ruby11/linux/mount.html

市販の外付けHDDは、Windows用に「vfat」形式のファイルタイプでフォーマットされていることが多い。このままでも使えるはずだが、最大ファイルサイズに制限があるのでUNIXには向かない。「ext3」形式、または「reiserfs」形式にフォーマットする。

dmesg | less (デバイスを確認, 例えば/dev/sdc1 など)
su - (suに変身)
mkfs -t ext3 /dev/sdc1 (sdc1をext3でフォーマット)

または
mkfs -t reiserfs /dev/sdc1 (sdc1をreiserfsでフォーマット)

コマンドを打ち込んだら数分待つ。
自動マウント

SuseではUSBでつなぎ、電源を入れると自動でマウントされる。
df -h

でマウントされたデバイスが表示される。通常/media/diskなどのディレクトリが割り当てられる。

Filesystem  サイズ  使用  残り  使用%  マウント位置
・・・
/dev/sdc1   1.9T    1K   1.9T     1%   /media/disk
手動マウント

自動でマウントされないとき、割り当てるディレクトリを指定してマウントする。

dmesg | less (デバイスを確認)
mount /dev/sdc1

または、自動でマウントされたディレクトリと別の場所(例えば/data2)を指定してマウントする。

df -h (デバイスとディレクトリを確認)
su
umount /dev/sdc1
mount /dev/sdc1 /data2

新しいディレクトリを指定する場合は、あらかじめmkdirでディレクトリを作成しておく。
df -h (マウントされた場所を確認)
起動時のマウント制御

/etc/fstabを編集する。

    …
/dev/sdc1     /data2      reiserfs   …
#/dev/sdd1     /data3      reiserfs   … (コメントアウトすると起動時に自動マウントされない)
   …

http://www.freebsd.org/doc/ja_JP.eucJP/books/handb...

万一、fstabを編集して起動がうまくいかなくなったら、
http://johnnyoriginaldesign.blogspot.com/2007/06/f...

.bashrcの設定


日本語フォントへの切り替え
alias ja='export LANG=ja_JP.UTF-8; export LANGUAGE=ja_JP.UTF-8; export LC_ALL=ja_JP.UTF-8'

英語フォントへの切り替え
alias en='export LANG=en; export LANGUAGE=en; export LC_ALL=en'

LinuxのCPUが64ビットかどうか調べる

cat /proc/cpuinfo

で表示される、flagsの値にlmがあれば64ビット、なければ32ビットCPU。
http://d.hatena.ne.jp/jun-ya/20090511/1242028435

ネットワークの設定

ネットワークサービスの再起動

/etc/init.d/network restart

sshデーモンの再起動

/etc/rc.d/init.d/sshd restart

sshd_configの設定
**

ホスト名 linux01
IPアドレス 111.222.333.44
サブネットマスク 255.255.255.0
ゲートウェイ 111.222.333.1
ドメインネームサーバ 130.222.333.1、130.222.333.2   の場合


セキュリティとユーザ→許可されるサービス
DHCPやらSSHやら

(Suse 10.3 のケース)

YaST2→ネットワークカード
概要 configure

Statically assigned IP Address
IPアドレス 192.168.5.3
サブネットマスク 255.255.255.0
Hostname linux01.linux01

Hostname/DNS

ホスト名、ドメイン名 linux01
ホスト名を/etc/hostsに書きこむ
ネームサーバ1 130.222.333.1
ネームサーバ1 130.222.333.2

ルーティング
デフォルトゲートウェイ 111.222.333.1

Fedora core のケース

システム→管理→ネットワーク
デバイス イーサネット 
全般

固定のIPアドレス設定
アドレス 111.222.333.44
サブネットマスク 255.255.255.0
デフォルトゲートウェイ 111.222.333.1

ルート
DNS

ホスト名 linux01
1番目のDNS 130.222.333.1
2番目のDNS 130.222.333.2

ホスト

アドレス ::1
ホスト名 linux01
エイリアス localhost6

インストール

Adobe Readerのインストール


Adobe Readerのページ
→get Adobe ReaderでOSに合わせたバージョンが表示されるので、これを実行or保存

保存した実行ファイルを実行できない場合
su
chmod 744 実行ファイル
./実行ファイル

で実行
日本語でインストールの経過が表示される

pukiwikiのインストール


http://pukiwiki.sourceforge.jp/?PukiWiki

http://www.revulo.com/PukiWiki/Install/Main.html

任意のwebサーバの公開ディレクトリ(ここでは~/www/とする)に、pukiwikiの最新版の圧縮ファイル(ここではpukiwiki-1.4.7_notb.tar.gzとする)をダウンロード。
tar pukiwiki-1.4.7_notb.tar.gz

等で解凍。
pukiwiki-1.4.7_notbを好きなディレクトリ名に変更(例:wiki/)。
  • パーミッションの修正
chmod 755 .
chmod 777 attach backup cache counter diff wiki
chmod 755 image image/face lib plugin skin
chmod 666 cache/*.dat cache/*.ref cache/*.rel wiki/*.txt
chmod 644 *.php */index.html */.htaccess image/*.png image/face/*.png lib/*.php plugin/*.php skin/*.php
chmod 604 .ht*
  • wiki基本設定

pukiwiki.ini.phpを上記のサイトに沿って編集。

サイト作成者名
$modifier

サイト作成者ホームページへのリンク
$modidierlink

トップページ名、最近更新したページ一覧名、最近削除したページ一覧名等
 $defaultpage
 $whatsnew
 $whatsdeleted
 $interwiki
 $menubar

管理者パスワードhogehogeを設定
echo -n 'hogehoge' | md5sum
で調べたパスワード(hogehoge)のmd5サムを記入
$adminpass = '{x-php-md5}XXXXX';

アカウント名hogeとパスワードhegohegoを設定
echo -n 'hegohego' | md5sum

 $auth_users = array(
       'hoge'      => '{x-php-md5}XXXXX',
 );

 $read_auth = 1;
 $read_auth_pages = array(
     '##'          => 'hoge',
 );

すると
http://・・・/wiki/index.php

にwikiページが作成される。


  • wiki添付ファイルサイズの上限を上げる

http://www.rivhiro-weather.com/blog/index.php?view...
plugin/attach.ini.php

 ini_set("upload_max_filesize","XXXXXM");

 define('PLUGIN_ATTACH_MAX_FILESIZE', (XXXXX * 1024)); // default: 1MB


セキュリティ設定

http://cyberam.dip.jp/category/linux_security.html
http://www.turbolinux.co.jp/products/server/11s/us...
http://shikichi.ddo.jp/syslog.html

パスワードでwebページにアクセス制限をかける

http://www.shtml.jp/htaccess/basic.html

http://www.futomi.com/lecture/htaccess/htpasswd.ht...

~

Linuxインストール

Cent OS


http://www.kurohama.net/f1.shtml
  • Cent OS 5.6 64bit

ミラーサーバから5.6/isos/x86_64を選択

http://ftp.riken.jp/Linux/centos/5.6/isos/x86_64/

CentOS-5.6-x86_64-bin-DVD-1of2.isoとCentOS-5.6-x86_64-bin-DVD-2of2.isoをダウンロード、DVDに焼く。

isoイメージをDVDに書き込み


iso書き込みのソフトウェアがなければ、フリーのdeepburnerをインストール。
http://www.forest.impress.co.jp/lib/sys/hardcust/c...

インストールしたdeepburnerを使ってisoファイルをDVDに焼く。
書き込みに失敗する場合は書き込み速度を最低に。
http://all-freesoft.net/dvdcopy/burner/burner2.htm...

ちなみにwindows 7にはisoイメージ書き込みがサポートされている。
http://www.atmarkit.co.jp/fwin2k/win2ktips/1259win...

DVDのフォーマット、isoファイル右クリックで「ディスクイメージの書き込み」

CentOSをインストール


http://centossrv.com/centos5.shtml

F2、F10、deleteキーなどでBIOSを呼び出し、CD/DVDブートを最優先に変更し、
DVDを挿入した状態で再起動。

http://mbsupport.dip.jp/biosboot.htm


USBメモリを用いたCent OS 7のインストール


http://gasser.blog114.fc2.com/blog-entry-467.html
http://wiki.princo.org/?USB%A5%E1%A5%E2%A5%EA%A4%C...
http://usagi-no-mimikaki.cocolog-nifty.com/blog/20...
http://thinkit.co.jp/story/2014/11/21/5368

liveusb-creatorを使ってUSBにisoイメージを書き込み、BIOSのブートオプションでUSBからブートするように設定し、USBを挿して電源を入れる。

http://be.nucl.ap.titech.ac.jp/~koba/cgi-bin/moin....

ネットワークインストール

https://help.sakura.ad.jp/app/answers/detail/a_id/...

http://www.if-not-true-then-false.com/2014/centos-...


モニタの解像と会わず、文字がぼやけて読めない場合:
「Troubleshooting」を選んで、resolution=1920x1200 のように解像度を指定する。

http://tech.g.hatena.ne.jp/rx7/20121118/p1
















管理人/副管理人のみ編集できます