Linux初期導入-備忘録-
- 前書き
メインPCが潰れたので、新しいPCを買うことにしました
こちらのSTYLE-15HP012-C-CEを。
celeronNシリーズ?安いからええやろ
SSd240GBにメモリ8GB積んだので、こーせーのーパソコンですよ。
Windowsに飽きていたこと、LPICの勉強をしていること
業務でLinuxを使ってること、CeleronNみたいなパソコンでwin10がサクサク動くか心配だった
みたいな理由で、OSLESSで注文してLinuxを入れることとしました。
入れたLinuxのディストリビューションはlubuntuです。ubuntuの軽量版ってやつです。
- 初期導入アプリ編
使い始めて2週間以内でインストールしたアプリです。ここに書いてあるものはapt-getで取得できます。cat .bash_history |egrep "apt install|apt-get install"とかで、何インストールしたか調べたので漏れはないはず...。
①steam
公式から落としてもうまく行かない(なぜか)ので、apt-getで落としましょう
PC買う理由の5割はTales of Maj'eyalとgremlins,inc.やるようなものなので、必須品です
②vim
viの強化版(多分)。.vimrcに色々書けば、かなり使いやすくなる。
キー操作がややこしいけど、覚えればかなり高速操作ができる。あと軽い。
③gnome-screenshot
スクショ。--delay n --windowとかオプション指定すると割と使える
④smartmontools
smartctrlコマンドのために。SSDの寿命が見れるっぽいので便利
smartctl -a /dev/sda|egrep "Media_Wearout_Indicator|ATTRIBUTE_NAME"をalias登録して毎日確認している
⑤gimp
超高性能なペイントツール。あれば、画像加工には困らない
⑥joystick jstest-gtk
コントローラのデバイスアプリ。Logicoolのコントローラはこれで認識したので、多分入れとけば大丈夫。
⑦w3m
テキストラインのブラウザ。軽いのと、一部サイトはGUIより見やすい。
lubuntuにはfirefoxが入ってるので、それで十分といえば十分。
⑧tw
コマンドラインでtwitterのタイムラインを見たり、ツイートできる。
軽いのはいいこと。ブラウザ上のtwitterでいいといえばいい。
※apt-getではインストールできないっぽいです。
apt-get install ruby gemでrubyとrubyのパッケージ管理システムであるgemを取得
その後、gem install twとすることで、twが取得できます。
本来、gvim等を追加するものですがvimのクリップボードがこれを入れると有効になるらしいので
ひとまず、この辺りを。
- .bashrcに書いたこと
aliasだけですが。
①alias tome4='steam steam://rungameid/??????'
steamのゲームをダウンロードした際、デスクトップアイコンを作成し、それをvimかなんかで覗くとsteamゲーム起動のコマンドが見れるので、それをゲームごとにalias登録する。
これでコマンドラインからsteamゲームが起動できる
②chkssd='sudo ~/shell/ssd/checkssd.sh'
以下を登録
#!/bin/bash echo "100が最大、0に近づくと危ない" smartctl -a /dev/sda|egrep "Media_Wearout_Indicator|ATTRIBUTE_NAME"
100-(書き込み回数*100/書き込み上限数)が表示されるはず。
少なくなったらバックアップ取ろう
③alias templatecpp='~/shell/program/c++sample.sh'
以下を登録
#!/bin/bash cd $(dirname $0) SDIR=`pwd` cd - echo "以下ファイルをコピー" cat ${SDIR}/.c++sample.txt cp ${SDIR}/.c++sample.txt ./main.cpp echo "終了"
shと同ディレクトリには、以下のファイルを
#include<iostream> #define DEBUG using namespace std; int main(){ }
競プロとかだと、アホほどマクロ書くので
こういうコマンドは必須な気がする
④alias w3m-google="w3m https://www.google.co.jp/"
w3mをgoogleで開く。w3m自体、あまり使わないけど何かに気分でw3mでネットサーフィンしたいときに
⑤alias timeline="tw -st"
tw -stで、tweetのタイムラインが更新されたら順次ターミナル画面に更新される
-st = stream(ストリーム)らしいけど、パッと出てこないので
⑥alias rm="~/shell/command/trashrm.sh"
以下を登録
#!/bin/bash cleanflag=false now=`date +%Y%m%d%H%M%S` if [ "$#" != "0" ]; then echo "以下、対象ファイル" mkdir ~/.local/share/Trash/files/$now for i in "$@" do if [ "$i" != "--clean" ]; then ls -R "$i" mv -f "$i" ~/.local/share/Trash/files/$now/ else cleanflag=true fi done echo "ゴミ箱にポイしました" if [ $cleanflag == true ]; then rm -fr ~/.local/share/Trash/files/* echo "ゴミ箱を空にしました" fi else echo "引数がおかしいよ!" fi
rmの誤操作防止。
rm -f *して気づいたときには遅かったりするので、消すのではなくゴミ箱に移すようaliasとシェルで矯正。
bashrcの説明というよりか、シェルスクリプト紹介になりましたが....。
- .vimrcに書いたこと
vim使うなら、書いておこう
"マウス操作を有効 "set mouse=a "クリップボード有効 "vim --version|grep clipboardで"-clipboad"が出たなら "vim-gtkをインストール。これで+clipboardに。 " "+yでコピー、"+pで貼り付け set clipboard=unnamed,autoselect "右端と次の行の左端がカーソル移動でつながる set whichwrap=b,s,h,l,<,>,[,],~ "余裕を持ったスクロール set scrolloff=2 "たまにバックスペースで削除できなくなるため、対策 set backspace=indent,eol,start "タブの代わりに空白 set expandtab "タブの幅 set tabstop=4 "自動インデントの幅 set shiftwidth=4 "自動インデント set autoindent "検索時大文字小文字無視 set ignorecase "検索文字に大文字があるなら無視しない/*{{{*//*}}}*/ set smartcase "検索結果をハイライト set hlsearch "ESC,ESCでハイライト削除 nnoremap <silent> <ESC><ESC> :nohlsearch<CR> "行番号表示 set number "折りたたみ機能 "visualmodeでzfで範囲に折りたたみ追加 "zdで折りたたみ削除、zxで折りたたみ更新 "重いらしいので、動作があれなら切る set foldmethod=marker "コマンド折りたたみ時の、コメントアウト指定 set commentstring=//%s "折りたたみ時のマーカ指定 set foldmarker=[[[fold->,<-fold]]] "行番号の色を白色に highlight LineNr ctermfg=239 "現在行のハイライト set cursorline "行番号のみハイライト(オレンジ) hi clear CursorLine "文字コードをutf-8 set encoding=utf-8 set fileencoding=utf-8 "行末の一文字先までカーソル移動ができる set virtualedit=onemore "対応する括弧を強調表示 set showmatch "カーソルが飛ぶ時間を短く set matchtime=1 "ステータス行を常時表示 set laststatus=2 "行末の空白をハイライト(赤) augroup HighlightTrailingSpaces autocmd! autocmd VimEnter,WinEnter,ColorScheme * highlight TrailingSpaces term=underline guibg=Red ctermbg=Red autocmd VimEnter,WinEnter * match TrailingSpaces /\s\+$/ augroup END " 編集箇所のカーソルを記憶 if has("autocmd") augroup redhat autocmd BufRead *.txt set tw=78 autocmd BufReadPost * \ if line("'\"") > 0 && line ("'\"") <= line("$") | \ exe "normal! g'\"" | \ endif augroup END endif "Yを行末までのヤンクに nnoremap Y y$ "Enterで、改行して挿入モードへ移行 nnoremap <ENTER> i<ENTER> "vimが長い行を表示しなくなるのを阻止 set display=lastline " 全角スペースのハイライトを設定 function! ZenkakuSpace() highlight ZenkakuSpace cterm=underline ctermfg=red gui=underline guifg=red endfunction if has('syntax') augroup ZenkakuSpace autocmd! " ZenkakuSpaceをカラーファイルで設定するなら次の行は削除 autocmd ColorScheme * call ZenkakuSpace() " 全角スペースのハイライト指定 autocmd VimEnter,WinEnter * match ZenkakuSpace / / augroup END call ZenkakuSpace() endif
ネット検索すれば色々出てくるので、気に入ったものをはっつけていけば良い。
- SSD寿命対策
Linuxは初期設定だとSSDにやたら書き込むので寿命がきやすくなるとか
SSD Linux とかで検索すると色々出てくる
#SSD寿命対策。仮想メモリ割当時のSSD書き込みをなくす
vm.swappiness = 0
#キャッシュの書き込み頻度を5s->15s
vm.dirty_writeback_centisecs=1500
/etc/sysctl.confにとりあえず、この辺りを。
/etc/fstab のrealtimeをnoatimeに書き換えると、アクセス更新の書き換えがなくなるのでいい。
これらの設定は、基本必要だからこそあるので
よく考えないと大変なことになる可能性がある。
- 終わりに
ubuntu系は最初からしっかりしているので、絶対しないといけないことはないと思う
+α、使いやすくするためにこの辺りを。
長く使えば、もっと色々増えるんだろうか...。
※備忘録なので、間違っても文句言わないでくだしゃぁ
- 更新履歴