15AH, San Francisco

California, United States.

Send Your Mail At:

tianyingkejishe@sina.cn

Working Hours

Mon-Sat: 9.30am To 7.00pm

作者标题

Autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et dolore feugait.

Author Archive by stormwind

【shell】sh脚本生成二进制文件

1、叙述

脚本的好处是便捷、高效,拿起来就可以写,写完就能跑,都不用编译。但坏处也显而易见,一些敏感的、不想让外人知道的东西都是明文写在里面的。

2、安装shc编译器

下载安装:
tar xzvf shc.tar.tgz 
cd shr/
make && make install 
直接安装:
sudo apt install shc

3、使用方法

shc -r -f ./demo.sh

运行成功后会在当前目录下生成两个文件:

demo.sh.x   是脚本所对应的可执行程序
demo.sh.c   对应的c语言实现的源码

4、参数列表:

 The command line options are:

 -e date
      Expiration date in dd/mm/yyyy format [none]

 -m message
      message to display  upon  expiration  ["Please  contact
      your provider"]

 -f script_name
      File name of the script to compile

 -i inline_option
      Inline option for the shell interpreter i.e: -e

 -x comand
      eXec    command,    as    a    printf    format    i.e:
      exec(\\'%s\\',@ARGV);

 -l last_option
      Last shell option i.e: --

 -r   Relax security. Make  a  redistributable  binary  which
      executes  on different systems running the same operat-
      ing system.

 -v   Verbose compilation

 -D   Switch on debug exec calls

 -T   Allow binary to be  traceable  (using  strace,  ptrace,
      truss, etc.)

 -C   Display license and exit

 -A   Display abstract and exit

 -h   Display help and exit

【Ubuntu】libpcap安装

1、下载安装包

wget https://www.tcpdump.org/release/libpcap-1.9.1.tar.gz

2、解压安装包

tar xvf libpcap-1.9,1.tar.gz
cd libpcap-1.9.1

3、配置编译安装

export CC=aarch64-linux-gnu-gcc
export CFLAGS='-Os'
./configure --host=aarch64-unknown-linux-gnu --with-pcap=linux
make
make install
unset CC
unset CFLAGS

【docker】容器更换软件源

1、在镜像内部更换

# 备份原来的文件
cp  /etc/apt/sources.list /etc/apt/sources.list.bak

# 更换覆盖原来的文件
mv /home/sources.list /etc/apt/sources.list

apt-get update

2、用Dockerfile构建时更换

FROM python:3.6.7

WORKDIR /home/code/
RUN cp /etc/apt/sources.list /etc/apt/sources.list.bak
COPY . .
ADD sources.list /etc/apt/ 
RUN apt-get update 

【golang】go语言环境安装配置

1、下载go语言版本包,感觉不同的平台架构选择

https://golang.org/dl/

2、解压并安装

可以解压到任意目录,但需要设置环境变量

vim /etc/profile

export GOPATH=/goWorkPlace
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin

生效:

source /etc/profile

3、运行测试代码

package main

import "fmt"

func main() {
    fmt.Printf("hello, world\n")
}

终端输入命令:go run main.go

【光猫】北京移动最新吉比特H3-2S光猫获取超级管理密码,改桥接必备

1.使用光猫背后的普通用户名登录进光猫,浏览器复制以下链接打开

http://192.168.1.1/usr=CMCCAdmin&psw=aDm8H%25MdA&cmd=1&telnet.gch

2.通过telnet进入光猫

输入:telnet 192.168.1.1
用户名、密码如下:
CMCCAdmin
aDm8H%MdA

3.查看一下登陆信息,可以看到账号密码全部进行了加密

sidbg 1 DB p DevAuthInfo

以下内容为正常显示:

<Tbl name="DevAuthInfo" RowCount="2">
<Row No="0">
<DM name="ViewName" val="IGD.AU1"/>
<DM name="Enable" val="1"/>
<DM name="IsOnline" val="0"/>
<DM name="AppID" val="1"/>
<DM name="User" val="******"/>
<DM name="Pass" val="******"/>
<DM name="Level" val="1"/>
<DM name="Extra" val=""/>
<DM name="ExtraInt" val="0"/>
</Row>
<Row No="1">
<DM name="ViewName" val="IGD.AU2"/>
<DM name="Enable" val="1"/>
<DM name="IsOnline" val="0"/>
<DM name="AppID" val="1"/>
<DM name="User" val="******"/>
<DM name="Pass" val="******"/>
<DM name="Level" val="2"/>
<DM name="Extra" val=""/>
<DM name="ExtraInt" val="0"/>
</Row>
</Tbl> 

4.修改CMCCAdmin的登陆密码

sidbg 1 DB set DevAuthInfo 0 Pass admin

5.保存

sidbg 1 DB save 

6.使用账户正常登录光猫即可

CMCCAdmin
admin

7.指令集

#列出所有表

sidbg 1 DB p all

#查看 TELNET 信息

sidbg 1 DB p TelnetCfg

#查看 查看用户 信息

sidbg 1 DB p DevAuthInfo



修改管理员超级账号为 CMCCAdmin (可自定义)

sidbg 1 DB set DevAuthInfo 0 User CMCCAdmin



修改管理员超级账号的密码 aDm8H%MdA (可自定义)

sidbg 1 DB set DevAuthInfo 0 Pass aDm8H%MdA



修改配置 永久 开启 TELNET

#开启TELNET

sidbg 1 DB set TelnetCfg 0 TS_Enable 1

#开放TELNET LAN端口

sidbg 1 DB set TelnetCfg 0 Lan_Enable 1



#关闭TELNET

sidbg 1 DB set TelnetCfg 0 TS_Enable 0

#关闭TELNET LAN端口

sidbg 1 DB set TelnetCfg 0 Lan_Enable 0



#修改TELNET账号 改为 root (可自定义)

sidbg 1 DB set TelnetUser 0 Username root

#修改TELNET密码 改为 admin (可自定义)

sidbg 1 DB set TelnetUser 0 Password admin



#修改TELNET账号 改为 root (可自定义)

sidbg 1 DB set TelnetUser 1 Username root

#修改TELNET密码 改为 admin (可自定义)

sidbg 1 DB set TelnetUser 1 Password admin



#记得最好保存下配置

sidbg 1 DB save 

8.配置桥接模式

找到网络里面 Internet连接  把没用的连接拍照记录vlan id后都删除,重新建立一个vlan id=10的 bridge即可

注意一般2口是IPTV 不要选中

【PCIE】Linux pcie支持热插拔

1、驱动安装

2、查询pcie port码

root@ssss:~# lspci
0000:00:00.0 PCI bridge: Freescale Semiconductor Inc Device 8d90 (rev 20)
0000:01:00.0 Ethernet controller: Device 1ec4:555 (rev 01)
0001:00:00.0 PCI bridge: Freescale Semiconductor Inc Device 8d90 (rev 20)
0002:00:00.0 PCI bridge: Freescale Semiconductor Inc Device 8d90 (rev 20)

3、删除pcie设备

echo 1 > /sys/bus/pci/devices/0000\:03\:00.0/remove

4、重新加载pcie设备

echo 1 > /sys/bus/pci/rescan

【JavaScript】16位有符合整数处理

1、理解JavaScript对数据的默认逻辑

JS 中所有的数字类型,实际存储都是通过 8 字节 double 浮点型 表示的。浮点数并不是能够精确表示范围内的所有数的, 虽然 double 浮点型的范围看上去很大: 2.23x10^(-308) ~ 1.79x10^308。 可以表示的最大整数可以很大,但能够精确表示,使用算数运算的并没有这么大。

2、16位有符号整数处理

由于JavaScript默认是按照32位数据处理,那么对于16位有符合数据处理,符号位在第32位,这么理解就对了。1代表负数,0代表整数。

举例:
var value=0xff88
console.log(0xff88 | 0xffff0000)

【Git】git仓库中有子仓库,子仓库代码上传不成功

如题git仓库中有子仓库,子仓库代码上传不成功,首先我们应该避免仓库嵌套的问题,这种一般不是合理的.应该使用package来管理,不管是私有还是共有.

如果想快速解决问题.可以使用下面的方法:

# 进到子仓库.git所在的目录执行下面命令
rm -rf .git
git rm -r --cached .