• 検索結果がありません。

情報処理概論(第二日目)

N/A
N/A
Protected

Academic year: 2021

シェア "情報処理概論(第二日目)"

Copied!
67
0
0

読み込み中.... (全文を見る)

全文

(1)

Linux入門講習会

九州大学情報基盤研究開発センター

本資料は以下のURLで閲覧できます.

(2)

2

スケジュール

Linuxの概要

計算機への接続

, ログイン, ログアウト

Linuxの操作

ファイル操作

テキストファイルの編集

その他のコマンド

ssh公開鍵認証

(3)

3

UNIX とは

OS(Operating System)の一種

 OS: 計算機の管理を行う基本ソフトウェア  キーボードからの入力、ディスプレイへの出力、 ファイルの読み書き、プロセスの管理など  代表的な OS: UNIX、Windows、DOS、MacOS 等 CPU OS 計算機 ディスプレイ キーボード 周辺機器 (ハードディスク、プリンタ等)

(4)

Linuxとは

UNIX風のOS

 厳密にはUNIXではないが、UNIXとの互換性を意識 

Linuxの構成要素の多くはフリーのソフトウェア

 誰でもソースコードの殆どを参照できる. 

Linuxと呼ばれるOSにも多くの種類がある

 RedHat, Debian, SUSE等の系統がある.

 有料で販売されているものもある.

(5)

情報基盤研究開発センターの

研究者用計算機システム

 tatara.cc.kyushu-u.ac.jp  富士通 PRIMERGY CX400 S1  Intel Xeon 2.7GHz x 16コア x 1476ノード メモリ: 128GB / ノード  hayaka.cc.kyushu-u.ac.jp  富士通 PRIMEHPC FX10  Fujitsu SPARC64 Ⅸfx 1.848GHz x 16コア x 768ノード メモリ: 32GB / ノード  hakozaki.cc.kyushu-u.ac.jp  日立 HA8000-tc/HT210  Intel Xeon 2.7GHz x 24コア x 965ノード メモリ: 256GB / ノード  mikasa.cc.kyushu-u.ac.jp  日立 SR16000モデルVM1

(6)

6

情報基盤研究開発センターへの

利用登録

 アカウント  情報基盤研究開発センターの研究者用計算機利用権  以下の Webページで「利用申請書」を入手し記入後提出  1~2週間程度で「利用承認書」送付  利用承認書:アカウントに関する情報  ユーザー ID  初期パスワード http://www.cc.kyushu-u.ac.jp/scp/users/download.html

(7)

情報基盤研究開発センターの

問い合わせ窓口

ホームページ:

http://www.cc.kyushu-u.ac.jp/scp/  計算機利用法等の資料  利用申請書  運用情報 等 

電子メール:

[email protected]

(8)

8

スケジュール

Linuxの概要

計算機への接続

, ログイン, ログアウト

Linuxの操作

ファイル操作

テキストファイルの編集

その他のコマンド

ssh公開鍵認証

(9)

計算機への接続

 中~大規模の計算機は通常複数の利用者で共同利用 するので,ネットワークを介した遠隔利用が主体  UNIX等はネットワーク経由の共同利用が得意 TeraTerm wisdom% ■ TeraTerm tatara% ■ wisdom tatara hakozaki

(10)

10

PCからの接続

 ログイン

 Windowsより: PuTTY, TeraTerm等の

接続ソフトウェアを利用  UNIX, MacOSより: sshコマンド  ファイル転送  Windowsより: WinSCP等のソフトウェアを利用  UNIX, MacOSより: scpコマンド sftpコマンド

(11)

接続用ソフトウェアの入手

TeraTerm

WinSCP

http://sourceforge.jp/projects/ttssh2/

(12)

12

セッション:

Linux の利用開始から終了まで

Linuxへの接続

Linuxへのログイン

 パスワードによる認証後、セッション開設 

作業

 ファイル操作等 

Linuxからのログアウト

 セッション終了

(13)

接続

Windowsの場合

 TeraTermを起動

 Tera Term New Connection ウィンドウで

 Hostにホスト名(例えば wisdom.cc.kyushu-u.ac.jp)を入力  Service の SSH をチェックして [OK]

 SECURITY WARNINGウィンドウがでたら

Add this machine ... をチェックして [Continue]

 エラーが出ても、慌てず [OK]

MacOSの場合

 ターミナルを起動

(14)

14

ログイン

Windowsから TeraTermで接続している場合

 ユーザID,パスワードを入力

 Use plain password to log in をチェックして[OK]

MacOSから接続している場合

(15)

パスワードの重要性

ユーザーの認証に利用

 他人に知られた場合の危険  ファイルの破壊  そのユーザーになりすまして悪用される  etc. 

パスワードの管理

 他人に知られないようにする  パスワードの変更: passwd コマンド  メモ等、他人が読める形で残さない  類推が容易なパスワードは避ける

(16)

16

サーバからのログアウト

exit コマンドによりセッション終了

Windowsのログオフやシャットダウンをする前に必ず

Linux からログアウト

 実行中のプログラムがそのまま残る可能性あり.

(17)

スケジュール

Linuxの概要

計算機への接続

, ログイン, ログアウト

Linuxの操作

ファイル操作

テキストファイルの編集

その他のコマンド

ssh公開鍵認証

(18)

シェル

ファイルの操作やプログラムの実行を行うための

インターフェイス

 Windowsではexplorer,Mac OSではFinderに相当  基本的な操作は全てシェル上で行う 

Linuxでは複数のシェルが利用可能

18

(19)

シェル

- bash

RedHat系やSUSE系で既定値のシェルとして採用

されているシェル.

様々な機能が利用可能で比較的高機能

.

 補完機能 コマンドやファイル名を途中まで入力し, TABキーを押すと残りを補完する.  コマンド履歴の呼び出し機能 今まで入力したコマンドを矢印キーの上下で 呼び出す.  コマンド行編集機能 入力中のコマンドの書き換え、 カットアンドペースト等.

(20)

20

bashの利用法

 通常のコマンドに加え,以下の機能を利用可能 キー操作 機能 → カーソルを一つ右に移動 ← カーソルを一つ左に移動 C-a, Home 左端に移動 C-e, End 右端に移動 C-u 全部削除 C-k カーソルから右側を切り取り C-y 直前に切り取った部分を貼り付け ↑ 実行したコマンド履歴の古い方へ ↓ 実行したコマンド履歴の新しい方へ TABキー コマンドやファイルの補完 ※ C-x … Ctrl キーを押しながら x を押す.

(21)

Linux のコマンド入力

 プロンプト = コマンド入力待ち  基本的なコマンドの形式  半角スペースで区切る  打ち間違えたら  BackSpace(後退), C-u (クリア) で訂正  改行キーを押して実行 [ユーザ名@wisdom]$ ■ コマンド名 オプション 引数 pwd cd test ls -l test

(22)

Linux のコマンド入力

オプションが複数ある場合

 Linuxの基本的なコマンドで、 「ハイフン1つ+アルファベット1文字」 のオプションが複数ある場合,ハイフンの後にアルファベ ット部分を連続して書いても同じ結果が得られる.  例) 22 % ls -a -l % ls -al

(23)

スケジュール

Linuxの概要

計算機への接続

, ログイン, ログアウト

Linuxの操作

ファイル操作

テキストファイルの編集

その他のコマンド

ssh公開鍵認証

(24)

24

Linuxにおけるファイルの整理

 ファイルの数が多くなると  目的のファイルを探すのが面倒  新しく作るファイルの名前を考えるのが面倒  ディレクトリ(= ファイル分類用の箱)を利用して整理  ファイルを目的別に分類して格納することにより, 管理(探索,再利用,削除等)を容易にする.  Windows のフォルダと同じ働き.

(25)

ファイルの分類法

自分が管理しやすいように

.

 例えば 1.研究に関連するファイルは work ディレクトリの中に置くことにする. 2.さらに, workディレクトリの中に プロジェクト毎のディレクトリを用意し分類する. proj3 proj1 proj4 proj2 work

(26)

26

ファイルとディレクトリの構造

準備:

ディレクトリにファイルが入っている状態を

このように表すことにする

.

fortran test1.f90 fortran test.f90 test2.f90 test3.f90 april may test.f90 test.f90 複数のファイルが 入っている状態 ディレクトリとファイルが 混在している状態 1つのディレクトリに 1つのファイルが 入っている状態 fortran test.f90

(27)

サーバ全体のファイル構造

 逆さにした木のような構造  一番上にルート(根)ディレクトリ / usr tmp home etc usr0 a99999a work ルートディレクトリ - 階層構造の起点 usr1 usr9 a00009a ホームディレクトリ - ログイン時のカレントディレクトリ - ユーザー毎に用意 カレントディレクトリ -作業対象となるディレクトリ - cd コマンドで適宜変更可 - 最初(ログイン直後)は ホームディレクトリ proj1

(28)

28

ホームディレクトリと

カレントディレクトリ

 カレントディレクトリ(=現在"いる"ディレクトリ)を 基準としてファイルやディレクトリの場所を指定する.  ログイン直後はホームディレクトリ (=自分専用のディレクトリ)に ”いる”.  例1: カレントディレクトリに ディレクトリ作成  例2: カレントディレクトリの test.f90 を カレントディレクトリの下の work ディレクトリに移動 % mkdir work % mv test.f90 work

(29)

カレントディレクトリの確認

pwd コマンド

使い方:

pwd

使用のタイミング:

 cdコマンドで移動した後の確認.  重要な操作(ファイルの削除や移動等)を 行う前の確認.

(30)

30

ファイルの一覧表示

ls コマンド

 使い方: ls [オプション] [ファイル名またはディレクトリ名]  例1: カレントディレクトリのファイル,ディレクトリを表示  例2: workディレクトリの下のファイル,ディレクトリを表示  例3: カレントディレクトリの下のファイル,ディレクトリの 詳細情報を表示  例4: 指定したファイルの詳細情報を表示 % ls % ls work % ls -l % ls -l ファイル

(31)

ドットファイル

(隠しファイル)

普通に

lsコマンドを実行した際には表示されないフ

ァイルがある.

 ファイル名の先頭が . (ドット)になっているファイル  主に設定ファイル等がこの形式のファイルになっている. 

lsコマンドで表示するには-aオプションを追加する.

 例:カレントディレクトリの下の隠しファイルを含めた 全ファイル,ディレクトリの詳細情報を表示 % ls -al

(32)

32

ディレクトリの作成

mkdir コマンド

使い方:

mkdir 作成したいディレクトリ名

 例: workディレクトリの作成 空白(スペース)を 忘れない work % mkdir work

(33)

別のディレクトリに移る

cd コマンド

 使い方: cd [移動先ディレクトリ]  別のディレクトリに移る = カレントディレクトリの変更  移動先ディレクトリを指定しない場合, ホームディレクトリに移る.  例1: workディレクトリに移る.  例2: ホームディレクトリに移る. a99999a work test.f90 カレントディレクトリ % cd work % cd

(34)

34 test.f90

別のディレクトリに移って作業

 作業対象のファイルやディレクトリがある ディレクトリに移って作業する.  例: work ディレクトリに移って, 各プロジェクトのディレクトリを作成する. a99999a work

proj1 proj2 proj3 proj4 カレントディレクトリ

ディレクトリを移らない場合,キー入力が大変:

% mkdir work/proj1 work/proj2 work/proj3 work/proj4 % cd work

(35)

パス: ファイルやディレクトリの場所

 目的のファイルやディレクトリまでたどる際の経路 (path)にあるディレクトリを列挙  二通りの記述方法(どちらでも良い)  相対パス:カレントディレクトリからたどるパス  絶対パス:ルートディレクトリからたどるパス / home a99999a work test.f90 user9 カレントディレクトリ 絶対パス 相対パス

(36)

36

パスの記述方法

:

「ディレクトリの下」 を / で記述

 例:(今ホームディレクトリにいる状態で) workディレクトリの下の test.f90 を指定  相対パス (カレントディレクトリの下の) workの下のtest.f90 work/test.f90  絶対パス ルートディレクトリの下の home の下の

usr9 の下の a9999a の下の work の下の test.f90

/home/usr9/a99999a/work/test.f90  ルートディレクトリも / で記述する. / home a99999a work test.f90 user9 カレントディレクトリ

(37)

パスの記述に用いる特殊な記号

 一つ上のディレクトリ .. (ピリオド二つ)  例: カレントディレクトリの一つ上に移る  カレントディレクトリ . (ピリオド一つ)  例: 一つ上のディレクトリの test.f90 をカレントディレクトリに移動する.  ホームディレクトリ ~例: ホームディレクトリの work ディレクトリに移る. te199999 fortran カレントディレクトリ % cd .. % mv ../test.f90 .

(38)

38

ファイルの移動

mv コマンド

 使い方: mv 移動元 移動先  例1: test.f90 を workディレクトリに移動  例2:test.f90 の名前を test2.f90 に変更

 例3:test1.f90, test2.f90, test3.f90 を

test ディレクトリに移動 work test.f90 test.f90 test.f90 test2.f90 test1.f90 fortrantest test1.f90 % mv test.f90 work % mv test.f90 test2.f90

(39)

ファイルの複製

cp コマンド

 使い方:

cp [オプション] 複製元 複製先

 例1: test.f90 を test2.f90 という名前で複製

 例2: test.f90 と test2.f90 を work ディレクトリにコピー

例3: (backupディレクトリがまだ存在しなければ) work ディレクトリ全体を backupという名前で複製例4: (backupディレクトリが既に存在すれば) work ディレクトリ全体を backupディレクトリの下に複製 % cp test.f90 test2.f90 % cp -r work backup

(40)

40

ファイルの削除

rm コマンド

 使い方: rm [オプション] 削除するファイルやディレクトリ  例1: test.f90 と hello.f90 を削除  例2: workディレクトリとその下の全てのファイルを削除  例3: 削除の前に確認 % rm test.f90 hello.f90 % rm -r work % rm -ir work

(41)

ファイル名の補完 *

ファイル名の一部だけを入力して操作できる

 例: ファイル名の最初が test で,末尾が f90 であるファイル全てを testディレクトリに移  便利で危険な機能  思いもよらないファイルまで操作してしまうことがあるので注意. % mv test*f90 test

(42)

42

Linuxのファイルに関する注意

 削除したら(原則として)復元不可能  「ごみ箱」 は存在しない.  コピーや移動で既に存在するファイルが コピー先や移動先になっている場合上書きされる.  この場合も復元不可能  各ファイルについて削除や上書きの前に確認する -i オプ ションを利用する. rm –i –r ディレクトリ mv –i ファイル1 ファイル2 ファイル3 ディレクトリ cp –i ファイル1 ファイル2 ファイル3 ディレクトリ

(43)

ファイルの内容表示

less コマンド

使用法:

less ファイル名

 ファイルの内容を1ページずつ表示  閲覧中は以下のキーを利用  次のページへ: SPACE もしくは f  前のページへ: b  1行下へ: Enter もしくは j  1行上へ: k  閲覧終了: q

(44)

44

実習1: ログインとファイル操作

ログイン

ファイル操作

ログアウト

実習1

(45)

スケジュール

Linuxの概要

計算機への接続

, ログイン, ログアウト

Linuxの操作

ファイル操作

テキストファイルの編集

その他のコマンド

ssh公開鍵認証

(46)

46

Emacs(イーマックス)

UNIXにおける標準的なエディタ

プログラムやジョブスクリプトなどの

入力に利用

.

 実は,メールの読み書きやWebページの 閲覧も可能.

(47)

Emacs

 使い方 emacs ファイル名  例: hello.c の編集  指定したファイルがまだ存在しない場合は新規作成.  既に存在する場合は読み込んで修正.  修正後保存すると,修正前のファイルが ファイル名~ という名前で残る. % emacs hello.c

(48)

48

Emacs の画面

起動後

[--]E_:----Emacs: hello.c

(C)--L1--All---テキストウィンドウ: 文書の編集を行う

モード行: Emacs の状態を表示 ミニバッファ: コマンドの入力、

Emacs からのメッセージ表示

(49)

Emacsのコマンド

キー操作 意味 C-a 行の先頭に移動 C-e 行の末尾に移動 C-k カーソルから右を切り取り C-y 直前に切り取った部分を貼り付け C-g 取り消し(画面が乱れた時に使用) C-x C-s ファイルにセーブ C-x C-c Emacs の終了 ※ C-x … Ctrl キーを押しながら x を押す.

(50)

50

連続行のコピー

連続行の切り取り:

C-k を連続して押すと連続行を切り取り可

C-k 以外の操作を行うと連続行の切り取り終了

 C-y を押すとその時点で切り取られた連続行を全て貼 り付け  C-k 以外の操作を行った後再び C-k を押すと, それまでの切り取り分はクリアされる.

(51)

Emacsで変な画面になったときは

 何かのコマンドを誤って入力した場合, そのコマンドに関するメッセージが表示される.  まず, C-g (取り消し) を数回押してみる.  元に戻ったら, 入力を続ける.  元に戻らなければ, 一旦 C-x C-c で Emacs を終了する.  Save file .... ? には y を入力.  その後,あらためて % emacs さっき編集していたファイルの名前 でEmacsを起動.

(52)

52

実習

2: テキストの編集

実習2

(53)

スケジュール

Linuxの概要

計算機への接続

, ログイン, ログアウト

Linuxの操作

ファイル操作

テキストファイルの編集

その他のコマンド

ssh公開鍵認証

(54)

54

オンラインマニュアルの利用

 使い方: man 調べたいコマンド  例: コマンド ls のマニュアルを表示 % man ls LS(1) ls (fileutils) 4.1 (April 2001) LS(1) NAME

ls - list directory contents SYNOPSIS

ls [OPTION]... [FILE]... DESCRIPTION

List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuSUX nor --sort.

-a, --all

do not hide entries starting with . -A, --almost-all

do not list implied . and .. -b, --escape

(55)

使い方

nkf オプション ファイル

計算機内部では文字が番号(コード)で扱われる.  日本語(漢字,ひらがな,カタカナ)が扱える文字コード EUC 主に UNIX で利用されていた JIS 主にインターネットで利用

Shift-JIS 主にPC(Windows, Macintosh)で利用 UTF8 近年普及している多言語対応コード  表示や動作が異常なプログラムは変換してみる.  例: 文字コードをUNIX 向け(UTF8)に変換  例: ファイルの文字コードを判別

漢字コード変換

% nkf -w hello.c > hello-e.c

(56)

56 

使い方

scp オプション 転送元ファイル 転送先

 例: サーバから手元のPCへファイル転送  例: 手元のPCからサーバへファイル(ディレクトリ)転送

サーバ間のファイル転送

% scp ユーザ名@wisdom(略).jp:~/test.txt ./ ※ 手元のPC上で操作 ~/はホームディレクトリを意味 ./ は手元PCでのカレントディレクトリを意味 % scp -r ./testdir ユーザ名@wisdom(略).jp:~/ ※ 手元のPC上で操作 testdirはディレクトリ -r はディレクトリを転送する際に必要なオプション

(57)

使い方

find 検索場所 -name 検索ファイル名

 指定したディレクトリ配下で指定したファイル名に該当する ファイルを検索する  例: ホームディレクトリ配下で名前に test を含むものを検索

ファイルの検索

(58)

58 

使い方

grep 検索文字列 対象ファイル

 指定したファイル内で検索文字列に該当する行を検索する  例: test.c 内で文字列 abcdef を含む行を検索  例: カレントディレクトリ内の全ファイル内で 文字列 abcdef を含む行を検索

ファイル内の文字列検索

% grep “abcdef” test.c

(59)

出力結果をファイルに出力

 リダイレクション > 左側のコマンドからの出力を画面に 表示せず右側のファイルに保存 >> 左側のコマンドからの出力を画面に 表示せず右側のファイルに追加 < 左側のコマンドに対する入力として 右側のファイルの内容を利用 % ls > dirs

% sort -r < dirs > rdirs

例) ls コマンドの結果を dirs に出力 更にその内容を整列して rdirs に保存 hello.c hello2.c work/ work/ hello2.c hello.c

(60)

60

標準出力と標準エラー出力(1)

 画面に表示される出力は実は2種類ある

標準出力 - 通常の出力。 1> で指定 ( >のみでも可) 標準エラー出力 - エラーメッセージ等の出力。 2> で指定

% ls –lR /home/lecture 1>file1 2>file2

例) ls コマンドの結果を標準出力とエラー出力に分けて ファイルに出力する file1 に ls の通常の実行結果が出力される /home/lecture下には他ユーザのホームがあり、 それらの情報は表示できずエラーとなるため、 そのエラーはfile2に出力される

(61)

標準出力と標準エラー出力(2)

 標準出力と標準エラー出力は、通常入り混じって画面に表示される

画面に表示されるものと同じように標準出力と標準エラー出力が 混ざった状態の出力を保存するには下記のように指定する

% ls –lR /home/lecture >file 2>&1

例) lsコマンド実行結果の標準出力とエラー出力をつなげて

(62)

62

出力結果を他のコマンドの入力に利用

パイプライン

左側のコマンドからの出力を画面に

表示せず右側のコマンドの入力として

利用

% ls | sort -r > rdirs 例1) ls コマンドの結果を整列して rdirs に保存 work/ hello2.c hello.c % ls -l | less 例2) ls コマンドの結果を less で 1ページずつ表示

(63)

実習

3:その他のコマンド

findの利用

grepの利用

リダイレクションの利用

パイプラインの利用

標準エラーと標準出力の保存

実習3

(64)

64

スケジュール

Linuxの概要

計算機への接続

, ログイン, ログアウト

Linuxの操作

ファイル操作

テキストファイルの編集

その他のコマンド

ssh公開鍵認証

(65)

ssh公開鍵認証

パスワードの代わりに鍵ファイルで

ログイン認証を行う

あらかじめ鍵ファイルのペア

(公開鍵・秘密鍵)を

作成しておき、秘密鍵を手元の

PCに、

公開鍵をサーバに置く

ログイン時にクライアント

(手元PC)とサーバの鍵

ファイルペアを検証し、正しい組み合せならログイ

ンを許可する

パスワード認証に比べて、強固で安全な認証方式

(66)

66

実習

4:ssh公開鍵認証の設定

鍵ファイルペア

(公開/秘密)の作成

サーバへ公開鍵を転送

公開鍵の登録

鍵認証でのログイン

実習4

(67)

お疲れ様でした

 実習で利用した ID は1週間利用できます.

 不明な点等は

[email protected]

参照

関連したドキュメント

文字を読むことに慣れていない小学校低学年 の学習者にとって,文字情報のみから物語世界

 BRAF V 600 変異腫瘍に対しBRAF キナーゼ阻害薬が効 果を示す一方で,

アメリカ心理学会 APA はこうした動向に対応し「論 文作成マニュアル」の改訂を実施してきている。 21 年前 の APA Publication Manual 4th Edition(American

Maurer )は,ゴルダンと私が以前 に証明した不変式論の有限性定理を,普通の不変式論

Maurer )は,ゴルダンと私が以前 に証明した不変式論の有限性定理を,普通の不変式論

LLVM から Haskell への変換は、各 LLVM 命令をそれと 同等な処理を行う Haskell のプログラムに変換することに より、実現される。

しかし,物質報酬群と言語報酬群に分けてみると,言語報酬群については,言語報酬を与

あれば、その逸脱に対しては N400 が惹起され、 ELAN や P600 は惹起しないと 考えられる。もし、シカの認可処理に統語的処理と意味的処理の両方が関わっ