Ubuntu 15.04/18.04使用bashdb调试bash脚本

bash调试器bashdb,这是一个类似于GDB的调试工具,可以完成对shell脚本的断点设置,单步执行,变量观察等许多功能。

安装bashdb


macOS下使用Homebrew安装,如下:

有两种启动调试的方式

1.直接在bash中传递参数的方式启动,适合需要读取$0参数为shell脚本的名字的采用这种方式启动。

2.使用bashdb直接启动脚本,适用于一般的脚本。

上面的操作对于ubuntu 18.04之前的版本都是可以的,但是目前的ubuntu 18.04是没有这个包的,只能手工编译安装,参考如下命令:

常用的调试命令


  1. 列出代码和查询代码类:
    l 列出当前行以下的10行
    - 列出正在执行的代码行的前面10行
    . 回到正在执行的代码行
    w 列出正在执行的代码行前后的代码
    /pat/ 向后搜索pat
  2. Debug控制类:
    h 帮助
    help 命令 得到命令的具体信息
    q 退出bashdb
    x 算数表达式 计算算数表达式的值,并显示出来
    !!空格Shell命令 参数 执行shell命令
    使用bashdb进行debug的常用命令(cont.)
  3. 控制脚本执行类:
    n 执行下一条语句,遇到函数,不进入函数里面执行,将函数当作黑盒
    s n 单步执行n次,遇到函数进入函数里面
    b 行号n 在行号n处设置断点
    d 行号n 撤销行号n处的断点
    c 行号n 一直执行到行号n处
    R 重新启动
    Finish 执行到程序最后
    cond n expr 条件断点

参考链接


Ubuntu 15.10,12.04 安装Apache Solr 4.10.4

Apache Solr是一个高性能,采用Java开发,基于Lucene的全文搜索服务器。Apache Solr是一个独立的企业级搜索应用服务器,目前很多企业使用solr开源服务。原理大致是文档通过Http利用XML加到一个搜索集合中。查询该集合也是通过 http收到一个XML/JSON响应来实现。它的主要特性包括:高效、灵活的缓存功能,垂直搜索功能,高亮显示搜索结果,通过索引复制来提高可用性,提 供一套强大Data Schema来定义字段,类型和设置文本分析,提供基于Web的管理界面等。

Apache Solr目前可以与Apache Nutch 2.3.1整合的最高版本是4.10.4,Ubuntu 15.10 ,12.04上安装的步骤如下:

1.安装Java,并设置JAVA_HOME


建议在系统的环境变量中增加"JAVA_HOME"环境变量,也可以写在~/bashrc里面。

文件尾部增加

然后,重启机器。

2.下载Apache Solr 4.10.4


3.解压缩到指定目录,并建立文件链接


在系统的环境变量中增加"SOLR_HOME"环境变量,也可以写在 ~/bashrc里面。

在文件末尾追加

然后,重启机器。

4.启动Apache Solr并设置端口为9876


5.在浏览器中打开网页,观察是否启动成功


在浏览器中访问http://localhost:9876/solr/

出现如下界面,说明配置成功。

Apache_Solr_4_10_4

参考链接


Nutch2.3+Hbase0.94+Solr4.10.3单机集成配置安装

Ubuntu 15.10,12.04 单机安装并配置Apache HBase

Apache HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。

1.安装Java,并设置JAVA_HOME


建议在系统的环境变量中增加"JAVA_HOME"环境变量,也可以写在~/bashrc里面。

文件尾部增加

然后,重启机器。

2.下载并配置Apache HBase


在系统的环境变量中增加"HBASE_HOME"环境变量,也可以写在~/bashrc里面。

文件尾部增加

然后,重启机器。

3.编辑conf/hbase-site.xml配置数据存储目录


添加如下内容。其实这里也可以不做修改,如果不做修改,就会把数据存放到tmp临时目录中,重启就没有数据。如果做简单的测试就不用麻烦去配置文件。

在其中的configuration中增加对于存储数据目录的配置:

4.启动以及关闭Apache HBase


启动

关闭

注意,如果执行sudo的话,一定要加-E参数,否则会导致提示找不到JAVA_HOME.原因是,sudo出于安全原因,默认禁止环境变量输出到子进程中。

5.参考链接


Installing Apache HBase on Ubuntu for Standalone Mode
安装nutch2+Hbase+Slor4

VirtualBox 5.0.X安装后Windows 10 下载文件频繁失败

操作系统


Windows 10 64位 专业版

VirtualBox版本


5.0.0 ~ 5.0.14(当前最新版)

故障现象


安装VirtualBox后,下载文件频繁失败,禁用网卡属性中的 VirtualBox NDIS6 Bridged Networking Driver 之后一切正常。

启动虚拟机,发现桥接模式下无适配器可选(因为被我们禁用了)。

网上搜索,得到的信息是5.0版对Windows 10的网络支持非常不好,工程师正全力解决Windows 10的兼容性问题,Windows 7,Windows 8也有人反应有网络相关的问题,问题回复中有人提供了继续使用NDIS5驱动的方法,试用后问题解决。

方法:下载VirtualBox 5.0.14版,卸载已安装的5.0版本,打开命令行,带参数执行安装程序:

随后会打开正常的图形界面安装,装完后网卡属性,桥接驱动名中已经无NDIS6字样。

期待官方解决NDIS6的问题,早日用上更好的驱动。

参考


https://www.virtualbox.org/ticket/14457

https://forums.virtualbox.org/viewtopic.php?f=6&t=68980