上周同事帮忙,linux下/ 分区没有空间了,需要安装oracle,划分出 /u01分区来。但是此时/home下还有充足的空间。解决方法:
可以在/home下创建一个30G的大文件,然后挂载在/u01上,这样就可以把oracle安装在/u01分区下了。
使用命令: dd if=/dev/zero of=/home/u01 bs=1000M count=30
Linux下dd命令详解:
作用:可以读取到磁盘上设备的内容,几乎是直接读取扇区,然后将整个设备被分成一个文件。 If:就是输入的文件,也可以是设备,input file
Of :output file,也可以是设备。
Bs: block size,默认是512b。
格式化这个文件:mkfs -t ext4 /home/u01
创建文件系统,ext4是文件系统格式,
Mkfs: make file system。
我认为这个mkfs,属于格式化一个文件或者设备,直接应对磁盘上的具体的位置,格式化位具体的文件格式,
挂载这个新的文件到文件系统中,在文件系统/ 分区找一个具体挂载的位置:/u01
具体命令:mount -o loop /home/u01 /u01
安装oracle的时候,上传一个IOS文件,然后使用命令:
Mount -o loop -t iso9660 /home/oracle11G.ISO /mnt/cdrom
这个命令的用途:把这个IOS文件挂载到文件系统的操作系统目录下。
现在我有点奇怪:
/dev/zero是什么
我的疑问是:/dev/zero是什么,她和dd搭配产生的具体的工作是什么?
/dev/zero是无穷无尽的提供0,可以用于向设备或者文件提供0
给我的设备提供0?
二进制文件只有0和1,是这个意思吗?
/dev/zero可以源源不断地产生Null流,也就是二进制的0流,用来初始化文件
我有些搞明白了,dd创建了一个都是0的空的文件
现在Mkfs要格式化这个文件,格式化的话,make file system是有文件系统格式的
把她格式化成ext4文件系统格式的就可以
就像是mkswap,把一个文件格式化成swap格式的文件