7's workspace

業務外にSpringBootを使ってWebアプリを完成させるまでの記録

カーネルパニック

カーネルパニック

Macユーザーがカーネルパニックに陥ったという話は
よく聞きます。公式サポートページによると、

まれに、Mac が自動的に再起動して電源が切れ、「コンピュータを再起動する必要があります。」というメッセージが表示されるか、応答しなくなることがあります。これはカーネルパニックが発生したことを示します。

とのことです。解決方法としては、

カーネルパニックを防ぐには、ソフトウェア・アップデートで「お使いのソフトウェアは最新です。」というメッセージが表示されるまで、適用可能なすべてのソフトウェアアップデートを インストールします。OS X のアップデートによって、適切でないネットワークパケットなど、外部の問題に関する耐性が向上します。ここまでの手順を実行すると、ほとんどのカーネルパニックが解決されます。

とあげられています。
また、NVRAM/PRAMをリセットする方法も紹介されています。

 

  1. Macをシステム終了。電源を完全に落とす。
  2. Macの電源を入れる。
  3. 「command + option + P + R」の4つのキーを同時に押し続ける。グレーの画面が表示されるはずなので、そのまま押したまま待つ。
  4. Macが再起動して「ジャーン」という起動音が2回聞こえるまで、キーを押したままにする。我慢、我慢。
  5. 2回目の起動音が聞こえたら、キーを離してOK!これでNVRAM/PRAMはリセット完了!

 

LPIC(Linuxの資格試験)の勉強してて出会った重要語句まとめ - Qiita

cut / sort / unique / head / tail / リダイレクト

<cutコマンドとは>

パイプで渡された内容の各行から、必要な情報だけを切り取って渡すことができる。

ポイントは「デリミタ(区切り文字)」

⭐️--delimiter / -d:区切り文字

⭐️--fields / -f:取り出す位置

最後にパイプラインでlessをつなげると結果を目視確認できる

 

<sortコマンドとuniqueコマンド>

sort:入力して渡された内容をアルファベット順に並び替えるコマンド

unique:重複を取り除くコマンド(ただし、連続した重複のみ)

=>だからsortしてからuniqueをする!

sortのオプション --field-separator "," / -t ",":区切り文字(「,」で区切る)

        --key 3 / -k 3:列の指定(3列目)

        --number / -n:数値ソート

        --Ignore-leading-blanks / -b:半角スペースを無視してソート

uniqueのオプション -c は同じ内容が何回登場したかを数えることができる

 

<headコマンドとtailコマンド>

head:ファイルやパイプラインでの入力の先頭から10行だけ取り出す

tail:ファイルやパイプラインでの入力の末尾から10行だけ取り出す

⭐️head -n 3 だと、最初の3行を取り出すことになる

⭐️tail -n +3 だと、3行目以降を出力することになる

 

<リダイレクト>

>:既にファイルがある場合はそれを削除した上で新しいファイルが作られる

>>:既にあるファイルに対する追記になる

 

 

scpでネットワーク越しにコピー

<scpはSecure Copyの略>

CentOSなどのディストリビューションでは

yum install operssh-clients」でインストールの必要あり

 

7pc:-$ scp ./file.ext aaa@192.168.1.10:/tmp/

aaa=>ログインユーザー

192.168.1.10=>移転先のコンピュータ(ホスト名またはIPアドレス

/tmp/=>コピー先

 

こんなかき方もできます

7pc:-$ scp ./file.ext aaa@host:~/(ログインに使ったユーザーのホーム)

7pc:-$ scp ./file.ext aaa@host:~bbb(他のユーザーbbbのホーム)

7pc:-$ scp ./file.ext aaa@host:../../tmp/(相対パスはログイン後のホームディレクトリが起点となる)

 

まとめてファイルをコピーするには

scp aaa@host:/tmp/*.log /tmp

scp -r aaa@host:/tmp/results /tmp/

-rオプションでディレクトリを再帰的にコピー(コピー元にディレクトリを指定)

 

仮想端末

<tmux(今回はこれ) / screen / byobu>

SSHでサーバーに接続したら、続けて「tmux」と入力

※コマンドがない場合は「sudo apt-get install tmux」でインストール

もし接続が切れても・・・

7pc:-$ tmux attach

で切断前の状態にもどる!

⭐️Ctrl + B」は「Prefix Key」といって、他のアプリの邪魔にならないようにしている

「Ctrl + B」の後に「D(Detach)」:自分からtmuxの画面から抜け出す

「Ctrl + B」の後に「C」:tmuxで新しいタブを開く

「Ctrl + B」の後に「N」:次のページ

 

「Ctrl + B」の後に「P」:前のページ

「Ctrl + B」の後に「"」:画面を分割(横分割)

「Ctrl + B」の後に「%」:画面を分割(縦分割)

 

「Ctrl + B」の後に「方向キー」:分割した画面を切り替える

「Ctrl + B」の後に「Ctrl + 方向キー」:分割の境界を変える

 

「Ctrl + B」の後に「[」:カーソルを動かせる(本来はコピーペーストのために使う)

「Ctrl + B」の後に「q」:元の状態に戻る

  exit:分割を解除 

 

 

 

Vi / Vim

<ノーマルモードを基準とする>

最初はキーボードだけで操作していたため、1つのキーが複数の役割を持つように設計された。「モード」で分けている。

挿入モード:「I」 / esc

置換モード:「Shift + R」 / esc

選択モード:「V」 / esc

検索モード:「/」 / esc

 

<検索モードで正規表現を使用する時>

/¥v(aaa | bbb)

(スラッシュの後に¥vを入れる)

 

<コンソール環境ではデスクトップ環境と同じコマンドが使えない>

コピーはクリップボードにコピーする「ヤンク」を使用すると良い。

①ノーマルモードで選択を開始したい位置へカーソルを持っていく

②「V」で選択(ヴィジュアル)モードに切り替える

③方向キーを使って選択

④範囲が決まれば「Y(Yank)」キーでクリップボードにコピー

⑤「Shift + P」で貼り付け コマンド前に数字を入れると回数分処理される

 

<Undo(ctrl + z)コマンドは一時停止>

fg (BackGround→ForeGround)

 

ノーマルモードで「U」がUndoの役割(複数回OK)=>「9999U」で元に戻るもOK

「Ctrl + R」がREDOの役割

 

 

管理者権限 / grep検索

<sudoコマンド>

ーーコマンドラインの場合ーー

管理者権限で操作を行う時はsudoコマンドを使用する。

7pc:-$ sudo rm -r /var/share/aaa

(aaaを管理者権限で削除する。)

 

ーーGUIの場合ーー

7pc:-$ gksudo -sync nautilus

新規ウィンドウが開かれ、管理者権限で操作を行える。

 

grepコマンド>ファイル全体から正規表現にマッチする箇所を出力する

(g: global r: regular e: ecpression p: print )

7pc:-$ grep -r "検索したい文字列" /home/docs/...

-rはサブフォルダまで検索するという指定

 

 

 

 

SSHでログインする

<SSH -Secure Shell->

別のネットワーク経由で接続し、ログインして手元のPCのように操作できる。

インターネット経由でもIPアドレスさえ分かればリモート操作できる。

7pc:-$ ssh user@192.168.11.5

7pc:-$ exit

 

<Xを使う>GUI操作ができる

7pc:-$ ssh -Y -C user....

-Y =>Xの転送設定

-C=>通信内容の圧縮