Frossky 发布的文章

除了Arduino以外,还有其他的面向不同规模的开源硬件。
著名的树莓派。
还有1000多的LattePanda,可以运行Linux,有一个4g/64g的存储。
Beaglebone,数百元,骨头板。
Banana PI, 基于安卓的香蕉派板子,数百元。
webduino, 网站:https://webduino.io/tutorials.html

arduino可以商用吗?答案是肯定的。不过arduino开发板体积很大,有没有小一些的?上海的DFRobot公司有一个cheapuino,约20多块价格,体积也很小。
arduino可以自行烧录到avr单片机中去吗?似乎也是肯定的。使用arduino bootloader,可以烧录加载器就行了。

价格对比:
1. Arduino
Arduino UNO正品价格88元,不过网上有很多仿造版,价格在20多。Arduino 最小系统 arduino pro mini,仿版很多,价格在6元左右。
Arduino要实现网络功能,建议还是使用ESP8266的Arduino兼容版会便宜很多,比较出名的项目是nodemcu, 20元左右。还有D1 WiFi UNO,价格也差不多。
不过要实现有线网络功能,似乎只有加一个外接shield W5100,价格约30左右。如果想要集成起来,有一个Arduino YUN的开发板,不过价格太高,要500左右。里面有一个基于Openwrt的系统。这时呢,我觉得还不如用树莓派。

  1. 树莓派
    树莓派基本板在200~300左右,支持有线、无线、蓝牙,4个USB,有HDMI,40个GPIO,有Linux,支持Micro SD(TF),加上64G TF卡和触控屏,也就700元。如果是嵌入式服务器端,用树莓派似乎更划算一些。

3.Beaglebone
知名度不高,价格也更贵,似乎优势是扩展性更强,性能更强,支持PWM和模拟输入。价格300多到600多不等。

  1. 香蕉派Banana PI
    采用的是台湾全志的主芯片,性能上也比树莓派强不少,可以跑安卓系统。不同型号价格从200多到400多不等。配上个小触屏,价格在600多。

关键词很多...

  1. win32ole据说可以:

npm地址
介绍文章using-com-object-in-nodejs
安装

npm install win32ole

这个的用法和后面说的ActiveXObject很像.不过4年前就已不在维护了.
目前这个项目使用新版的node会编译不通过,必须降级到老版才行,看来不太实用了。
2. 还有个edge项目据说可以访问.net

网址
Github 地址
npm 地址
介绍文章 how-to-run-an-excel-vba-from-a-node-js-program

据说可以替代win32ole
using-edge-js-as-a-replacement-for-win32ole

  1. 另一个用到ActiveXObject

介绍文章 JavaScript to call a VBA routine with parameters
最早看到的是这个,调用方式简单直接, 但据说只能在老IE里面使用ActiveXObject这个对象! 哦, 老IE里面script类型不但可以是JavaScript, 还可以是vbscript呢!

仔细研究,是使用了一个叫HTA的技术, 用mshta.exe运行.HTA全称 是HTML Application, 微软1999年就弄出来了, 基于IE运行, 有更高的权限, 很先进的说! 当年的electron啊!
微软介绍HTA的文章Introduction to HTML Applications (HTAs),
显示不一样好像是同一篇的: Introduction to HTML Applications (HTAs), 更新时间是2011年.
wiki的介绍: HTML_Application
看起来不错,但很可能绑定了IE, 所以就被抛弃了...
从搜索结果收录来看,也远远不及electron

  1. 微软的office.js
    JavaScript API for Office reference
    很好很强大,但是,只有office 2013以上的版本才支持。

由于通过搜索引擎搜索出来的大部分答案都是修改gpedit.msc或者注册表的方式,而且都要重启生效。。。太山寨了。。。给你们介绍正规的方式:

开始菜单 - 计算机 - 右键 - 属性 - 高级系统设置 - ‘高级’标签卡 - 性能 - 设置 - “启用桌面组合”的勾去掉 - 应用 - 搞定!

advanced settings
enable desktop composition

参考英文文档turn-off-windows-7-taskbar-thumbnail-previews

转载自 http://www.cnblogs.com/JemBai/archive/2012/05/25/2517783.html

查看linux机器是32位还是64位的方法:

file /sbin/init 或者 file /bin/ls
/sbin/init: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped

如果显示 64-bit 则为64位;

file /sbin/init
/sbin/init: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), stripped

如果显示为32 bit 则为32bit;

uname -a:
uname -a
Linux pmx002..** 2.6.32-71.el6.x86_64 #1 SMP Wed Sep 1 01:33:01 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux

x86_64表示64位机器

uname -a
Linux pmx0..** 2.6.9-5.ELsmp #1 SMP Wed Jan 5 19:30:39 EST 2005 i686 i686 i386 GNU/Linux

i686表示32位机器

i686 只是i386的一个子集,支持的cpu从Pentium 2 (686)开始,之前的型号不支持.

备注:

  1. i386 适用于intel和AMD所有32位的cpu.以及via采用X86架构的32的cpu.

intel平台包括8086,80286,80386,80486,奔腾系列(1.2.3.4)、赛扬系列,Pentium D系列

以及centrino P-M,core duo 等.
  1. X86_64 适用于intel的Core 2 Duo, Centrino Core 2 Duo, and Xeon 和AMD Athlon64/x2, Sempron64/x2, Duron64等采用X86架构的64位cpu.

  2. PPC 适用于Apple Macintosh G3, G4, G5, PowerBook, and other non-Intel models

安装DVD包括的软件要比安装光盘多一些,安装DVD也包括了两种图形界面(KDE和gnome).

4.Jigdo

也可以通过 Jigdo 下载 Fedora 发行版。Jigdo 可以加速下载安装盘的 ISO 镜像。同 BT 下载等待任务完全完成所不同,Jidgo 自动定位最快的镜像服务器(通过 Fedora 镜像管理器),并且从中下载所需要的文件。为了减少所需的网络流量,可以让 Jigdo 扫描现存的 DVD 或 CD 介质。这个功能对于以下用户特别有用。

getconf LONG_BIT
在32位和64位机器上运行如下命令,结果如下:
[b@002 ~]$ getconf LONG_BIT
64

[root@pmx4 /]# getconf LONG_BIT
32

装opennms真的是坑多多。。。
需要同时参考下面两个地址:
Installation Guide
Installation:Debian

使用标准的简化快速安装方式会出问题,主要是国内下载太慢。。。

首先,apt-get源需要增加一个。在/etc/apt/source.list.d/下增加一个文件,内容是:

···
deb http://debian.opennms.org opennms-19 main
deb-src http://debian.opennms.org opennms-19 main
···

然后更新源

sudo apt-get update
这儿不得不说第一个坑,默认的内容(如下)更新会遇到问题,所以一定要注意!!!
···
deb http://debian.opennms.org stable main
deb-src http://debian.opennms.org stable main
···

安装

sudo apt-get install opennms

照做不会错的部分

按照 4.2.2. Prepare PostgreSQL 这部分安装,没问题,复制如下:
···
The Debian package installs also PostgreSQL database and is already initialized and added in the runlevel configuration. It is only necessary to start the PostgreSQL database without a restart.

Startup PostgreSQL database
service postgresql start
The next step is creating an opennms database user with password and configure the authentication method.

Accounting and database management for OpenNMS
su - postgres
createuser -P opennms
createdb -O opennms opennms
exit
It is not necessary to change the authentication method in pg_hba.conf, it is by default set to md5 for localhost connections.
Set password for Postgres super user
su - postgres
psql -c "ALTER USER postgres WITH PASSWORD 'YOUR-POSTGRES-PASSWORD';"
exit
The super user is required to be able to initialize and change the database schema for installation and updates.
vi ${OPENNMS_HOME}/etc/opennms-datasources.xml
Configuration for database authentication in OpenNMS
database-name="opennms"
class-name="org.postgresql.Driver"
url="jdbc:postgresql://localhost:5432/opennms"
user-name="** YOUR-OPENNMS-USERNAME **"
password="** YOUR-OPENNMS-PASSWORD **" />

database-name="template1"
class-name="org.postgresql.Driver"
url="jdbc:postgresql://localhost:5432/template1"
user-name="postgres"
password="** YOUR-POSTGRES-PASSWORD **" />
Set the user name to access the OpenNMS database table
Set the password to access the OpenNMS database table
Set the postgres user for administrative access to PostgreSQL
Set the password for administrative access to PostgreSQL
···

初始化

后面记得OPENNMS_HOME位置是在/usr/share/opennms/

初始化JAVA_HOME

Configuration of Java environment for OpenNMS
${OPENNMS_HOME}/bin/runjava -s
看起来没问题,不顾我建议还是改一下/usr/default/opennms文件,内容为:
···
JAVA_HOME=/usr/bin
···

安装和初始化IPlike

确认一下装了没

sudo apt-get install iplike

使用脚本初始化

sudo /usr/sbin/install_iplike.sh

提示“CREATE FUNCTION”就是装好了。

初始化opennms

记住!检查一下你装的是jdk还是jre!jre是会有问题的!
最好再装一次jdk8

sudo apt-get install openjdk-8-jdk

然后
${OPENNMS_HOME}/bin/install -dis

终于可以运行服务就好了!

sudo service start opennms

deepin安装后默认是创建的deepin用户,怎么进入root和修改root密码?
其实很简单,用sudo passwd即可,不需要输入旧密码(本来也没有旧密码)
修改其他用户的密码,用sudo passwd username即可。

Windows下著名的当然是wireshark,这个在linux下也有,apt-get install wireshark就可以了,不过需要图形界面才能运行,不适合ssh登录。
ssh命令行下的抓包,就是tcpdump,包很小,1M左右,所以在openwrt下也能使用。
使用参考这篇文章12 Tcpdump Commands – A Network Sniffer Tool

抓包

抓指定网口
-i eth0
抓指定协议tcp ip udp
tcp
抓指定目的ip
dst 192.168.0.118
抓指定源ip
src 192.168.0.118
抓指定ip
host 192.168.0.118
抓指定端口
port 80

逻辑方式

和、或
host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 )
'host 210.27.48.1 and (210.27.48.2 or 210.27.48.3 )'

host 210.27.48.1 and ! 210.27.48.2

查看

抓5个包
-c 5
ASCII形式看包内容
-A
16进制看包内容
-XX
看有哪些硬件端口
-D

保存

存到文件
-w cap001.pcap
从文件读
-r cap001.pcap

可以通过命令上使用

Usage: uci [<options>] <command> [<arguments>]

Commands:
        batch
        export     [<config>]
        import     [<config>]
        changes    [<config>]
        commit     [<config>]
        add        <config> <section-type>
        add_list   <config>.<section>.<option>=<string>
        del_list   <config>.<section>.<option>=<string>
        show       [<config>[.<section>[.<option>]]]
        get        <config>.<section>[.<option>]
        set        <config>.<section>[.<option>]=<value>
        delete     <config>[.<section>[[.<option>][=<id>]]]
        rename     <config>.<section>[.<option>]=<name>
        revert     <config>[.<section>[.<option>]]
        reorder    <config>.<section>=<position>

Options:
        -c <path>  set the search path for config files (default: /etc/config)
        -d <str>   set the delimiter for list values in uci show
        -f <file>  use <file> as input instead of stdin
        -m         when importing, merge data into an existing package
        -n         name unnamed sections on export (default)
        -N         don't name unnamed sections
        -p <path>  add a search path for config change files
        -P <path>  add a search path for config change files and use as default
        -q         quiet mode (don't print error messages)
        -s         force strict mode (stop on parser errors, default)
        -S         disable strict mode
        -X         do not use extended syntax on 'show'