• 日本語
    • English (英語)
Avintonジャパン株式会社Avintonジャパン株式会社Avintonジャパン株式会社Avintonジャパン株式会社
  • サービス
    • Avinton Data Platform
    • エッジAIカメラ
    • プライベートクラウド
    • AIサービス開発
    • AI画像解析 – 無償PoC
  • 最新情報
    • ニュースリリース&イベント情報
    • 技術ブログ&インタビュー
  • アカデミー
    • Avintonアカデミー
    • Academy on Campus
  • 採用情報
    • Avintonで働く魅力
    • 新卒採用
    • プロジェクトコーディネーター職紹介
    • 求人
    • よくある質問
  • 企業情報
    • 会社概要
    • 代表からご挨拶
    • SDGsへの貢献
  • お問い合わせ

ファイル管理

  • Python3.8 と OpenCV のインストール (Ubuntu20.04LTS)
  • ルーティング
  • postgreSQLへのshp fileのimport
  • NAT
  • PostGIS exercise
  • 三目並べ – 2.〇×を交互にゲーム盤に入るようにしよう
  • Docker 概要とセットアップ
  • 三目並べ – 3.勝敗がつくようにしよう
  • Docker Engineのubuntu上へのinstall
  • EC2からS3へ自動でぽいぽいアップロードするスクリプトの作成
  • 三目並べ – 4.「スタート」「リセット」ボタンをつけよう
  • 三目並べ – 5.先攻後攻を決めて、コンピュータ対戦にしよう(前編)
  • Apache Zeppelin 基本機能
  • Ruby on Rails を MySQLでセットアップ
  • 機械学習入門者向け Support Vector Machine (SVM) に触れてみる
  • AWSアカウントの作成と必ずやるべきセキュリティ対策
  • Scala 基礎
  • VLAN
  • Apache Spark 基礎
  • 機械学習を用いた画像分類
  • Ruby on Railsによる簡単なウェブアプリケーション
  • 正規表現とパイプ
  • 機械学習エンジニアに必要なスキル
  • Docker, Kubernetesの学び方について
  • Ubuntuの基本設定
  • PostgreSQL Setup
  • REDIS
  • Amazon EC2 インスタンスの初期設定をしよう
  • 軽量版Kubernetesディストリビューション – k0s クラスターの構築
  • Pythonの設定
  • GNS3のセットアップ
  • viエディタ
  • AWSのEC2インスタンスでWordPressブログを公開してみよう
  • Pythonでデータベースを操作する
  • Python2.7とOpenCVのインストール
  • ファイル操作コマンド
  • OpenCVのテストプログラム
  • グループとユーザー
  • Pythonで画像を分類するプログラムを作成する
  • AWS CLIをインストールしてコマンド操作しよう
  • Virtualisation and Container (仮想化とコンテナ) – Ansible, Docker and Kubernetes
  • Windows Server 2012 R2 Hyper-V
  • 困った時に使うコマンド
  • SparkMLによるKaggle Titanic生存者予測
  • PacketTracerのセットアップ
  • 一般グループのユーザーとグループ
  • AWS Route 53を使って独自ドメインのWebページを表示させてみよう
  • Kubernetesクラスター上へのOpenVINOモデルサーバーを使用したサンプルアプリケーションのデプロイ
  • プライバシーポリシー
  • VMware ESXi サーバー構築
  • 三目並べ – 6.先攻後攻を決めて、コンピュータ対戦にしよう(後編)
  • フロントエンド開発のための環境構築
  • フロントエンドのデモンストレーション
  • APIのデモンストレーション
  • CISCO 1800ルータセットアップ
  • ファイル検索コマンド
  • ESXi – Switchの追加とVLAN
  • 質問
  • 仮想化環境のディスク容量を拡張する
  • ユーザー権限とアクセス権
  • 三目並べ – 0.導入
  • テキスト処理
  • ESXi – VyOS
  • データベースへのデータロード
  • 機械学習入門者向け Naive Bayes(単純ベイズ)アルゴリズムに触れてみる
  • CCNA
  • ESXi – 小規模ネットワーク 構築
  • ファイル管理
  • 機械学習入門者向け ChainerRLでブロック崩しの学習
  • AWS CLIを使ってEC2のファイルをS3へアップロードしよう
  • Apache NiFiの環境設定
  • CSV import & export – Node.js, mySQL – 1
  • 機械学習入門者向け ランダムフォレストによる Kaggle Titanic生存者予測
  • NodeJSでWebアプリケーション開発 – Socket.IO編
  • CSV import & export – Node.js, mySQL – 2
  • Apache NiFi データパイプライン基礎
  • PCからルータ、スイッチへのSSH接続設定
  • 【Python入門】Python Numpy チュートリアル
  • SQL 便利な関数
  • PostgreSQLによるデータ分析
  • Apache NiFi Exercise
  • 機械学習入門者向け 分類と回帰の違いをプログラムを書いて学ぼう
  • NodeJSでWebアプリケーション開発 – React編
  • Pythonによるマルチスレッドプログラミング実践
  • Apache SparkとApache Zeppelinの概要と環境構築
  • Certbotを使ってSSL証明書を発行し、HTTP通信を暗号化しよう
  • DockerとApacheを使ってWebサーバーを構築しよう
  • NodeJSでWebアプリケーション開発 – React編
  • AmazonEC2とVPCでネットワークとサーバーを構築しよう
  • AWS入門者向け 初心者が最初に理解すべきEC2とVPCの基本的な用語解説
  • Linuxとは
  • Pandasによる構造化データ分析
  • ダイナミックルーティング
  • PostgreSQL – Python – Apache – Bootstrap
  • 三目並べ – 1.ゲーム盤を作ろう
Home Avintonアカデミー ファイル管理
ここでは、ファイルシステムの概念と管理操作を身に付けます。

 

Linuxのファイル管理

Linuxのファイルを管理するためには、ハードディスクとファイルシステムとディレクトリ構造の知識が必要です。

 

ファイルシステムとは

ファイルシステムとは、ファイル名・更新二付けなどの属性データファイルデータ本体を効率よく管理するための仕組みです。ファイルシステムにはいくつか種類があり、利用するファイルシステムにより、ファイルをアクセスしたときに得られる効率や安全性が変わります。

 

パーティションとは

ハードディスクを利用するために、ハードディスクを区切った単位です。ディスクの内部を複数のパーティションを区切る作業が必要です。パーティションを分割する作業をパーティショニングと呼びます。

 

/ディレクトリ

Linuxのディレクトリ構造はツリー上になっていることを以前の章で説明しました。最上階層にあるディレクトリは/ディレクトリであり、ルートディレクトリと呼ばれます。/rootディレクトリとは異なるので気を付けてください。

 

マウント

WindowsなどのOSでは、ハードディスクやUSBメモリをつないだとき、それらを独立したドライブとして認識しますが、LinuxではハートディスクやUSBメモリを1つのデバイスファイルとして認識します。そしてそれらを1つのディレクトリとして認識させます。この操作を「マウントする」といいます。

 

LinuxでハードディスクやUSBメモリを利用するには、1つ目を必ず/ディレクトリにマウントします。複数のディスクを利用する場合は、2つ目以降のディスクをすでにマウントされているディスクの中のディレクトリにマウントします。ここで気を付けるべきことは、既に中身があるディレクトリにディスクをマウントすると、マウントされたディレクトリが/ディレクトリであっても中身が置き換わってしまい、今まであったディレクトリの中身は読み書きできなくなります。また、間違えても/rootディレクトリには絶対マウントしないようにしてください。

 

ファイルシステムの作成方法

ハードディスクを利用するには、以下の手順で作成して利用できます。
・パーティションの作成:fdiskコマンド
・ファイルシステムの作成:mkfsコマンド
・マウント:mountコマンド

 

これらのコマンドは/sbinディレクトリにあるシステム管理用のコマンドですので、rootユーザ(管理者)でなければコマンドを実行することができません。そのため、事前にrootユーザに切り替える必要がありますが、ubuntu環境下ではsuコマンドは使えないので、sudoコマンドの後にシステム管理用のコマンドを入力して実行してください。

 

ディスクのパーティション

fdiskコマンドは、分割されたパーティションの情報を調べたり、パーティションを作成、削除したりできます。
Linuxでは、システムとデータのバックアップ頻度を差別化したり、障碍児の影響範囲を狭めたりするために、パーティションを分割します。

1
fdisk オプション デバイスファイル

【代表的なオプション】

コマンド一例

【演習】

fdiskコマンドを実行して現在認識されているハードディスクのパーティション情報を表示しましょう。
以下の例に従ってコマンドを実行してみてください。

ここでは、接続されているハードディスクのデバイス名は/dev/sda1、/dev/sda2、/dev/sda5の3つです。つまり、1つ目のハードディスク(sda)が3つに分割されていることが分かります。(2つ目以降のハードディスクはsdb、sdc、sde…という風にアルファベット順になっています。)

 

パーティションの分割

コンピュータのハードディスクとして主にSATAとSASの2つのインターフェース(周辺機器を接続するためのハードウェア)規格が広く使われています。ハードディスクは、1つのパーティションとして使うか、最大4つまでのパーティションに分割できます。
各パーティションは、基本パーティションまたは拡張パーティションとなります。拡張パーティションは1台のハードディスクに1つだけ作成することができ、拡張パーティションの中には、さらに論理パーティションを複数作ることができます。

 

【パーティション分割例】
・基本パーティションを4つ
・基本パーティションを3つ+拡張パーティションを1つ
※Linuxでは4つ以上のパーティションが必要となるケースが多いので、拡張パーティション1つと他の3つを基本パーティションという構成で使う場合が多くなります。

 

ハードディスクを増設して利用可能にする

新しいハードディスクには、データ用の領域と、スワップ領域(Linuxがメモリの代わりにプログラムを置いておく領域)の2つを作成します。
fdiskコマンドを用いてパーティションを分割しますが、分割後にサイズ等の変更が難しいのであらかじめどのようにパーティションを分割するか計画して行ってください。また、既に利用しているハードディスクのパーティションを操作すると、大切なデータが消えてしまうので気を付けてください。

 

ファイルシステム

ファイルシステムとは、ディレクトリやファイルの情報やデータをディスクのどこに保存してあるか管理するためのシステムです。
ファイルシステムは、ディレクトリやファイルのファイル名やファイルの作成時間、所有権限などの情報を管理しています。また、ディスクのデータが書いてある場所と書いていない場所なども管理しています。

 

ファイルシステムはオペレーティングシステムによって利用されるファイルシステムが異なります。Linuxの場合はディストリビューションによって採用するファイルシステムは異なりますが、多くの場合ext3もしくはext4が利用されます。CDやDVDなどはISO9600という規格のファイルシステムが使われます。

 

linuxファイルシステム一覧

 

ジャーナリング機能

ジャーナリングとは、ファイルシステムに対する書き換え処理をファイルシステムに逐一記録する機能です。ジャーナリング昨日はコンピュータ我流停止するなどの障害時に有効となります。コンピュータが急停止し、ファイルのデータがファイルシステムに書き込み途中であった場合、処理されていないコマンドを対処します。ext3ファイルシステム以降のファイルシステムはこのジャーナリング機能を取り入れています。

 

マウント状態の表示

dfコマンドを実行すると、現在マウントされているファイルシステムのリストを表示できます。

例えば、udevは/devディレクトリに、/dev/sda1は/ディレクトリにマウントされていることが分かります。
このようにマウントするために利用するディレクトリを「マウントポイント」といいます。

 

ファイルシステムの作成

ハードディスクを利用するためには、パーティションに分割した後ファイルシステムを作成します。ファイルシステムの作成にはmkfsコマンドを使います。

1
mkfs オプション

 

【代表的なオプション】
コマンドオプション4

 

マウント(mountコマンド)

ハードディスクやリムーバブルメデイアなどをマウントポイントにマウントするためにmountコマンドを使います。

1
mount -t タイプ -o オプション デバイスファイル マウントポイント

【代表的なオプション】
コマンドオプション

 

アンマウント(umountコマンド)

マウントされたハードディスクやリムーバブルメディアを利用しなくなるとアンマウントします。アンマウントするには、umountコマンドを使います。

1
umount マイウントポイント

 

スワップ領域の作成

Linuxのカーネルと呼ばれる根幹のプログラムは、ハードディスクからプログラムやデータをメモリ領域へ読み込んで実行します。プログラムやデータを新たに読み込むための空きメモリ領域がなくなると、Linuxのカーネルは今利用していないメモリ上のプログラムやデータをスワップ領域へ一時的に退避させます。

 

スワップファイルシステムの作成

スワップ領域を作成するには、mkswapコマンドを実行します。

1
mkswap デバイスファイル

 

【代表的なオプション】

コマンドオプションc

スワップ領域の作成と利用

スワップ領域は作成した後にswaponコマンドを実行すると有効化できるようになります。

無効化するときにはswapoffコマンドを使います。

1
swapon デバイスファイル

 

【代表的なオプション】

コマンド一例2

1
swapoff デバイスファイル

 

【代表的なオプション】
コマンドオプション

 

シンボリックリンクとハードリンク

リンク機能は、ファイルをコピーしたり移動したりせずに、別のディレクトリにあるように扱うことができる機能です。例えば、コマンドの引数としてファイルやディレクトリを指定する場合、パスが長くて複雑になると入力を間違える可能性があると思いますが、リンク機能を使えばよく使うファイルを自分のホームディレクトリにおいてあるように扱うことが可能となります。

 

ハードリンク

ハードリンクは、ファイルの実態を直接指し示して共有します。ハードリンクを削除しても元ファイルは削除されません。ハードリンクは、iノード番号を共有することで実現しているので、別ファイルシステムには作成することができません。

 

シンボリックリンク

シンボリックリンクは、元ファイルが保管されている位置を示す疑似的なファイルを作成します。シンボリックリンクを消しても元ファイルに影響はありません。元ファイルを消すとシンボリックリンクからのアクセスはエラーとなります。シンボリックリンクは、別ファイルシステムのあいだで作成することができます。windowsでいうショートカットと似たようなものと認識してもらって構いません。

1
ln 元ファイル名 リンク先名

 

【代表的なオプション】

コマンド一例3

 

①ハードリンクの作成

【演習】

/usr/bin/file(fileコマンドの実行ファイル)のコピーをホームディレトクトリに作成し、ハードリンクを作成してみましょう。
その後、コピーしたfileファイルを削除してもfile2が実行できるのを確認しましょう。

 

②シンボリックリンクの作成
lessコマンドのマニュアルをリダイレクトでファイル出力したものにシンボリックリンクを張ってシンボリックリンクを参照してみましょう。

 

ディスクを管理するコマンド

ハードディスクを管理するコマンドとして、ファイルシステムをチェックして修復するfsckコマンドや、ファイルやディレクトリが使っているディスク容量を調べるduコマンドがあります。

 

ファイルシステムの確認と修復(fsckコマンド)

コンピュータが異常終了するなど正常にシャットダウンが行われないと、ファイルシステム「のファイル管理情報とハードディスクに書き込まれたデータ間でつじつまが合わなくあることがあります。この場合、fsckコマンドを使って整合性を確認し、修復を行う必要があります。
※このコマンドは、異常終了した後のシステム起動時に自動的に実行されます。

1
fsck デバイス名

 

ディレクトリ使用量の確認(duコマンド)

細かいディレクトリの使用量を調べるにはduコマンドを使います。

1
du ディレクトリorファイル

 

【代表的なオプション】

コマンドオプション5

【演習】

自身のホームディレクトリの使用量を確認してみましょう。

 

前へ
次へ

採用情報

採用情報

Avinton SDGs

SDGsへの貢献

Search

タグ

AI AI Big Data Big Data ccna Digital Transformation DX IoT LPIC Python Ruby SDGs Webエンジニア イベント インタビュー インフラエンジニア エンジニア オンラインセミナー キャリアチェンジ サーバーエンジニア システム開発 セミナー データサイエンス データサイエンティス データベース データ分析 データ解析 ネットワークエンジニア ビックデータ ボランティア 人工知能 勉強会 営業 就職活動 技術インターン 採用 新卒 新卒採用 新規事業 機械学習 派遣 深層学習 社員インタビュー 経営者交流会 転職
© 2022 Avinton | All Rights Reserved | プライバシーポリシー
  • サービス
    • Avinton Data Platform
    • エッジAIカメラ
    • プライベートクラウド
    • AIサービス開発
    • AI画像解析 – 無償PoC
  • 最新情報
    • ニュースリリース&イベント情報
    • 技術ブログ&インタビュー
  • アカデミー
    • Avintonアカデミー
    • Academy on Campus
  • 採用情報
    • Avintonで働く魅力
    • 新卒採用
    • プロジェクトコーディネーター職紹介
    • 求人
    • よくある質問
  • 企業情報
    • 会社概要
    • 代表からご挨拶
    • SDGsへの貢献
  • お問い合わせ
  • 日本語
    • English (英語)
Avintonジャパン株式会社