您的位置:首页 > 运维架构

openwrt智能网关调试总结

2015-08-18 17:43 621 查看
1.在高通智能网关路由ipq806x上,终端ping不通连接的终端设备

解决:web登录页面在Network-》FireWall 中修改wan:wan:改为accept状态;

2.运行java应用报out of Memory error

解决;运行java命令:java -jar xxx.jar 改为 java -Xmx32M xx.jar

原因是默认分配的堆过小,现在改为32M。

3.扫描获取外部存储器

public static void scanAndBuildDisk(){

BufferedReader bufferedReader = null;
Process process = null;
try {
// 获取挂载盘并以M为单位
System.out.println("start");
process = Runtime.getRuntime().exec("df -m");
// 显示信息中包含有存储器信息
System.out.println("process");
bufferedReader = new BufferedReader(new InputStreamReader(
process.getInputStream()));
String line = null;
boolean isDisk = false;
LinkedHashSet<MountItem> mountList = new LinkedHashSet<MountItem>();
while ((line = bufferedReader.readLine()) != null) {
// 寻找标示字符串[/dev/]
line = line.trim();
isDisk = line.toLowerCase().startsWith("/dev/");
if (isDisk) {// 找到了
// 多个空格转单个空格
line = line.replaceAll("\\s{1,}", " ");
String[] str = line.split(" ");
if(str.length == 6){
MountItem item = new MountItem(str[0],str[5],Long.valueOf(str[1]),Long.valueOf(str[3]),str[5]);
mountList.add(item);
}
}
}

if(mountList.size() > 0 ){
Config.mountList.clear();
Config.mountList.addAll(mountList);
}else if(mountList.size() <= 0) {
Config.mountList.clear();
}
} catch (IOException e) {
System.out.println("..getUnixMACAddress.IOException....."+e.getMessage());
e.printStackTrace();
} finally {
System.out.println("end");
try {
if (bufferedReader != null) {
bufferedReader.close();
}
} catch (IOException e1) {
e1.printStackTrace();
}

if(process != null){
process.destroy();
}

bufferedReader = null;
process = null;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: