Debian/Tips
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
小ネタをまとめてみた。
#contents
*jessieでsystemdを使わない(System-Vを使う) [#c0b225a5]
apcupsdが、systemdと相性が悪いみたいなので、systemdをや...
-http://without-systemd.org/wiki/index.php/How_to_remove_...
*PerlでSQL Serverにつなぐ [#mddbd042]
以下のようにパッケージを入れる。
# apt-get install libdbi-perl libdbd-odbc-perl tdsodbc
以下のファイルを変更する。
-/etc/odbcinst.ini
[FreeTDS]
Description = TDS driver
Driver = /usr/lib/odbc/libtdsodbc.so
Setup = /usr/lib/odbc/libtdsS.so
FileUsage = 1
-/etc/odbc.ini
[ODBC Data Sources]
freetds = FreeTDS ODBC Driver
[freetds]
Driver = FreeTDS
Description = Microsoft SQL Server
Servername = mssql
Database = <dbname>
-/etc/freetds/freetds.conf (追加部分)
[mssql]
host = <hostname>
charset = utf-8
client charset = utf-8
接続確認。
$ isql -v freetds <user> <passwd>
*XFSの便利なコマンド [#f487078a]
XFSには、オンラインでデフラグする機能がある。ここでは、...
-フラグメント状態の確認(サイズによっては数分かかる)
# xfs_db -c frag -r <XFSデバイス>
-デフラグ(デフォルトの2時間、次回継続可能)
# xfs_fsr <XFSのマウントポイント>
*HDDを完全消去する [#cff9df56]
shredコマンドを使用する。
# shred -n 2 -v /dev/sdz
"-n 2"で、ランダムな値を2回書き込む(デフォルトは25回)。...
*仮想端末を使用する [#p63dd3ec]
screenを使用して、同じ端末内で複数の仮想端末を切り替え...
$ screen
主なオプションは以下の通り。
|~オプション|~意味|
|<なし>|新しく仮想端末を起動する。|
|-ls|現在の仮想端末一覧を表示する。|
|-r [pid.tty.host]|デタッチされている仮想端末にアタッチす...
screen上での主な特殊コマンドは以下の通り。
|~コマンド|~意味|
|Ctrl+a d|現在の仮想端末をデタッチする|
|Ctrl+a S|端末を上下に分ける|
|Ctrl+a Tab|表示中の別の端末に移動|
|Ctrl+a c|新しい端末を作成|
|Ctrl+a n|次の端末に切り替える|
|Ctrl+a p|前の端末に切り替える|
*rrdtoolを日本語に対応させる [#sa9c8d19]
rrdtoolで作成される画像に日本語を入れるには、以下のよう...
# apt-get install ttf-unifont
その後、rrdtoolの ''GPRINT'' などに、日本語を UTF-8 で...
ちなみに、曜日や月を日本語で出力するには、環境変数 LANG...
*parted [#f4019a15]
3TBのディスクを扱おうとすると、GPTが必要になる。fdiskで...
/dev/sdaをGPTにして、最大サイズのパーティションをRAID用...
# parted /dev/sda
(parted) mklabel gpt
(parted) mkpart primary 1 -0
(parted) set 1 raid on
-参考~
http://www.miraclelinux.com/technet/faq/data/00152.html
*HDDのセクタチェック [#ka3477d3]
初めて使うHDDや、動作の怪しいHDDは、念のためチェックを...
badblocks -b 4096 -ws /dev/sdz
このテストでは、全セクタへの読み書きを4パターン行うので...
2Tのチェックに50時間程度、6T(WD6003FFBX)のチェックに74...
*表示内容を自動保存 [#n04fe659]
セキュリティ的な意味もかねて、表示内容を自動保存する。~
ただし、ユーザ権限で書き込む仕組み上、ユーザが消すこと...
以下のファイルをログインシェルにする。
-/usr/local/sbin/script_tcsh.sh
#!/bin/sh
# 表示内容を全て記録する
case `echo $0 | sed 's/^.\+_\(.\+\)\.sh$/\1/g'` in
tcsh)
SHELL=/bin/tcsh
_SHELL_OPT=-l
;;
bash)
SHELL=/bin/bash
_SHELL_OPT=--login
;;
*)
# 起動シェル不明
SHELL=/bin/bash
_SHELL_OPT=--login
;;
esac
/usr/bin/tty -s
if [ $? != 0 ]; then
exec $SHELL "$@"
exit
fi
LOGDIR=$HOME/.consolelog/`date \+%Y`
if [ ! -d $LOGDIR ]; then
mkdir -p $LOGDIR
fi
echo '####### 表示されるすべての内容は記録されます。 ###...
exec /usr/bin/script -aq -c "$SHELL $_SHELL_OPT" \
$LOGDIR/`date \+%Y%m%d``tty|sed 's/\(dev\|\/\)//g'`
*sshdの設定 [#w5cfbde9]
デフォルトでは、パスワードログインが可能になっていたり...
-/etc/ssh/sshd_config (更新)
PermitRootLogin no
PasswordAuthentication no
UsePAM no
参考:~
http://tdg.uncure.net/blog/index.php?UID=1132579202
*GRUBの設定変更 [#g86d2d91]
カーネルオプションを変えるときは /boot/grub/menu.lst を...
/boot/grub/menu.lst の52行目あたりから始まる「DO NOT UN...
書き換えた後 update-grub を実行すると、反映されるのがわ...
~
参考:~
http://itmst.blog71.fc2.com/blog-entry-69.html
*ハードウェア環境の詳細取得 [#j5bad6b9]
マザーボードの型番や、接続されている拡張カードの型番、...
-インストール
# apt-get install dmidecode
-実行方法
# dmidecode
*tcshで~/.historyの読み込みで落ちる場合の対処 [#i8b29757]
デフォルトシェルとしてtcshを使っている場合、何かしらの...
物理的に離れた場所にマシンがあるなどの理由で、ネットワ...
この問題を回避するためのよい方法を思いついたので、ここ...
まず、~/.historyがいつ読み込まれるのかに着目する。それ...
+/etc/csh.cshrc
+/etc/csh.login
+~/.tcshrc
+~/.cshrc
+~/.history
+~/.login
+~/.cshdirs
このことから、~/.historyの読み込み前後にスクリプトを実...
これを利用して、~/.historyの読み込み前に一時ファイルを...
具体的には、以下のようなスクリプトを追加する。~
-~/.cshrc、または~/.tcshrcなど (追加)
#履歴読み込み失敗対策
if ( -f .failed_login && -f .history ) then
set tmp_oldname=.history.`date +%Y%m%d%H%M`
mv .history $tmp_oldname
echo "## 前回のログインで.historyの読み込みに失敗し...
echo "## .historyを、${tmp_oldname}にリネームしまし...
unset tmp_oldname
endif
if ( $?tcsh && $?prompt && ! $?GNOME_DESKTOP_SESSION_ID ...
touch .failed_login
endif
-~/.login、または~/.cshdirs (追加)
rm -f .failed_login
[[自前パッケージ>Debian/自前パッケージ]]でtcsh自体に手...
*標準出力とエラー出力をファイルに出力しつつ、エラー出力だ...
cronで、コマンドの実行結果をすべてファイルにリダイレク...
sh系(bashなど)では、以下のようにする。
$ command 2>&1 >> file.log | tee -a file.log
これで、標準出力と標準エラーは"file.log"に出力され、標...
終了行:
小ネタをまとめてみた。
#contents
*jessieでsystemdを使わない(System-Vを使う) [#c0b225a5]
apcupsdが、systemdと相性が悪いみたいなので、systemdをや...
-http://without-systemd.org/wiki/index.php/How_to_remove_...
*PerlでSQL Serverにつなぐ [#mddbd042]
以下のようにパッケージを入れる。
# apt-get install libdbi-perl libdbd-odbc-perl tdsodbc
以下のファイルを変更する。
-/etc/odbcinst.ini
[FreeTDS]
Description = TDS driver
Driver = /usr/lib/odbc/libtdsodbc.so
Setup = /usr/lib/odbc/libtdsS.so
FileUsage = 1
-/etc/odbc.ini
[ODBC Data Sources]
freetds = FreeTDS ODBC Driver
[freetds]
Driver = FreeTDS
Description = Microsoft SQL Server
Servername = mssql
Database = <dbname>
-/etc/freetds/freetds.conf (追加部分)
[mssql]
host = <hostname>
charset = utf-8
client charset = utf-8
接続確認。
$ isql -v freetds <user> <passwd>
*XFSの便利なコマンド [#f487078a]
XFSには、オンラインでデフラグする機能がある。ここでは、...
-フラグメント状態の確認(サイズによっては数分かかる)
# xfs_db -c frag -r <XFSデバイス>
-デフラグ(デフォルトの2時間、次回継続可能)
# xfs_fsr <XFSのマウントポイント>
*HDDを完全消去する [#cff9df56]
shredコマンドを使用する。
# shred -n 2 -v /dev/sdz
"-n 2"で、ランダムな値を2回書き込む(デフォルトは25回)。...
*仮想端末を使用する [#p63dd3ec]
screenを使用して、同じ端末内で複数の仮想端末を切り替え...
$ screen
主なオプションは以下の通り。
|~オプション|~意味|
|<なし>|新しく仮想端末を起動する。|
|-ls|現在の仮想端末一覧を表示する。|
|-r [pid.tty.host]|デタッチされている仮想端末にアタッチす...
screen上での主な特殊コマンドは以下の通り。
|~コマンド|~意味|
|Ctrl+a d|現在の仮想端末をデタッチする|
|Ctrl+a S|端末を上下に分ける|
|Ctrl+a Tab|表示中の別の端末に移動|
|Ctrl+a c|新しい端末を作成|
|Ctrl+a n|次の端末に切り替える|
|Ctrl+a p|前の端末に切り替える|
*rrdtoolを日本語に対応させる [#sa9c8d19]
rrdtoolで作成される画像に日本語を入れるには、以下のよう...
# apt-get install ttf-unifont
その後、rrdtoolの ''GPRINT'' などに、日本語を UTF-8 で...
ちなみに、曜日や月を日本語で出力するには、環境変数 LANG...
*parted [#f4019a15]
3TBのディスクを扱おうとすると、GPTが必要になる。fdiskで...
/dev/sdaをGPTにして、最大サイズのパーティションをRAID用...
# parted /dev/sda
(parted) mklabel gpt
(parted) mkpart primary 1 -0
(parted) set 1 raid on
-参考~
http://www.miraclelinux.com/technet/faq/data/00152.html
*HDDのセクタチェック [#ka3477d3]
初めて使うHDDや、動作の怪しいHDDは、念のためチェックを...
badblocks -b 4096 -ws /dev/sdz
このテストでは、全セクタへの読み書きを4パターン行うので...
2Tのチェックに50時間程度、6T(WD6003FFBX)のチェックに74...
*表示内容を自動保存 [#n04fe659]
セキュリティ的な意味もかねて、表示内容を自動保存する。~
ただし、ユーザ権限で書き込む仕組み上、ユーザが消すこと...
以下のファイルをログインシェルにする。
-/usr/local/sbin/script_tcsh.sh
#!/bin/sh
# 表示内容を全て記録する
case `echo $0 | sed 's/^.\+_\(.\+\)\.sh$/\1/g'` in
tcsh)
SHELL=/bin/tcsh
_SHELL_OPT=-l
;;
bash)
SHELL=/bin/bash
_SHELL_OPT=--login
;;
*)
# 起動シェル不明
SHELL=/bin/bash
_SHELL_OPT=--login
;;
esac
/usr/bin/tty -s
if [ $? != 0 ]; then
exec $SHELL "$@"
exit
fi
LOGDIR=$HOME/.consolelog/`date \+%Y`
if [ ! -d $LOGDIR ]; then
mkdir -p $LOGDIR
fi
echo '####### 表示されるすべての内容は記録されます。 ###...
exec /usr/bin/script -aq -c "$SHELL $_SHELL_OPT" \
$LOGDIR/`date \+%Y%m%d``tty|sed 's/\(dev\|\/\)//g'`
*sshdの設定 [#w5cfbde9]
デフォルトでは、パスワードログインが可能になっていたり...
-/etc/ssh/sshd_config (更新)
PermitRootLogin no
PasswordAuthentication no
UsePAM no
参考:~
http://tdg.uncure.net/blog/index.php?UID=1132579202
*GRUBの設定変更 [#g86d2d91]
カーネルオプションを変えるときは /boot/grub/menu.lst を...
/boot/grub/menu.lst の52行目あたりから始まる「DO NOT UN...
書き換えた後 update-grub を実行すると、反映されるのがわ...
~
参考:~
http://itmst.blog71.fc2.com/blog-entry-69.html
*ハードウェア環境の詳細取得 [#j5bad6b9]
マザーボードの型番や、接続されている拡張カードの型番、...
-インストール
# apt-get install dmidecode
-実行方法
# dmidecode
*tcshで~/.historyの読み込みで落ちる場合の対処 [#i8b29757]
デフォルトシェルとしてtcshを使っている場合、何かしらの...
物理的に離れた場所にマシンがあるなどの理由で、ネットワ...
この問題を回避するためのよい方法を思いついたので、ここ...
まず、~/.historyがいつ読み込まれるのかに着目する。それ...
+/etc/csh.cshrc
+/etc/csh.login
+~/.tcshrc
+~/.cshrc
+~/.history
+~/.login
+~/.cshdirs
このことから、~/.historyの読み込み前後にスクリプトを実...
これを利用して、~/.historyの読み込み前に一時ファイルを...
具体的には、以下のようなスクリプトを追加する。~
-~/.cshrc、または~/.tcshrcなど (追加)
#履歴読み込み失敗対策
if ( -f .failed_login && -f .history ) then
set tmp_oldname=.history.`date +%Y%m%d%H%M`
mv .history $tmp_oldname
echo "## 前回のログインで.historyの読み込みに失敗し...
echo "## .historyを、${tmp_oldname}にリネームしまし...
unset tmp_oldname
endif
if ( $?tcsh && $?prompt && ! $?GNOME_DESKTOP_SESSION_ID ...
touch .failed_login
endif
-~/.login、または~/.cshdirs (追加)
rm -f .failed_login
[[自前パッケージ>Debian/自前パッケージ]]でtcsh自体に手...
*標準出力とエラー出力をファイルに出力しつつ、エラー出力だ...
cronで、コマンドの実行結果をすべてファイルにリダイレク...
sh系(bashなど)では、以下のようにする。
$ command 2>&1 >> file.log | tee -a file.log
これで、標準出力と標準エラーは"file.log"に出力され、標...
ページ名: