No Comments 作者:小项-怪物猪 分类:Ubuntu

在ubuntu上编译glibc可能还会看到以下错误:

../misc/syslog.c: In function ‘__vsyslog_chk’:
../misc/syslog.c:123: sorry, unimplemented: inlining failed in call to ‘syslog’: function body not available
../misc/syslog.c:155: sorry, unimplemented: called from here
make[2]: *** [/home/wstone/Build/glibc/glibc-build/misc/syslog.o] Error 1
make[2]: Leaving directory `/home/wstone/Build/glibc/glibc-2.9/misc'
make[1]: *** [misc/subdir_lib] Error 2
make[1]: Leaving directory `/home/wstone/Build/glibc/glibc-2.9'
make: *** [all] Error 2

使用以下的方式configure可以解决:
$ echo "CFLAGS +=-O2 -U_FORTIFY_SOURCE -march=i486 -mtune=native -fno-stack-protector" >configparm

No Comments 作者:小项-怪物猪 分类:FreeBSD

[root@i18n /home/dsppa]# nmblookup -A 192.168.0.227

added interface eth0 ip=192.168.0.250 bcast=192.168.0.255 netmask=255.255.255.0
Socket opened.
Looking up status of 192.168.0.227
        LI          <00> -         B  
        SYA         <00> -  B  
        LI          <20> -         B  
        SYA         <1e> -  B  

        MAC Address = 00-13-8F-C4-F7-37

No Comments 作者:小项-怪物猪 分类:Windows

nbtstat -A 192.168.0.213

-a             //  列出指定名称的远程机器名称表
-A             //  列出指定IP地址的远程机器的名称表
-c             //  列出远程[计算机]名称及其IP地址的NBT缓存
-n             //  列出本地NetBIOS名称
-r              //  列出通过广播和经由WINS解析的名称
-R             //  清除和重新加载远程缓存名称表
-S             //  列出具有目标IP地址的会话表
-s              //  列出将目标IP地址转换成计算机NETBIOS名称的会话表
-RR            //  将名称释放包发送到WINS,然后启动刷新

加一条路由追踪


tracert -h 30 -d host
-h 30    //  跟踪的最大值
-d         //  不解析地址为主机名
-w        //   设置回复的超时时间
-j          //   与主机列表一起的松散源路由{IPv4}
-R         //   跟踪往返行程路径{IPv6}
-S         //   要使用的源地址{IPv6}
-4         //   强制使用 IPv4
-6         //   强制使用 IPv6

No Comments 作者:小项-怪物猪 分类:FreeBSD

所有的操作都在root用户下进行

解包封包操作 {映像文件名:generic.img}


# file generic.img
    generic.img: gzip compressed data, was "generic.img", from Unix, last modified: Wed Mar 16 04:50:59 2011, max compression     //从这个可以看出这个img是一个gzip的压缩文件
# mv generic.img generic.img.gz   //重命名文件
# gunzip generic.img.gz   //解压
# ls
    generic.img                   //得到的结果
# file generic.img
    generic.img: x86 boot sector; partition 4: ID=0xa5, active, starthead 0, startsector 0, 50000 sectors    //可以看到,这个是属于正常的映像文件了。
# mkdir files_img   //创建文件挂在点
# mdconfig -a -t vnode -f generic.img -u 0      //挂在generic.img这个文件为当前系统的一个设备文件
# ls /dev | grep md0*   //查找挂在的设备文件名
    md0
    md0a                      //这个就是我们的m0n0
    md0c

# mount /dev/md0a files_img     //挂载设备文件到 files_img 目录下
# ls files_img   //现在就能看到我们的挂载成果了
    .snap
    boot            //m0n0的启动文件
    conf            //系统的配置文件
    kernel.gz     //内核文件
    mfsroot.gz  //这个才是重要的,增加修改功能都是在这个里面。


『下面来看看mfsroot.gz的解包』基本上跟上面的步骤一样

# cp files_img/mfsroot.gz .   //拷贝出来做备份
# gunzip mfsroot.gz    //解压
# mkdir mfs    //创建挂载点
# mdconfig -a -t vnode -f mfsroot -u 1   //这里为啥不用0呢 因为上面的我们已经占用了
# ls /dev | grep md1*           //找到对应的设备名
# mount /dev/md1c mfs     //挂在到mfs下面
# cd mfs   //进入到mfs下面     /*至于你要干嘛就是属于你的问题了 ^_^ */


『封包操作』
# 退出挂载目录
# umount mfs    //取消挂载
# mdconfig -d -u 1  //取消设备文件挂载
# gzip -9 mfsroot    //压缩这个文件
# cp mfsroot.gz files_img  //这个就不解释了
    下面的跟上面基本相同,就不注释了
# umount files_img
# mdconfig -d -u 0
# gzip -9 generic.img
# mv generic.img.gz generic.img     //这里就结束了



【重点来了】应为m0n0默认的包只有10M,我们想增加功能的话就很有限制,下面来说说怎样增大包的大小
+++++暂时没验证+++++
# dd if=/dev/zero of=new.img bs=1k count=20480    //创建一个空白的映像文件大小20M
# mdconfig -a -t vnode -f new.img -u 2    //new.img 挂载成设备文件 [当然是空白的]
# disklabel -Brw md2 auto    //给new.img 这个映像加上启动并新建一个主分区 {我也没理解}
# newfs -b 8192 -f 2048 -o space -m 0 /dev/md2a    //新建文件系统 {后面的参数也不是很懂}
# mount /dev/md2a new_files_img    //挂载
其它的参考解包封包

mfsroot 的方法基本同上,区别在于

# disklabel -rw md* auto    //主要是不需要加上启动的什么

No Comments 作者:小项-怪物猪 分类:Ubuntu,FreeBSD

echo "HHFH" | sed 's/[A-Z]\+/\L&/g'

s后面紧跟的/ 是分隔符号。貌似是任意的

Freebsd:

[dsppa@i18n ~]$ echo "HHFH" | sed 's/[A-Z]\+/\L&/g'
HHFH
[dsppa@i18n ~]$ echo $SHELL
/usr/local/bin/bash

Ubunu :

buysz@Buysz-Home:~$ echo "KJKGJ" | sed 's/[A-Z]\+/\L&/g'
kjkgj
buysz@Buysz-Home:~$ echo $SHELL
/bin/bash