更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 鸿蒙开发Linux命令 > Linux dd、depmod、declare、dhclient命令的用法及解释

Linux dd、depmod、declare、dhclient命令的用法及解释

更新时间:2022-01-22 15:54:43浏览次数:457+次

以下为你详细解释dd、depmod、declare、dhclient命令的用法。

\

Linux dd命令的用法及解释

Linux dd命令用于复制文件并对原文件的内容进行转换和格式化处理。dd命令功能很强大的,对于一些比较底层的问题,使用dd命令往往可以得到出人意料的效果。用的比较多的还是用dd来备份裸设备。但是不推荐,如果需要备份oracle裸设备,可以使用rman备份,或使用第三方软件备份,使用dd的话,管理起来不太方便。

建议在有需要的时候使用dd 对物理磁盘操作,如果是文件系统的话还是使用tar backup cpio等其他命令更加方便。另外,使用dd对磁盘操作时,最好使用块设备文件。

1、语法

dd(选项)

2、选项

bs=<字节数>:将ibs(输入)与欧巴桑(输出)设成指定的字节数;

cbs=<字节数>:转换时,每次只转换指定的字节数;

conv=<关键字>:指定文件转换的方式;

count=<区块数>:仅读取指定的区块数;

ibs=<字节数>:每次读取的字节数;

obs=<字节数>:每次输出的字节数;

of=<文件>:输出到文件;

seek=<区块数>:一开始输出时,跳过指定的区块数;

skip=<区块数>:一开始读取时,跳过指定的区块数;

--help:帮助;

--version:显示版本信息。

3、实例

[root@localhost text]# dd if=/dev/zero of=sun.txt bs=1M count=1

1+0 records in

1+0 records out

1048576 bytes (1.0 MB) copied, 0.006107 seconds, 172 MB/s

[root@localhost text]# du -sh sun.txt

1.1M    sun.txt

该命令创建了一个1M大小的文件sun.txt,其中参数解释:

if 代表输入文件。如果不指定if,默认就会从stdin中读取输入。

of 代表输出文件。如果不指定of,默认就会将stdout作为默认输出。

bs 代表字节为单位的块大小。

count 代表被复制的块数。

/dev/zero 是一个字符设备,会不断返回0值字节(\0)。

块大小可以使用的计量单位表,以下是单元大小和代码:

字节(1B)代码是c

字节(2B)代码是w

块(512B)代码是b

千字节(1024B)代码是k

兆字节(1024KB)代码是M

吉字节(1024MB)代码是G

以上命令可以看出dd命令来测试内存操作速度:

1048576 bytes (1.0 MB) copied, 0.006107 seconds, 172 MB/s

Linux depmod命令的用法及解释

Linux depmod命令可产生模块依赖的映射文件,在构建嵌入式系统时,需要由这个命令来生成相应的文件,由modprobe使用。

1、语法

depmod(选项)

2、选项

-a或--all:分析所有可用的模块;

-d或debug:执行排错模式;

-e:输出无法参照的符号;

-i:不检查符号表的版本;

-m<文件>或system-map<文件>:使用指定的符号表文件;

-s或--system-log:在系统记录中记录错误;

-v或--verbose:执行时显示详细的信息;

-V或--version:显示版本信息;

--help:显示帮助。

3、实例

depmod -b /home/windsome/EMMA3PF-KernelSource-20170626/install_pos -e -F ./boot/System.map -v 2.6.18_pro500-bcm91250-mips2_fp_be -A -a

/home/windsome/EMMA3PF-KernelSource-20170626/install_pos是我make mod_install后,所有模块的存放路径。

./boot/System.map是make linux后生成,我拷贝到此目录的。

2.6.18_pro500-bcm91250-mips2_fp_be是我build的linux的版本。

编译linux过程及执行depmod的例子:

genkernel.sh (at linux-2.6.18_pro500)

#######

export INSTALL_ROOT_EMMA3PF="/home/windsome/EMMA3PF-KernelSource-20170626/install_pos"

export INSTALL_MOD_EMMA3PF="/home/windsome/EMMA3PF-KernelSource-20170626/install_pos"

rm /home/windsome/EMMA3PF-KernelSource-20170626/install_pos/lib -rf

rm /home/windsome/EMMA3PF-KernelSource-20170626/install_pos/boot/* -rf

cd <linux_src_dir>

make

make modules_install

cp vmlinux System.map /home/windsome/EMMA3PF-KernelSource-20170626/install_pos/boot/ -p

cd /home/windsome/EMMA3PF-KernelSource-20170626/install_pos

depmod -b /home/windsome/EMMA3PF-KernelSource-20170626/install_pos -e -F ./boot/System.map -v 2.6.18_pro500-bcm91250-mips2_fp_be -A -a

其他用法:

在linux桌面系统中,当你编译了新的驱动,为了能够用modprobe ***加载模块, 你需要先将模块拷贝到/lib/modules /2.6.31-20-generic目录下,然后运行sudo depmod -a将模块信息写入modules.dep、modules.dep.bin、modules.alias.bin、modules.alias和modules.pcimap文件中。

如,我编译了一个新的wifi驱动r8192se_pci.ko,将其拷贝到/lib/modules/2.6.31-20-generic/wireless下,然后到/lib/modules/2.6.31-20-generic运行depmod -a,之后可以在任意目录运行modprobe r8192se_pci。

Linux declare命令的用法及解释

Linux declare命令用于声明和显示已存在的shell变量。当不提供变量名参数时显示所有shell变量。declare命令若不带任何参数选项,则会显示所有shell变量及其值。declare的功能与typeset命令的功能是相同的。

1、语法

declare(选项)(参数)

2、选项

+/-:"-"可用来指定变量的属性,"+"则是取消变量所设的属性;

-f:仅显示函数;

r:将变量设置为只读;

x:指定的变量会成为环境变量,可供shell以外的程序来使用;

i:[设置值]可以是数值,字符串或运算式。

3、参数

shell变量:声明shell变量,格式为“变量名=值”。

4、实例

首先使用declare命令定义shell变量"test",并且将其值设置为"hmxthome",输入如下命令:

declare test='hmxthome'    #定义并初始化shell变量

上面的命令执行后,再使用echo命令将该shell变量值输出,输入如下命令:

echo $test                        #输出shell变量的值

上面的指令执行后,其输出的结果如下:

hmxthome

Linux dhclient命令的用法及解释

Linux dhclient命令使用动态主机配置协议动态的配置网络接口的网络参数。

1、语法

dhclient(选项)(参数)

2、选项

0:指定dhcp客户端监听的端口号;

-d:总是以前台方式运行程序;

-q:安静模式,不打印任何错误的提示信息;

-r:释放ip地址。

3、参数

网络接口:操作的网络接口。

4、实例

dhclient -r   #释放IP

dhclient   #获取IP