ディスクがいっぱいです
アプリが保存できなくなりました。エラーは「空き容量がありません」です。ディスクを買い足す前に、エンジニアは、何が場所を使っているかを調べます。古いファイルを1つのアーカイブにまとめて、ほかへ移します。すると、アプリはまた動きます。
このレッスンが終わると
メモ
ファイルをまとめ、ディスクの空きを調べ、Web からファイルを取ってくることができる。
キーワード
- アーカイブ:たくさんのファイルを1つにまとめたもの。
- 圧縮:ファイルを小さくすること。
- ディスク:電源を切ってもファイルが残る場所。
- メモリ:動いているプログラムが、使っているものを置く場所。
- ダウンロード:Web のファイルを、このマシンにコピーすること。
ウォームアップ:すでに知っていること
メモ
頭の中で答えてみましょう。1. ホームフォルダーに移るコマンドはどれですか。2. ログとは何ですか。3. 小さいファイル2つより、大きいファイル1つのほうが、送るのが速いことがあるのはなぜですか。
はじめる前に
メモ
このレッスンの上にあるバーのラボを起動を押してください。このラボは、あなた専用の Ubuntu のマシンまるごとです。コンテナよりも、立ち上がるまで少し時間がかかります。実行ボタンを押すと、コマンドが順番にマシンのターミナルへ入力されます。「マシンはまだ起動中です」と出たら、数秒待ってからもう一度押してください。自分で入力と書かれたコマンドは、自然には終わらなかったり、途中で何かを聞いてきたりします。そのときは、バーのターミナルを開くを押して、自分で打ち込みます。
まとめて、ほどく
アーカイブは、ファイルを1つにまとめたものです。unzip は zip を開きます。gzip はファイル1つを小さくして、名前に .gz を付けます。gunzip は元に戻します。tar -czf はフォルダーを .tar.gz にまとめ、tar -tzf は中身を一覧にします。ほどくときは、同じ名前で tar -xzf を使います。
cdここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
unzip test.zipここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
cat inside.txtここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
gzip testここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
gunzip test.gzここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
tar -czf projects.tar.gz projectsここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
tar -tzf projects.tar.gzここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
チェック
ヒント
フォルダーを1つのファイルにまとめるコマンドと、その中身を一覧にするコマンドは、どれですか。答え: tar -czf でまとめ、tar -tzf で一覧にします。
マシンはどれくらいいっぱい?
df -h は、ディスクごとに、どれくらいいっぱいかを表示します。-h を付けると、人が読みやすい大きさになります。du -sh * は、このフォルダーの中のものが、それぞれどれくらい大きいかを表示します。free -h は、メモリを表示します。
df -hここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
du -sh *ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
free -hここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
Web から取ってくる
wget は、Web の住所からファイルを、いまいるフォルダーに保存します。curl は、その住所が返すものを表示し、-s を付けると進み具合を隠します。このラボには小さな Web サーバーがあり、localhost:8000 で動いています。だから、インターネットがなくても動きます。
wget http://localhost:8000/report.csvここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
cat report.csvここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
curl -s http://localhost:8000/hello.txtここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
最後のチェック
ヒント
前に戻らずに答えましょう。1. df -h の -h は何をしますか。2. Web のファイルをこのフォルダーに保存するコマンドはどれですか。3. gzip は、ファイル名をどう変えますか。答え: 人が読みやすい大きさで表示する。wget。.gz を付ける。
先生へ
ヒント
このレッスンは VM ラボで進めます。生徒一人ひとりに専用の Ubuntu マシンがあり、実行ボタンはそのターミナルに入力して、表示された結果を見せます。学習のポイント:1. zip、gzip、tar でまとめたりほどいたりします。2. df、du、free で、マシンが何を使っているかがわかります。3. wget と curl で、住所からものを取ってきます。 よくある間違い:中身を確かめずに、いるフォルダーにほどいてしまうこと。 必要なもの:ラボとブラウザー。ヒント:一覧にする前に、中に何が入っているかを予想させて、あとで比べましょう。 このラボにはチェックがなく、採点はしません。提出物がほしいときは、先生が自分で用意してください。