ファイルの仕組みと操作
$ cat file1
$ less file1
### lessで表示後の操作
enterで1行進む
スペースで1画面分進んで表示する
### ファイルの削除
$ rm file1 file2
複数まとめて削除できる
オプションの -f はforceの略。基本的に使ってはならない。
### ファイルのリンク作成
ハードリンクとシンボリックリンクがある。シンボリックリンクはwindowsのショートカットに相当。ハードリンクを削除するとリンク先のファイルも消える。シンボリックリンクはショートカットだけ消える。
$ ln -s file1 file_fuga
file_fugaというシンボリックリンクを作成する
> lsコマンドに-Fオプションを指定すると,シンボリック・リンクされたファイル名の後 > ろには特殊文字「@(アットマーク)」が付加されます。
### ファイル種類の判別
$ file hoge_file #=> hoge_file: ASCII text
- text テキストファイル
- executable 実行可能プログラム
- data その他
### ファイル名で検索する
ファイル名がcmd1とだけ分かっていてどこのディレクトリにあるか分からない時、
$ find . -name cmd1
### Linuxのファイル
- 通常ファイル
- ディレクトリファイル
- 特殊ファイル
Linuxはディレクトリもファイルで管理している。特殊ファイルはデバイスファイルとも呼ばれ、入出力装置や外部記憶装置を仮想的なファイルとして扱っている。
特殊ファイルは /dev 以下にある。
ファイルのパーミッション
### ファイルの仕組みと操作
- ファイルのパーミッション
> パーミッションの中で重要なのが,「ユーザー属性」と「アクセス権」です。
- lsのオプション
$ ls -F (file type)
bin/ file1 file2 file3
ディレクトリにはスラッシュが付いて表示される
$ ls -R (recursive)
$ ls -l (long)
-R を付けるとカレントディレクトリから下のディレクトリとファイル群が表示さる
-l を付けるとディレクトリとファイルの属性情報が表示される
各行の先頭の1文字はファイルの種類を表す。d はディレクトリ、通常ファイルは - で表されている。 特殊ファイルはc or b になる。
続く9文字はファイルのパーミッションを表す。
9文字は3文字ずつ、所有者のパーミッション、グループのパーミッション、その他のユーザーのパーミッションを表していて、
1、読み込み許可
2,書き出し許可
3,実行許可
となっている。これで3×3で9文字となっている。
### パーミッションの変更
$ chmod (chnage mode)
$ chmod g+w file1
'g' ファイル所有者の所属するグループのユーザー
'w' ファイルへの書き出し
'+' 許可する
'-' 許可しない
file1に対してその他のユーザーからのアクセスを一切許可しない場合、
$chmod o-rwx file1
ファイル所有者自身の書き出しも許可しない場合、
$ chmod u-w file1
こう書くと自分で誤ってファイルを削除してしまうことを防げるが編集もできないので、編集したい、削除したい場合は、chmodeで書き出し許可の設定をする。
体で覚えるLinuxの基本
### はじめに
Linuxという呼び方は、カーネルを指していて、OSが提供するさまざまな機能の中で最も基本的かつ重要な機能を提供するプログラムをカーネルと呼ぶ。
カーネルだけではアプリケーションを動かすことはできず、ライブラリやデバイスドライバなどが必要になる。そこで登場したのがインストールしたらすぐに使えるOSとして提供されるディストリビューションと呼ばれるOS群だ。
Linuxの大きな特徴
- マルチユーザー
- マルチタスク
- ファイルシステム
- シェル
- X Wndow System
* マルチユーザー
複数のユーザーが同時に一台のコンピュータを利用できる。
* マルチタスク
同時に複数のプログラムの処理をこなす。同時にログインしている複数のユーザーもマルチタスクで管理しているのかな?
* ファイルシステム
ファイルやディレクトリにアクセス出来る権限がある。そもそもルートと一般ユーザーに分けている。
### 一般ユーザーを登録する
> Linuxのようなマルチユーザー・システムでは,rootユーザーしか登録しないの> は,システム管理およびセキュリティの観点から許されないことです。
ユーザーの登録:
# useradd user_name_hoge
パスワードの設定:
# passwd user_name_hoge
### 登録したユーザーの削除:
# userdel user_name_hoge
'userdel' コマンドだとユーザーは削除されるが、ホームディレクトリが残ってしまうのでオプションを付ける。
# userdel -r user_name_hoge
### グループの削除:
# groupdel group_name_fuga
### ログアウトとシャットダウン
ユーザーはシステムの利用が終わったら必ずログアウトしなければならない。ログアウトしなければ、他人に勝手にシステムを使われてしまう。
- ログアウトのコマンド
logou ot exit
- ログアウト後、コンピュータの電源を切る場合は
shutdown -h now
- 再起動したい場合は
shoudown -r now
### rootと一般ユーザーを使い分ける
− suコマンド
suコマンドはシステム管理者だけでなく、別の一般ユーザーにもなれるコマンド。
$ su -
'exitTコマンドで一般ユーザーに戻る
### sudoコマンド
> sudoコマンドを使う場合は,別途設定が必要になります。sudoでは,一般ユー> ザーごとにあらかじめ許可しておいたコマンドのみをroot権限で実行できます。
> 例えば,一般ユーザーjunに自マシンからのみのシャットダウンの実行を許可す> るには,rootユーザーで「visudo」コマンドを実行して設定します。
visudo で開いたファイルにこの一行を追加する:
user_name_hoge host_name_fuga=/sbin/shutdown -h now
- シャットダウンする場合は、
$ sudo /sbin/shutdown -h now