Linux模块添加依赖,为小linux添加功能,自动添加依赖的库到相应位置

给小linux添加功能,咱们写一个脚本吧

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

重大知识点:FILE=/etc/local/src

从左往右

echo ${FILE#/}  一个#代表将第一个/向左的内容都去掉 执行结果为etc/local/src

echo ${FILE##/} 代表从左往右找,找到最后一个/ 并将向左的内容全部去掉 执行结果为/src    (用于取文件名)

从右向左

echo ${FILE%/*} 从右向左寻找/ 找到第一个 将/和向右的内容全部删除 执行结果为 /etc/local   (用于取文件的目录)

echo ${FILE%%/*} 从右往左寻找到最后一个/  并将其向右的内容全部去掉

*******************************************************************

#!/bin/bash

#

##复制生成路径

DEST=/mnt/sysroot

libcp() {

LIBPATH=${1%/*}

[ ! -d $DEST$LIBPATH ] && mkdir -p $DEST$LIBPATH

[ ! -e $DEST${1} ] && cp $1 $DEST$LIBPATH && echo "copy $1 finished."

}

##复制命令

bincp() {

CMDPATH=${1%/*}

[ ! -d $DEST$CMDPATH ] && mkdir -p $DEST$CMDPATH

[ ! -e $DEST${1} ] && cp $1 $DEST$CMDPATH

for LIB in `ldd $1 | grep -o "/.*lib\(64\)\{0,1\}/[^[:space:]]\{1,\}"`; do

libcp $LIB

done

}

read -p "Your command:" CMD

until [ $CMD == 'q' ]; do

! which $CMD   && echo "wrong command" && read -p "Input again" CMD && continue

COMMAND=` which $CMD | grep -v "^alias" | grep -o "[^[:space:]]\{1,\}"`

bincp $COMMAND

echo "copy $COMMAND finished"

read -p "Continue: " CMD

done

###########################################

最后

Mkdir /mnt/sysroot/lib/modules

Modinfo mii的执行结果有路径然后复制路径

Cp /lib/modules/2.6.18….mii.ko  /mnt/sysroot/lib/modules/

Modeinfo pcnet32的执行结果有路径 然后复制

Cp /lib/modules/2.6.18….net.pcnet32.ko

sync

我们期待开机的时候自动装载这两个模块儿

Vim /mnt/sysroot/etc/rc.d/rc.sysinit

Insmod /lib/modules/mii.ko

Insmod /lib/modules/pcnet32.ko

Ifconfig eth0 192.168.9.224/16

Ifconfig lo 192.0.0.0/8

Sync

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值