序文:
このような作業シナリオがあります; Xiaobai は職場に入ったばかりの運用保守エンジニアです. 今日、Xiaobai はリーダーから命令を受け、サードパーティの端末メーカーが伝送をテストするのを支援するためにコンピューター室に行く必要があります.分離領域でリンクします。シャオバイは少しパニックになり、コンピューター室に行ったことがなく、何をすべきかわからなかった.彼は同僚にアドバイスを求めた.同僚は彼に恐れることはないと言った,彼はただ醤油を作るつもりだった. . その後、Xiaobai はコンピューター室に行き、サードパーティの端末メーカーに会い、どうすればよいか尋ねました。サードパーティの端末メーカーは次のように述べています。サーバーから 2 つのファイルを取得するのを手伝ってください。Xiaobai は簡単だと思い、USB フラッシュ ドライブを接続してファイルをコピーする準備をしましたが、USB フラッシュ ドライブを接続した後、システム内に USB フラッシュ ドライブのディレクトリが見つからないことに気付きました。! !
1. U ディスクを使用する前にマウントする必要があるのはなぜですか?
Linux はすべてのハードウェア デバイスをファイルとして扱うため、光学ドライブなどのハードウェア デバイスを使用する場合は、システムにマウントする必要があります。この方法でのみ、Linux はそれらを認識できます。
1. /mnt ディレクトリには、手動でマウントされたハードウェアが格納されます。
2. /media ディレクトリには、自動的にマウントされたハードウェアが格納されます (マウント ポイントはシステムによって自動的に作成および削除されます)。
3. /dev はデバイス ドライバではなく、外部デバイス ファイルにアクセスするためのインターフェイスです。たとえば、U ディスクを Linux システムに挿入した後、fdisk -l を使用してパーティションを確認すると、ファイルは /dev/sda1 として表示されます。
コマンドfdisk -lを使用して、USB デバイスが配置されているパーティションを表示します
上記のコマンドを実行すると、U ディスクがシステムによって認識されていることがわかりますが、問題は再び発生し、明らかにシステムが U ディスクを認識しているのに、なぜ直接アクセスできないのでしょうか? /dev/sdb1ディレクトリ?
Linux システムには、次の 5 種類のファイルがあります。
1. 通常のファイル; - 記号で始まる通常のファイル; 通常、関連するアプリケーション (cp ツール、タッチ ツールなど) によって作成されます。
[root@chaser ~]# ls -lh install.log
-rw-r–r– 1 root root 53K 03-16 08:54 install.log
2. ディレクトリ ファイル。ディレクトリは文字 d で始まり、mkdir や cp などのコマンドで作成されます。
[root@chaser ~]# ls -lh
drwxr-xr-x 2 root root 4.0K 04-19 10:53 mydir
3. キャラクター デバイスまたはブロック デバイス ファイル: mknode を使用して作成します。これらのファイルはカーネルに関連付けられているため、通常、デバイス ファイルを手動で作成する必要はありません。
デバイス ファイルは文字 c で始まります。猫などのシリアルデバイスなど。
[root@chaser~]# ls -la /dev/tty
crw-rw-rw- 1 ルート tty 5, 0 04-19 08:29 /dev/tty
文字 b で始まるものは、ハードディスク、光学ドライブ、その他のデバイスなどのブロック デバイスです。
[root@chaser ~]# ls -la /dev/hda1
brw-r—– 1 ルート ディスク 3、1 2006-04-19 /dev/hda1
4. ソケット ファイル; 文字 s で始まる、これで十分で、そのようなものがあることを知ることができます
5 シンボリック・リンク・ファイル; | 文字で始まり、
[root@chaser ~]# ls -lh start.log
lrwxrwxrwx 1 root root 11 04-19 11:18 start.log -> install.log
上記の引用によると、Linux システムは 5 種類のファイルに分けられますが、/dev/sdb1 のファイル属性を見ることができます。
Linux システムはブロック タイプのファイルを認識し、ブロック タイプの Linux システムには直接アクセスできないことがわかります。アクセスするには、mount コマンドを使用してファイル ディレクトリにマウントしてアクセスする必要があります。
2.Uディスクのマウント(マウント)方法
1. マウント ポイントはディレクトリである必要があります。
2. 既存のディレクトリにマウントします。このディレクトリは空ではない場合がありますが、マウント後、このディレクトリ内の以前のコンテンツは利用できなくなり、umount は umount 後に通常の状態に戻ります。
3. CD-ROM、フロッピー ディスク、およびその他のオペレーティング システムで使用されるファイル システムの形式は、Linux で使用されるものとは異なります。CD は ISO9660、フロッピーは fat16 または ext2、windows NT は fat16、NTFS、windows98 は fat16、fat32、windows2000 および windowsXP は fat16、fat32、NTFS です。マウントする前に、Linux がマウントするファイル システム フォーマットをサポートしているかどうかを確認する必要があります。
マウント マウントの基本的な使い方
マウント [-fnrsvw] [-t vfstype] [-o オプション] デバイス ディレクトリ
パラメータ:
device は、マウントするデバイスを示します。
dir はマウントポイントを表します
-t デバイスのファイル システム タイプを指定します。
一般的に使用されるオプションの説明は次のとおりです。
(1) minix Linux で使用された最も初期のファイル システム。
(2) Ext2 は、Linux の現在の一般的なファイル システムです。
(3)msdos MS-DOS の FAT。
(4) vfat Win85/98 の VFAT。
(5) nfs ネットワーク ファイル システム。
(6) iso9660 CD-ROM ディスクの標準ファイルシステム。
(7) ntfs Windows NT ファイル システム。
(8) hpfs OS/2 ファイルシステム。Windows NT 3.51 より前のバージョンのファイル システム。
(9) auto ファイルシステムを自動検出します。
例1:FAT32のUディスクをマウント
mkdir /mnt/usbFAT32 --/mnt 目录下创建手动进行挂载的目录
fdisk -i --查看挂载的设备信息(需要root用户进行查看)
Device Boot Start End Blocks Id System
/dev/sdb1 * 72 3767 29681664 c W95 FAT32 (LBA)
--一般情况下系统会自动检测对应的文件系统类型,所以可以不使用 -t vfat 指定文件系统类型
mount -t vfat /dev/sdb1 /mnt/usbFAT32
df -h --查看设备挂载情况,如下即成功挂载。
/dev/sdb1 29G 16G 13G 55% /mnt/usbFAT32
例 2: NTFS モバイル ハードディスクをマウントする
mkdir /mnt/usbNTFS --/mnt 目录下创建手动进行挂载的目录
fdisk -i --查看挂载的设备信息(需要root用户进行查看)
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 121601 976760001 7 HPFS/NTFS
mount /dev/sdb1 /mnt/usbNTFS --不指定文件系统类型的情况下
mount: you must specify the filesystem type --提示:你必须指定文件系统类型
mount -t ntfs /dev/sdb1 /mnt/usbNTFS --没有提示则ok
mount: unknown filesystem type 'ntfs' --提示:‘ntfs’文件系统类型未知,需要自行安装ntfs-3g(工具运行在C++语言下,如不能编译则还需要安装 gcc-c++ 工具)
df -h --查看设备挂载情况,如下即成功挂载。
/dev/sdb1 123G 1G 122G 98% /mnt/usbNTFS
3.アンインストール
アンインストールは比較的簡単で、umount コマンドを使用してアンインストールするだけです。
例如:
已经挂载的 /dev/sdb1 29G 16G 13G 55% /mnt/usbFAT32
umount /dev/sdb1 或者 umount /mnt/usbFAT32 都可以进行卸载
4. 自動マウント
/etc/fstab ファイルを構成して、Linux がオンになるたびにマウントする必要がある Linux パーティションを自動的にマウントするようにします。
# /etc/fstab
# Created by anaconda on Fri Oct 22 22:25:49 2021
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
#》》》》》》》》》》》》 注意看这里 《《《《《《《《《《《《《《《《《《《《《《
#挂载的文件系统的设备名 挂载点 挂载的文件系统类型 挂载的选项,选项间用逗号分隔
/dev/sdb1 /mnt/usbFAT32 vfat defaults,codepage=936,iocharset=cp936 0 0
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/dev/mapper/vg_chaser-lv_root / ext4 defaults 1 1
UUID=81c96f40-5068-4ec7-9ecd-369ce041dd7e /boot ext4 defaults 1 2
/dev/mapper/vg_chaser-lv_home /home ext4 defaults 1 2
/dev/mapper/vg_chaser-lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
パラメータのデフォルトには、実際には一連のデフォルト パラメータが含まれています。
読み取り/書き込みモードでの rw マウント
suid enable user ID and group ID set bit dev ファイルシステム上の文字を解釈したりデバイスをブロックしたりできます exec 実行可能バイナリファイル
自動マウント
nouser は、通常のユーザーがマウントできないようにします
async は、ファイル システムの入出力操作を非同期で実行します。
中国語のファイル名をサポートするための codepage=936 および iocharset=cp936 パラメータ。
光学ドライブとフロッピー ドライブは自動的にマウントされず、パラメーターは noauto に設定されます。
/dev/cdrom1 /mnt/cdrom1 udf, iso9660 noauto, owner, kudzu, ro 0 0
ファイルを ISO 形式でマウントするには、mount -loop -o iocharset=cp936 xxxxx.iso /mnt/iso を実行します。
ハードディスク パーティションの概要:
/dev/ この文字列は、すべてのデバイス ファイルが配置されているディレクトリ名です。パーティションはハードディスク上にあり、ハードディスクはデバイスであるため、これらのファイルは /dev/ で可能なすべてのパーティションを表します。
xx パーティション名の最初の 2 文字は、パーティションが存在するデバイスのタイプを示します。通常、hd (IDE ディスク) または sd (SCSI ディスク) です。文字 y は、パーティションが存在するデバイスを識別します。
たとえば、/dev/hda (最初の IDE ディスク) または /dev/sdb (2 番目の SCSI ディスク) N 最後の数字はパーティションを表します。最初の 4 つのパーティション (プライマリまたは拡張) には、1 から 4 までの番号が付けられます。論理区画は 5 から始まります。たとえば、/dev/hda3 は最初の IDE ハードディスクの 3 番目のプライマリまたは拡張パーティションであり、/dev/sdb6 は 2 番目の SCSI ハードディスクの 2 番目の論理パーティションです。
→ →参考・まとめ記録ノート