1.本節要學習的指令(指令用英文更加容易記住)
mount | Mount a file system 掛載 |
umount | Unmount a file system 卸載 |
fsck | Check and repair a file system 檢查和修復文件系統 |
fdisk | Partition table manipulator 分區控制表 |
mkfs | make a file system 創建文件系統 |
fdformat | Format a floppy disk 軟盤格式化 |
dd | Write block oriented data directly to a device 塊數據寫入設備 |
genisoimage | general an ISO 9660 image file 創建 ISO 9660的映像文件 |
wodim | Write data to optical storage media 把數據寫入光存儲媒介 |
md5sum | Calculate an MD5 checksum 計算 MD5檢驗碼。 |
2.小知識
① /etc/fstab 的文件可以列出系統啓動時要掛載的設備(典型地,硬盤分區)
LABEL=/12 / ext3 defaults 1 1
LABEL=/home /home ext3 defaults 1 2
LABEL=/boot /boot ext3 defaults 1 2
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
LABEL=SWAP-sda3 /swap swap defaults 0 0
設備名 掛載點 文件系統類型 選項 頻率 次序
字段 | 內容 | 說明 |
---|---|---|
1 | 設備名 | 傳統上是設備的直接名字,現在都是一個label標籤來識別設備。 |
2 | 掛載點 | 設備所連接到的文件系統樹的目錄。 |
3 | 文件系統類型 | 大多數本地的 Linux 文件系統是 ext3(Third extended filesystem), 還有 FAT16 (msdos), FAT32 (vfat),NTFS (ntfs),CD-ROM (iso9660),等等。 |
4 | 選項 | 文件系統可以通過各種各樣的選項來掛載。有可能,例如,掛載只讀的文件系統, 或者掛載阻止執行任何程序的文件系統(一個有用的安全特性,避免刪除媒介。) |
5 | 頻率 | 一位數字,指定是否和在什麼時間用 dump 命令來備份一個文件系統。 |
6 | 次序 | 一位數字,指定 fsck 命令按照什麼次序來檢查文件系統。比如先j檢查根目錄再home和boot |
② /dev 能夠看到許多設備
/dev/fd* | 軟盤驅動器 floppy disk |
/dev/hd* | /dev/hda 是指第一通道上的主設備名;/dev/hdb 是第一通道上的從設備名;/dev/hdc 是第二通道上的主設備名,等等。/dev/hda1是指系統中第一硬盤驅動器上的第一個分區,而 /dev/hda 則是指整個硬盤驅動器。 |
/dev/lp* | 打印機 |
/dev/sd* | SCSI 磁盤。內核把所有類似於磁盤的設備(包括 PATA/SATA 硬盤, 閃存,和 USB 存儲設備,比如說可移動的音樂播放器和數碼相機)看作 SCSI 磁盤。 剩下的命名系統類似於上述所描述的舊的/dev/hd*命名方案。 |
/dev/sr* | 光盤(CD/DVD 讀取器和燒寫器) |
3.命令實操
[me@linuxbox ~]$ mount
/dev/sda2 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda5 on /home type ext3 (rw)
/dev/sda1 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
/dev/sdd1 on /media/disk type vfat (rw,nosuid,nodev,noatime,
uhelper=hal,uid=500,utf8,shortname=lower)
twin4:/musicbox on /misc/musicbox type nfs4 (rw,addr=192.168.1.4)
注:格式爲--設備 on 掛載點 type 文件系統類型(選項)
[root@linuxbox ~]# umount /dev/hdc
[root@linuxbox ~]# mount -t iso9660 /dev/hdc /mnt/cdrom
[root@linuxbox ~]# cd /mnt/cdrom
[root@linuxbox cdrom]# ls
注:卸載一個設備名hdc,再掛載hdc到cdrom,之後進入掛載點查看內容。
任務:確定設備名稱
[me@linuxbox ~]$ sudo tail -f /var/log/messages
Jul 23 10:07:59 linuxbox kernel: sdb: sdb1
Jul 23 10:07:59 linuxbox kernel: sd 3:0:0:0: [sdb] Attached SCSI
removable disk
[me@linuxbox ~]$ sudo mkdir /mnt/flash
[me@linuxbox ~]$ sudo mount /dev/sdb1 /mnt/flash
[me@linuxbox ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 15115452 5186944 9775164 35% /
/dev/sda5 59631908 31777376 24776480 57% /home
/dev/sda1 147764 17277 122858 13% /boot
tmpfs 776808 0 776808 0% /dev/shm
/dev/sdb1 15560 0 15560 0% /mnt/flash
注:通過監控messages信息,當插入磁盤後就會顯示多的信息,其中就會有磁盤的名稱
任務:用 fdisk 命令操作分區
[me@linuxbox ~]$ sudo umount /dev/sdb1
[me@linuxbox ~]$ sudo fdisk /dev/sdb
Command (m for help):
Command (m for help): p
Disk /dev/sdb: 16 MB, 16006656 bytes
1 heads, 31 sectors/track, 1008 cylinders
Units = cylinders of 31 * 512 = 15872 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 2 1008 15608+ b w95 FAT32
l list known partition types
t change a partition's system id
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 83
Changed system type of partition 1 to 83 (Linux)
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
[me@linuxbox ~]$
注:首先通過fdisk分區管理進入,我們必須指定設備名稱,就整個設備而言,而不是通過分區號.因爲是一個
整體操作。之後利用m查看命令,發現l是列出已知分區類型,t是改變分區id,輸入”p”會打印出這個設備的分
區表,爲什麼改id,是因爲這樣才能更好的表明這是個Linux分區,修改之後必須輸入w將內存修改寫入到物理設備中.
任務:用 mkfs 命令創建一個新的文件系統
[me@linuxbox ~]$ sudo mkfs -t vfat /dev/sdb1
任務:檢查我們的閃存驅動器(首先應該卸載)
[me@linuxbox ~]$ sudo fsck /dev/sdb1
fsck 1.40.8 (13-Mar-2008)
e2fsck 1.40.8 (13-Mar-2008)
/dev/sdb1: clean, 11/3904 files, 1661/15608 blocks
任務:先格式化,再創建一個文件系統
[me@linuxbox ~]$ sudo fdformat /dev/fd0
Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.
Formatting ... done
Verifying ... done
[me@linuxbox ~]$ sudo mkfs -t msdos /dev/fd0
任務:將第一個驅動器的數據複製到第二個。dd = date define
[me@linuxbox ~]$ dd if=/dev/sdb of=/dev/sdc
dd if=/dev/cdrom of=ubuntu.iso 創建一個 CD-ROM 的映像拷貝
genisoimage -o cd-rom.iso -R -J ~/cd-rom-files
從文件集合中創建一個映像“-R”選項添加元數據爲 Rock Ridge 擴展,這允許使用長文件名和 POSIX 風格的
文件權限。 同樣地,這個”-J”選項使 Joliet 擴展生效,這樣 Windows 中就支持長文件名了。
mkdir /mnt/iso_image 直接掛載一個 ISO 鏡像
mount -t iso9660 -o loop image.iso /mnt/iso_image 直接掛載一個 ISO 鏡像
wodim dev=/dev/cdrw blank=fast 清除一張可重寫入的 CD-ROM
wodim dev=/dev/cdrw image.iso 寫入鏡像