VirtualBox给Debian安装增强功能

1.安装编译工具以及Linux内核头文件

2.点击VirtualBox安装增强功能

virtualbox_install

3.执行安装脚本

4.重启系统即可.

li 的点超出div

在Wordpress写文章的时候,发现列表项的数字总是在DIV标签的外面,如下所示

  1. 用户界面
  2. 视图导航
  3. 视图设置

HTML的源代码如下:

这种情况是非常不美观的,尤其是当DIV设置了背景色的时候。

网上查询了一下,发现list-style-position:inside是用来调整这种情况的。

语法:
list-style-position : outside |inside
取值:
outside :默认值。列表项目标记放置在文本以外,且环绕文本不根据标记对齐
inside :列表项目标记放置在文本以内,且环绕文本根据标记对齐
说明:
设置或检索作为对象的列表项标记如何根据文本排列。
假如一个列表项目的左外补丁(margin-left)被设置为 0 ,则列表项目标记不会被显示。左外补丁(margin-left)最小可以被设置为 30。
仅作用于具有display属性值等于list-item的对象。如li对象。
注意: ol对象和ul对象的type属性为其后的所有列表项目(如 li对象)指明列表属性。
此属性对于currentStyle对象而言是只读的。对于其他对象而言是可读写的。
对应的脚本特性为listStylePosition

 

因此修改上面的代码如下:

修改后的效果如下:

  1. 用户界面
  2. 视图导航
  3. 视图设置

Ubuntu 12.04安装Jetty

1. 如果没有装JDK的话,安装OpenJDK

2. 安装Jetty,Ubuntu软件源里的是Jetty6

3. 配置Jetty,修改Jetty默认配置文件

然后把

改为

再设置JDK目录

4. 启动Jetty

5. 测试,在浏览器地址栏中输入

http://localhost:8080

Jetty的端口在/etc/default/jetty中也可以设置

参考链接 Ubuntu 12.04安装Jetty

Ubuntu中shell下root用户切换其他用户运行程序

工作中,一些程序,需要随机启动,但是不是以root用户运行,于是需要在rc.local中通过shell,从root用户切换到其他用户运行程序,命令如下:

实例


/etc/rc.localexit 0之前加入如下内容:

参考链接


shell下root用户切换其他用户运行程序

sort+awk+uniq 统计文件中出现次数最多的前10个单词

使用linux命令或者shell实现:文件words存放英文单词,格式为每行一个英文单词(单词可以重复),统计这个文件中出现次数最多的前10个单词。

主要考察对sort,uniq命令的使用,相关解释如下,命令及参数的详细说明请自行通过man查看,简单介绍下以上指令各部分的功能:
sort:  对单词进行排序
uniq -c: 显示唯一的行,并在每行行首加上本行在文件中出现的次数
sort -k1,1nr: 按照第一个字段,数值排序,且为逆序
head -10: 取前10行数据

参考链接


sort +awk+uniq 统计文件中出现次数最多的前10个单词

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

使用YUIdoc

最近遇到任务,需要对外提供接口。发现最困难的事是写文档,因为代码经常在修改,每天更新word很困难。然后就发现了文档神器YUI doc,以及神器的剑鞘smartdoc:http://www.cnblogs.com/zhh8077/p/4010991.html。

简单介绍一下使用方法和遇到的坑。

YUI doc可以看成一种标准,主要看这里http://www.cnblogs.com/zhh8077/p/4011769.html或者YUI doc的官方文档。

module写法

class写法

method常用写法

其中 param.xx是二级参数的写法。

event与method一样

常量

smartdoc的使用就比较简单了,参考其主页文档。

这里主要想说的是 使用过程中遇到的一些坑。

1.生成的method event等等按照字母顺序排列,而不是按照我们文档中的顺序排列。

.YUIDoc生成的API文档目录不按源文件注释顺序

YUIDoc默认将所有的class、method、properties、events等按字母进行排序。

而且这个是在生成文档时进行排序的,所以如果除去按字母进行排序这种默认行为。

就必须修改YUIDoc的工具文件。修改C:\Users\Administrator\AppData\Roaming\npm\node_modules\yuidocjs\lib 下的 builder.js 文件

第1313-1316行,就是这几句罪魁祸首,注释掉后就可以按源文件注释顺序,当然你也可以自己弄其他排序方法。

方法源自:http://www.cnblogs.com/lovesong/p/3341453.html

2.event的example不显示。使用smartdoc生成文档后,其他地方都挺好,但event的example就是显示不出来。chrome上面,直接F12,看document,看到example部分,display:none。method增加了一个active的class,display:block。很简单,看看这个css是在哪里写的。

C:\Users\用户名\AppData\Roaming\npm\node_modules\smartdoc\theme-smart\assets\css

路径下的main.css。改一下其中的example的display就可以了。

修改整个页面的布局也是修改这里。这里就是我们使用的主题,自己可以改,也可以搞一套。