my blog my blog

Category: Linux
关于goagent的403错误的一些解决方案

 

1.版本

其实我用老版本一点儿问题也没有,前几天手贱,真的很贱,升级了,然后,呃,各种问题

2.升级失败

升级就403更新不上,因为国内的ip可能有一些封锁,挂代理或者vpn来搞定更新

3.删除hosts

进入自己的system32/driver/etc/hosts删除,可能是手动更新过hosts造成的,linux就直接/etc/hosts改回原样

steam客户端启动选项

 

就是steam启动时候的一些启动项啦,没太多内容,记录下。

  • -login – Bypass the Steam login window by entering your login information
  • -tcp – Launches Steam with the TCP protocol rather than the UDP protocol
  • -clearbeta – If you have opted into a Steam client public beta, opts out and returns Steam to the current official release.
  • -silent – Launches Steam to the system tray only. Normal Steam windows will only appear after clicking the system tray icon. If a password is not stored, the normal login window will still be displayed.
  • -login – 登录方式,可以用 -login username password 方式登录
  • -tcp – 使用tcp协议启动替代默认的udp协议
  • -clearbeta -清除测试信息
  • -silent – 静默启动,不会弹出窗口,直接启动到最小化的图标。

 

移植openssh至arm9嵌入式开发板

同学考研,买了块stmicroelectronic的arm9开发板没时间玩儿,就借给奶牛玩儿了,昨晚开始折腾,先从移植开始,最开始折腾的axel,比较容易移植。之后的今天就开始搞ssh的移植了,选择的openssh,从网上查了一些教程,虽然他们也写了也总结了,但是问题依旧是存在滴。好吧,奶牛就把自己做的总结下吧。 首先说移植的目的:有了ssh开机自动启动,就不用串口线来操作开发板了,可以节省很多时间,特别是文件传输的缓慢实在无法忍受。 移植过程: 下载相关源码: openssh:http://mirror.esc7.net/pub/OpenBSD/OpenSSH/portable/openssh-6.1p1.tar.gz openssl:http://www.openssl.org/source/openssl-1.0.1c.tar.gz zlib:http://zlib.net/zlib-1.2.7.tar.gz 然后配置好交叉编译工具

  1. mkdir source package 
  2. mkdir package/zlib 
  3. mkdir package/openssl 
  4. mv openssh-6.p1.tar.gz openssl-1.0.1c.tar.gz zlib-1.2.7.tar.gz ./source 
  5. cd source 
  6. tar xzvf openssh-6.p1.tar.gz 
  7. tar xzvf openssl-1.0.1c.tar.gz 
  8. tar xzvf zlib-1.2.7.tar.gz 

1.编译zlib

  1. ./configure --prefix=/home/nenew/package/zlib 

修改Makefile

  1. CC=arm-linux-gcc 
  2. AR=arm-linux-ar 
  3. CPP =arm-linux-gcc -E 
  4. LDSHARED=arm-linux-gcc 

就是讲gcc ar用arm-linux-gcc arm-linux-ar来代替

  1. make 
  2. make install 

2.编译openssl

  1. ./Configure --prefix=/home/nenew/package/openssl os/compiler:arm-linux-gcc 

这里可以直接指定交叉编译器,如果想知道哪些编译文件可以直接支持的话,一般./configure –help就可以看到说明

  1. make 
  2. make install 

3.编译openssh

  1. ./configure --host=arm-linux --prefix=/usr/local/openssh --with-zlib=/home/nenew/package/zlib --with-ssl-dir=/home/nenew/package/openssl --disable-etc-default-login --disable-strip CC=arm-linux-gcc AR=arm-linux-ar 

指定好了prefix为安装的目标目录,zlib与ssl的路径也就是我们刚才的安装路径,最后指定交叉编译器

  1. make 

这里并不安装,理由是不需要安装,安装到本机也无法执行,因为我们是交叉编译,你也许会问,为什么不直接换个预置安装目录来安装呢?如果不动手做你是不会知道的,sshd启动的时候会去安装目录下的etc找配置文件滴,所以这个目录不要随便指定,网上那些教程很多这里的路径都是有问题的。 编译工作至此结束,可以开始移植openssh了。

  1. mkdir -p usr/local/openssh 
  2. cd usr/local/openssh 
  3. mkdir etc bin 
  4. cd ../../../ 
  5. cp scp  sftp  ssh  ssh-add  ssh-agent  ssh-keygen  ssh-keyscan ./usr/local/openssh/bin 
  6. cp sshd_config ssh_config ./usr/local/openssh/etc 
  7. mkdir sbin bin 
  8. cp sshd ./sbin 
  9. cd bin 
  10. ln -s /usr/local/openssh/bin/scp 
  11. ln -s /usr/local/openssh/bin/sftp 
  12. ln -s /usr/local/openssh/bin/ssh 
  13. ln -s /usr/local/openssh/bin/ssh-add 
  14. ln -s /usr/local/openssh/bin/ssh-agent 
  15. ln -s /usr/local/openssh/bin/ssh-keygen 
  16. ln -s /usr/local/openssh/bin/ssh-keyscan 
  17. cd .. 
  18. mkdir -p usr/local/libexec 
  19. cp sftp-server  ssh-keysign usr/local/libexec 
  20. mkdir ../final 
  21. cp -r bin sbin usr ../final 
  22. cd ../final 
  23. tar czvf openssh.tgz ./ 

目录结构大体如下: openssh openssh移植 这就把需要拷贝的文件都准备好了,传到开发板的目录下,然后展开到/根。 这时候ssh并不能运行,还需要修改passwd与group文件,位置在/etc下,将sshd用户添加上。 passwd照着模样修改: sshd::15:50:::/bin/sh group照着模样修改: sshd:*:50: 这里的两个50要对应,是组的编号

  1. mkdir -p /var/run/sshd

然后就是配置ssh key了。

  1. cd /usr/local/openssh/etc 
  2. ssh-keygen -t rsa1 -f ssh_host_key -N "" 
  3. ssh-keygen -t rsa -f ssh_host_rsa_key -N "" 
  4. ssh-keygen -t dsa -f ssh_host_dsa_key -N "" 
  5. ssh-keygen -t ecdrsa -f ssh_host_ecdsa_key -N "" 

现在执行/sbin/sshd应该就可以正常启动了。 如果想自动启动需要增加启动脚本与启动项。 启动脚本位置:/etc/rc.d/init.d/ 启动项配置文件:/etc/init.d/rcS 如何修改可以自己参照里面的实例。 至此就已经完成了移植工作了。ssh可以正常链接。对了,这里建议修改sshd_config哦,把允许root登录与空密码选项打开,因为可以方便,这个不是服务器,不需要太高的安全级别。

 

 
基于Linux的SteamOS即将来袭,打造以视听娱乐为主的免费操作系统

 

说到Steam平台,游戏玩家应该都不会太陌生,是的,Steam就是Valve公司推的游戏对战平台,并由BT之父全力打造,Steam近日发出公告说SteamOS也即将发布,并且永久免费,在steam的官网也有了相应的介绍。

奶牛把官网的一些介绍跟大家分享下

1.SteamOS是基于Linux的操作系统,可想而知,可定制度应该比较大,既然是系统,那么可玩儿性必然不错,然后我们也可以port上很多自己需要的应用什么的,为啥这么做,继续往下看。

2.SteamOS主要是为了家庭的液晶大屏显示器来推的,现在家庭的电视越来越大,光看个电视有点儿忒浪费啦,当然,如果你有其它游戏机另当别论,如果没有的话,把你的电脑装个SteamOS然后直接HDMI到大屏显示器上就是极好的选择,那样子,看个电影玩儿个游戏听个歌儿神马的都会非常理想。

3.SteamOS的游戏有多少能原生支持呢?对于Steam For Linux的用户,已经有不少游戏可以进行娱乐了,虽然奶牛一直在等CS GO原生到steam for linux上,可是好久了都没有消息,不过SteamOS可以让我们在Linux机器上玩儿windows或者mac系统上的游戏,是通过局域网进行连接的,也就是说要先把你的windows或者mac启动后,通过SteamOS就可以尽享全部的游戏了,当然,奶牛建议您还是用网线吧,如果无线路由不给力,那就玩儿不尽兴了。这点上跟那个远程控制的感觉差不多,不知道具体性能到底如何,官网上说延迟有特别处理过,相信会在一个比较可接受的范围内。

4.家庭分享,在推出后steam的游戏是可以跟好友分享的,而且游戏进度会保存在网络的steam云空间上,所以你可以有自己的游戏进度,但是,两个人没法同时玩儿是真的,如果你想一直玩儿那么你就只能买一个copy了,这点是很好的,因为好多游戏完全可以分享给好友,比如自己玩儿通关的那种,可以省出一部分费用来。

5.音乐,电视,电影等服务也会陆续跟上(我觉得还是port上个firefox哇chrome神马的来得爽快) 

 

官方的介绍直击:http://store.steampowered.com/livingroom/SteamOS/

github使用的基本方法

 

好吧,只说最基本的。

1.安装git环境

2.建立repo,从github的个人页面建立

3.初始化

  1. mkdir nenew 
  2. cd nenew 
  3. touch README.md 
  4. vim README.md 
  5. git init 
  6. git add README.md 
  7. git commit -m "set up git repo by nenew" 
  8. git remote add origin https://github.com/xxxx/nenew.git 
  9. git push -u origin master 

这时候你的第一条readme就已经更新到了你的repo。

4.之后的使用

  1. touch a,b,c,d 
  2. git add ./ 
  3. git commit -a -m "a b c d files added" 
  4. git push origin master 

这是最基本的使用方法,当然,git提供了众多功能,可以参考:https://gitcafe.com/GitCafe/Help

设计数据库ER模型图利器ERMaster

 

ERMaster是eclipse的一个插件,用于设计ER模型图。提供的功能包括:从数据库导入关系生成ER图,导出设计图,导出DDL数据定义语句等。目前完整支持的数据库包括 MySQL、PostgreSQL 和Oracle (developing) DB2 (developing) HSQLDB (developing) SQLITE (developing) SQLServer (developing)。

安装方法很简单,只要在eclipse的插件里面添加地址就可以安装了

  1. http://ermaster.sourceforge.net/update-site/ 

使用也很方便,table直接拖出来,然后1toN NtoN之类的关系都可以直接搞定,并且可以导出ddl,在mysql下直接source下就生成数据表了,ermaster还可以生成测试数据,但是需要自己配置下,比如enum跟boolean的值会有问题。

总之还是很好用的,推荐下。

Gnome3.8已经发布

 

Gnome3.8已经发布,详细的发布记录可以看:https://help.gnome.org/misc/release-notes/3.8/

GNOME 3.8 的主要更新改进包括:集成应用搜索,隐私和分享设置,提醒过滤,新的经典模式,OwnCloud 集成,输入法整合,时钟、记事本、照片和其他应用的预览等等。

 

ASCII码介绍及ASCII码表

 

直接CP来自百科的介绍:

缩写:ASCII
英文全称:American Standard Code for Information Interchange
 
美国信息交换标准代码是一种用于信息交换的美国标准代码。7位字符集广泛用于代表标准美国键盘上的字符或符号。通过将这些字符使用的值标准化,ASCII允许计算机和计算机程序交换信息。ASCII字符集是与ANSI字符集中的前面128个(0-127)字符相同。
美国信息交换标准代码ASCII为"美国信息交换标准代码"十个字对应英文的缩写,ASCII文件是简单的无格式文本文件,可以由任何计算机所识别,Windows中的记事本及任何文字处理程序都可以阅读及创建ASCII文件。
在计算机中,所有的数据在存储和 运算时都要使用二进制数表示,同样的,象a、b、c、d这样的52个字母(包括大写)、以及0、1、2等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪个数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通讯而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了所谓的ASCII编码,统一规定了上述常用符号用哪个二进制数来表示。
 
八进制十六进制十进制字符八进制十六进制十进制字符
000nul1004064@
111soh1014165A
222stx1024266B
333etx1034367C
444eot1044468D
555enq1054569E
666ack1064670F
777bel1074771G
1088bs1104872H
1199ht1114973I
120a10nl1124a74J
130b11vt1134b75K
140c12ff1144c76L
150d13er1154d77M
160e14so1164e78N
170f15si1174f79O
201016dle1205080P
211117dc11215181Q
221218dc21225282R
231319dc31235383S
241420dc41245484T
251521nak1255585U
261622syn1265686V
271723etb1275787W
301824can1305888X
311925em1315989Y
321a26sub1325a90Z
331b27esc1335b91[
341c28fs1345c92\
351d29gs1355d93]
361e30re1365e94^
371f31us1375f95_
402032sp1406096
412133!1416197a
422234"1426298b
432335#1436399c
442436$14464100d
452537%14565101e
462638&14666102f
472739`14767103g
502840(15068104h
512941)15169105i
522a42*1526a106j
532b43+1536b107k
542c44,1546c108l
552d451556d109m
562e46.1566e110n
572f47/1576f111o
603048016070112p
613149116171113q
623250216272114r
633351316373115s
643452416474116t
653553516575117u
663654616676118v
673755716777119w
703856817078120x
713957917179121y
723a58:1727a122z
733b59;1737b123{
743c60<1747c124|
753d61=1757d125}
763e62>1767e126~
773f63?1777f127del

 

 

ASCII值控制字符ASCII值控制字符ASCII值控制字符ASCII值控制字符
0NUT32(space)64@96
1SOH3365A97a
2STX3466B98b
3ETX35#67C99c
4EOT36$68D100d
5ENQ37%69E101e
6ACK38&70F102f
7BEL39,71G103g
8BS40(72H104h
9HT41)73I105i
10LF42*74J106j
11VT43+75K107k
12FF44,76L108l
13CR4577M109m
14SO46.78N110n
15SI47/79O111o
16DLE48080P112p
17DCI49181Q113q
18DC250282R114r
19DC351383X115s
20DC452484T116t
21NAK53585U117u
22SYN54686V118v
23TB55787W119w
24CAN56888X120x
25EM57989Y121y
26SUB58:90Z122z
27ESC59;91[123{
28FS60<92\124|
29GS61=93]125}
30RS62>94^126~
31US63?95127DEL

 

 

NULVT 垂直制表SYN 空转同步
SOH  标题开始FF   走纸控制ETB   信息组传送结束
STX  正文开始CR   回车CAN   作废
ETX  正文结束SO   移位输出EM   纸尽
EOY  传输结束SI   移位输入SUB   换置
ENQ  询问字符DLE   空格ESC   换码
ACK  承认DC1   设备控制1FS   文字分隔符
BEL  报警DC2   设备控制2GS   组分隔符
BS  退一格DC3   设备控制3RS   记录分隔符
HT  横向列表DC4   设备控制4US   单元分隔符
LF  换行NAK   否定DEL   删除
Kernel首页换新颜

 

RT,kernel首页换了新主题,呃,从订阅里面看到的。

很多朋友可能没自己编译过内核,也对内核具体是个什么东东不是很了解。奶牛引用下wiki介绍:

内核(Kernel)在计算机科学中是操作系统最基本的部分,主要负责管理系统资源。它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并由内核决定一个程序在什么时候对某部分硬件操作多长时间。直接对硬件操作是非常复杂的。所以内核通常提供一种硬件抽象的方法,来完成这些操作。通过进程间通信机制及系统调用,应用进程可间接控制所需的硬件资源(特别是处理器及IO设备)。 

严格地说,内核并不是计算机系统中必要的组成部分。程序可以直接地被调入计算机中执行;这样的设计,说明了设计者不希望提供任何硬件抽象和操作系统的支持;它常见于早期计算机系统的设计中。最终,一些辅助性程序,例如程序加载器和调试器,被设计到机器核心当中,或者写入在只读记忆体里。这些变化发生时,操作系统内核的概念就渐渐明晰起来了。

kernel.org是linux内核的维护页面,感兴趣的朋友可以去看看,话说linux kernel就跟赶着投胎一样,竟然都飙到3.8版本了….

Steam For Linux正版游戏大促销【2.5~5折哦,速度抢购咯】

 

好机会,Linux下的正版游戏平台steam for linux今日发布促销活动哦,折扣力度相当大,可见对linux正版游戏推广的用心良苦哇。而50%~75% OFF的促销觉得应该也比较罕见吧,游戏列表还是比较丰富的,并且steam很亲民的支持支付宝付款,相当方便。在游戏方面,很多游戏都是三平台都支持的,windows linux mac都跑起,比如cs source 即cs起源,估计全球攻势cs go也快了,奶牛继续等待,最近玩儿cs go很high哇,朋友们可以先入个cs source感受下,因为引擎差别不是太大,估计cs go到达steam for linux也指日可待啦。而且steam for linux对于ubuntu等系统的支持也是很不错的。

促销活动地址:http://store.steampowered.com/sale/linux_release?snr=1_41_4__42

活动截至时间:至 2 月 21 日太平洋标准时间上午 10 点

具体促销内容看截图: