Linuxを試すときのVMWarePlayerの設定
CentOS7を試したかったのでVMWarePlayer上にインストールしてみました。
今回は大体いつも同じVMWarePlayerの設定を書いてみます。
VMWarePlayerはversion 7.1.0 build-2496824を使っています。
起動して新規仮想マシンの作成をクリックすると下記の画面が出ます。
後でOSをインストールを選び、次へ
Linuxを選択し、今回はバージョンをCentOS64ビットに設定します。
次へ
仮想マシン名は自分の好きな名前で、
場所も自分の好きな場所で。
SSD使っているならSSD上がいいです!
とても早くなるから。
今回はテスト用にちょっと試すだけなので20GBに設定。
20GBあれば十分です。
また仮想ディスクを複数のファイルに分割を選択します。
最初の画面に戻ります。
今作成した仮想マシンを選択して、仮想マシン設定の編集を行います。
ISOイメージを選択します。
ダウンロードしたISOイメージを選択してください。
ちなみにメモリの量はCentOS6では768MB、CentOS7では1GBがギリギリラインでした。
たまにちょっと固まっていたのでそれぞれぞれ1GB、1.5GBくらいのほうがいいかも
しれません。
Windowsだと8.1は1GB、Windows2008R2は768MB、Windows2012は1GBくらいかな。
CPUパワーはそんなに必要ではなく、HDDも20GBあればテストする分には
よっぽど困らない感じです。
では次回はCentOS7のインストールを書きます。
Buffalo WSR-1166DHP ファームウェアアップデート再び
今朝突然うちのインターネットが繋がらなくなりました。
結果からいうと、DNSがひけなくなっていたのが問題でした。
なぜ突然ひけなくなったかというと、分かりません(;^ω^)
8.8.8.8(googleのpublic dns)が使えて、YAHOO!BBのDNS(うちはYAHOO!BBです)も
使用できたのでうちのルータとDNSサーバ間の通信が不通となって
いたようです。
WSR-1166DHPのファームウェアのバージョンは1.03でした。
これを最新バージョンである1.06にすることで、DNSの名前解決が
出来るようになりました。
今となっては調べられませんが(面倒だから)、1.03ではオープンリゾルバ
となっていた可能性もあります。
(ログからは探ることは出来ませんでした。なので推測です。)
これを使って確認すれば良かったな↓
オープンリゾルバ確認サイト
http://www.openresolver.jp/
以前バージョンアップしようとして、ルータがハングアップしたから
放置してたんですね(;^ω^)toshtone.hatenablog.jp
今回はちゃんとアップデートが出来ました。
そういうことで無事復帰!
ファイルの転送を行うshell(bash)
普段使わないshellを使う、の2回目です。
scpでファイル転送を行うshellを書いてみたんですが、
scp実行時のエラーをログファイルに出力する方法について
ちょっと困ったのでその方法について記載したいと思います。
まずエラー出力をリダイレクトしようと考えました。
command > logfile コマンドの実行結果をファイルに出力する場合 command >> logfile コマンドの実行結果をファイルに追記する場合 command 1>logfile 2>&1 1が標準出力で2が標準エラー出力 標準出力をlogfileに、標準エラー出力を標準出力と同じ場所に出力
上記の方法だとscpでエラーとなった場合に思うように出力してくれない。
空のファイルになってしまう。
なのでこういう風にしてみました。
scp -rp ファイル名 ユーザ名@サーバ名:ディレクトリ if [ $? -eq 1 ]; then echo "Error "サーバ名 > ログファイル fi
$?は特殊変数と呼ばれるもので色々な使われ方をするようなのですが、今回のケースでは
他の言語でいうtry ~ catch exception eのeに当たる部分となるようです。
(非常にざっくりですが)
logrotateがうまくいかない
今回はシェル(bash)の問題です。
普段全然シェルを書く機会がないくらいの人が対象です。
/etc/logrotate.dのsyslogとかhttpdを設定したはずなのに
うまくlogrotateしてくれない。
(CentOSやRedHatEnterpriseLinuxとか)
初歩的ではありますが、httpd.orgとかsyslog.20150601とかのまま
別ファイルとしてバックアップしておくとその情報でもログローテート
されてしまいます。
(どちらからログローテートされるのかわかりませんが)
なので~~.orgとか~~.日付とかになっているファイルを
.~~.org(又は日付)というドットファイルにするシェルを書いてみよう
というのが今回のお題です。
これをググらずに書きたいところです。
まずshellのfor文の書式
for f in 入力 do 処理 done
他の言語でいうfor each的な動作です。
各ファイル名は$fとして扱われます。
続いて~~.orgとか~~.日付とかを正規表現で取得
.~~なんてつけてるのはバックアップファイルのみだと判断しています。
なのでこれ
*\.*
リネーム部分ですがドットファイルにするだけなので簡単です。
mv $f \.$f
これを組み合わせると下記のようになります。
普段シェルを使わないと一行目(シバン)ですら忘れてしまうんですよね。
#!/bin/bash cd /etc/logrotate.d for f in *\.* do mv $f \.$f done
これをさらにターミナルから直接実行できるよう一行に書き直してみます。
cd /etc/logrotate.d/;for f in *\.*;do mv $f \.$f;done
改行の箇所に;(セミコロン)を入れるのかと思いきや、doの後には入れません。
それくらいでしょうか。
また間違えて別のディレクトリのファイルを全てドットファイルにしてしまった。
とりあえず全てドットを取り除きたいという場合はどうでしょうか。
まずファイル名置換の方法です。
mv $f ${f/正規表現/置換後}
これを用いてこうなります。
mv $f ${f/\.*/}
後はforのファイル名取得箇所をin \.[0-9a-zA-Z_]*としてやればよいでしょう。
シェルが苦手なのでまたこういった内容のものを書いていきたいと思います。
Windows 8.1 フリーソフトのスクリーンキャプチャー
長らくフリーバージョンのFastStone Captureを愛用していたんですが・・・・
Windows8.1との相性なのか、何なのか分かりませんが新しいパソコン
になってからFastStone Captureが使えなくなってしまいました。
具体的にどう使えないかというとフルスクリーンでキャプチャーすると
このPCは1920 X 1080 pxのフルHDですが1445 X 864 pxという枠になってしまいました。
これじゃあフルスクリーンのキャプチャーではないですね
またウインドウキャプチャーをするとウインドウ位置を正確に捉えてくれません。
この画面のキャプチャーの仕方が分からなかったので携帯で撮りました。
そしてこの状態で選択した画像はというと
あちゃー
ということで、別のソフトを探しました。
そもそもWindows 8.1ではデフォルトの機能としてWindowsキー + Prt Scキーで
C:\Users\ユーザ名\Pictures\Screenshots
へキャプチャー画像が保存されていきます。
でもこの機能ではウインドウのキャプチャーが出来ません。
そこで見つけたのがGreenShot
どんな感じかとういうと起動するとまずタスクトレイに入って
右クリックでメニュー
最初は英語ですが、Preferencesから簡単に日本語化することが出来ます。
ややこしいことはなにもありません。
設定で出力フォルダと、動作を指定するだけで
ショートカットキーでフルスクリーンやウインドウキャプチャーの
画像がどんどん作成されていきます。
ファイルの名前の形式に${title}を入れることが出来るので
2015-06-09 05_49_41-設定.pngみたいなファイル名にすることが出来ました。
これは便利!
ダウンロードとインストール
ダウンロード先
http://getgreenshot.org/
downloadページに進みversion historyをクリック
installerをダウンロードして
このページでちょっと待っているとダウンロードが始まります。
インストールは特に難しいこともなく、Select Componetsで日本語にチェックを入れます。
起動してPreferencesから色々とカスタマイズして完了です!
Ubuntu 15.04 ノートパソコンを閉じてもスリープさせない
/etc/systemd/logind.confを設定します。
#HandleLidSwitch=suspend
となっている行を下記に修正します。
HandleLidSwitch=ignore
そしてコンフィグを読み込み直します。
$ systemctl restart systemd-logind
これでノートパソコンを閉じてみてください。