分类: IT生活

“比尔盖子技术站”已经关闭,将要改为“比尔盖子Linux”

今天,比尔盖子遗憾的写下了这篇文章。比尔盖子建立的第二个网站,“比尔盖子技术站”被比尔盖子决定将关闭了。当时,比尔盖子只是接触到了服务器搭建(当时都不知道叫这个名字),误打误撞,安装了一个Discuz 4.0的论坛,起名“比尔盖子论坛”,又在误打误撞中,将论坛升级到了Discuz 7.0,并决定论坛为讨论黑客精神和网络安全的。因为没有人上,就用软件采集了一堆别的网站的帖子,论坛完美的变成垃圾站。

说说后话:最后娴熟的升级到了Discuz 7.1、Discuz 7.2、Discuz X 1、Discuz X 1.5、Discuz X 2。、

弄完论坛,发现本地服务器是不行的,我不能24小时开机。最后终于找到了免费空间,安定好以后,觉得一个论坛没人上,没有意思,又弄了一个“比尔盖子技术站”,用的平台是Dedecms,专门发布各种黑客和网络安全的文章,后来也是用采集,完美的变身成垃圾站。

同时,我觉得我早期的建站过程可以整理一下,我就整理回忆了本地服务器建站一个月的历程。最后看到一个人的博客,记载了大量建站经历,我觉得我有必要弄一个,看了一眼,他使用的是Z-Blog系统,我就安装了,并把整理的建站经历,作为第一批已经篡改日期的博客文章发布了。后来又因为没有ASP免费空间,而将博客转为了我不知道是世界一流的Wordpress平台,还抱怨它运行速度慢,不过UI确实不错,尤其是蓝色的后台。

转折啊,转折啊。当我决定放弃免费空间去买Godaddy的空间的时候,我发现Godaddy的空间限制连接数,采集经常正常中断,导致垃圾站计划彻底破产。如今,买了VPS虽然能采集了,但才意识到,重复性内容是多么可怕。

我觉得,比尔盖子技术站已经没有任何意义。练手的网站就是练手的,如今要推倒一切重新开始了。主站是要关闭了,论坛还待定,不过命运估计好不到哪里去的……

比尔盖子这次觉得,要做一个面向初级用户,同类网站不多的网站,并打算采用“半博客式网站”,别说这个词你没听说过,这是比尔盖子自创的,意为使用博客系统来搭建的非博客(比如资讯类)网站,我认为这样互动性强。

经过考虑,我把目光停在了学习一段时间,已经入门的Linux上。国内的Linux站很多,但是存在问题,而且面对初级用户的站点也不多。初级用户需要的是桌面环境使用,而不是面对Bash和终端机,我希望我的网站提供的内容可以让初级用户能用Linux代替Windows的部分功能,而且尽量提供能代替令人发困的命令行的替代工具,也为中国的软件开源事业做出贡献,名字就叫比尔盖子Linux

目前比尔盖子Linux处于测试阶段,网址也是临时的,具体内容请看网站吧。

主页:http://testing.biergaizi.com/
关于(这个虽然能在网站中找到,但是某些人看不见的):http://testing.biergaizi.com/about/

最后,感谢长久支持“比尔盖子技术站”和“比尔盖子论坛”的所有人,向你们致敬!

宾馆有台式机和有线网络,自己有笔记本的共享上网解决方案;如何用手机作为台式机的无线网卡

写此文的原因

(所有图片可以点击看大图)

比尔盖子进入了一家宾馆,网络不方便,便找到了解决方法。请看第二节“比尔盖子案例”。

前言

如今,无线网络显然已经普及了。不过,如果你附近有一个无线网络,可是你使用的是台式机,这该如何无线上网呢?安装USB或者PCI无线网卡?这是个好办法,呵呵。

但是,如果你只是临时使用无线网络、不经常使用临时网络或钱包没钱该怎么办?
比尔盖子就教你如何使用一部Android手机作为无线网卡使用:先让手机连上附近的无线网,然后电脑就可以用数据线连接手机,使用WIFI上网了!

神马!你都没有Android手机?那比尔盖子还是建议你去安装USB、PCI网卡。

使用手机作为无线网卡

连接图示

首先,为了更好的理解我们是如何让台式机上WIFI的,请先看图。


准备工作

现在,我们需要将Android手机的USB调试开关开启,才能顺利的使用软件达到上图的目的。

设置方法如下(比尔盖子使用的是Android 2.3,其它版本大同小异):

左图:点击“设置”。
右图:点击“应用程序”。

左图:点击“开发”。
右图:勾选“USB调试”。

这样,设置就完成了,为了方便,我们现在就连接上WIFI。

左图:点击要连接的WIFI,比如“biergaizi001”,在弹出的对话框中选择“连接”即可
右图:需要一段时间连接

安装软件

软件在这里下载:http://u.115.com/file/dnctatpn


左图:点击“Next”。
右图:点击“I accept”。


左右图:都点击“Next”!


左图:注意:这个提示是在告诉你没有安装手机上网的驱动程序,点击“确定”来安装。

右图:首先请将手机断开与电脑的连接,然后需要选择手机品牌,请根据实际情况选择。比尔盖子使用的是Google Nexus S,所以选择“三星”。最后一项是“其它”,如果你的手机不在上面,就选择这项,点击“OK”继续。

左图:正在安装驱动,然后过一段时间,就成功了!
右图:成功后会出现以上画面,点击Finish即可完成。你会发现不但电脑上已经安装软件,
手机上也会多出一个名为PdaNet的软件。

如果手机已经连接WIFI,就可以网上冲浪了!

以后如果要使用共享上网,请用手机连接WIFI,用USB连接电脑,打开PdaNet软件,选择“Enable USB Tether”。然后在“开始菜单”的“所有程序”中找到“PdaNet for Android”,再找到“PdaNet Desktop”,右键点击图标,选择“Connect”即可(如下图)!

 

比尔盖子案例

而比尔盖子最近在一个宾馆遇到了一件令人烦恼的事情:宾馆房间提供了一个有线接口和一台台式机(Windows XP),而比尔盖子则有一台笔记本电脑(Windows 7),现在两台电脑均要上网,但是宾馆没有第二个有线接口,抑或无线网络。这可怎么办?

比尔盖子想到,Windows 7可以使用“Internet连接共享”配合“临时无线网络”来将有线网络连接转发成无线网络来共享上网,但是台式机没有无线网卡啊!这个问题其实不难解决,比尔盖子的连接图可以演化成下图。

 

配置临时无线网络连接(Windows 7)

其实这和第一种情况非常相似,只不过是把无线路由器换成了笔记本提供的临时无线网络而已,我们只需要将笔记本配置一下就行了。前面几步较简单,直接看图就行。
(所有图片可以点击看大图)

右下图:在这一步时需要特别注意,无线网络连接的名称可以随便起。因为比尔盖子共享的是宾馆网络,且没有传输文件,因此没有加密。强烈建议你对其设置一个密码,加密方式建议选择“WPA/PSK”。

如上图,这样就完成设置了。不过需要注意的是,如果你已将连接到一个无线网络,或者已经有一个临时无线网络,连接将断开,不能同时进行。

配置网络连接共享(Windows 7)

较简单,直接看图就行。
(所有图片可以点击看大图)

左下图:应该选中有线网络连接
右下图:“家庭网络连接”中 ,选择“无线网络连接”(这本来是个下拉框,不知道为什么设置以后变成文本框了)

然后,按照上一部分“安装软件”的过程操作即可!比尔盖子的问题就如此被轻松解决!

320GB硬盘摇身变成128GB(160GB)——硬盘造假防不胜防

准备升级硬盘

前几天给朋友的旧电脑升级,这台电脑的配置还算经典:联想,P4平台,80GB 的老旧IDE硬盘,读写缓存甚至只有2M,而且也有了一些坏道。实在是性能的瓶颈,便准备换一块320GB的硬盘。

装机城暗藏玄机

来到了装机城,商家说这台电脑如何如何落后,很显然是推销电脑。比尔盖子便回答:P4平台很经典了,Linux也不过P3就能流畅运行了,实在不行不是还可以做文件服务器吗?商家舌战中惨败,盖子总算是阻止了水平低下的奸商继续忽悠,商家拿了一块在库存中的IDE硬盘,320GB,型号是希捷ST3320620AV。更换完以后,没让坑人的商家分区、装系统,只用BIOS开机查看了一下硬盘信息:320GB,没有问题。

320GB变成160GB,新硬盘变成旧硬盘

回到家装系统的时候,蹊跷的事情出现了:分区软件中只显示硬盘有130GB的可用空间,难道这是一块160GB的硬盘?但是BIOS却能看到320GB,真是怪哉。装完系统,立即使用了Everest检测硬盘:同样是320GB,没问题。

被欺骗的Everest

被欺骗的Everest

看来Everest是不可靠了,便下载了HD-Tune。这下子可把比尔盖子惊呆了,HD-Tune居然显示硬盘容量为137.4GB,实际容量为128GB。天啊,这世界上还有128GB的硬盘?

硬盘的信息

硬盘的信息

接下来的事情更是吓坏了比尔盖子,通过检查SMART状态,发现这块硬盘虽然没有警告状态,但是这块硬盘马达已经启动/停止累计394次,通电总计2万多个小时!赶紧检查一下坏道吧!还好没有什么质量问题。

硬盘SMART信息

还好没有质量问题

还好没有质量问题

再测试一下读写性能吧,看来是标准的IDE硬盘性能了。但是读写性能总是下滑,大概是硬盘太破了。好歹这块硬盘没有坏道,性能也比之前的强得多,凑合着用吧!

硬盘读写性能

硬盘读写性能

刷新硬盘固件造假

两个案例

比尔盖子通过在网上查询,发现了以下两个硬盘造假案例:

案例一:

先看这样一个网友的经历(摘自ZOL论坛,2011年3月),他采用了一些技术手段来证明自己买到的西部数据黑盘是由绿盘改造而来的:

如今网络淘宝上的东西都很便宜,而我呢也属于网购一族,喜欢在淘宝上淘点宝贝,今天我就把我受骗的经历告诉大家,希望大家以后以此为戒,起初我以为我买到了一个很便宜很好的西数黑盘,没想到!哎……大家看看下文我是如何检测出来的造假黑盘吧!后来才知道他们是用“砍头后通过固件模块修改LBA值”来造假的!

有时在对故障硬盘进行砍头操作后其LBA值无变化,且通过参数修改功能也无法修改LBA值,针对这种情况就可以使用修改模块的方法来修改硬盘LBA值。下面以西数黑盘为例讲解具体的操作方法,其MDL为WD800BB-00JHC0、SN号为WMAM9H587436、固件版本号为05.01C05、LBA值为156301488。

(1)将故障硬盘与维修终端、电脑连接好后,启动效率源西数专修程序,待硬盘状态就绪后选中”黑盘一代”单选按钮,单击”从硬盘装入”按钮装入硬盘资源,如图1所示。

祸源不断让人崩溃 网购硬盘麻烦不少

装入硬盘

(2)切换到”固件写入”工作界面,双击02号参数模块,打开”模块编辑”对话框,如图2所示。

祸源不断让人崩溃 网购硬盘麻烦不少

查看固件模块

知识提示:41号模块位于31号磁道,它是一个非常重要的固件,定义了所有固件的存放方式和位置,一旦被破坏,硬盘内所有的固件都不能正常工作。

(3)找到对应的LBA代码位置,一般是在SN号后面,4组连续重复的代码,如图3所示,可以看到AFF85009 出现了4次,这4组数字即是LBA值代码,由于现在还没对原代码进行操作,这里的AFF85009表示的LBA值即为硬盘原容量80G的LBA值156301488。

祸源不断让人崩溃 网购硬盘麻烦不少

查看LBA值代码

(4)因为原盘为2头,砍头后的容量应相应减少一半,即40G容量,LBA值为78165360,转换为16进制为4A8B570,十六进制表示的是低位在前高位在后的倒序,按正常表示应该为:70 B5 A8 04, 在”模块编辑”窗口中把原盘的AF F8 50 09 改成70 B5 A8 04后单击”写入”按钮,如图4所示。

祸源不断让人崩溃 网购硬盘麻烦不少

修改固件模块

(5)单击”写入成功”提示信息框中的”确定”按钮退出”模块编辑”窗口,切换到”固件检测”工作界面,选中”02 参数模块”复选框和”主”复选框,单击”检测并修复”按钮,如图5所示。

祸源不断让人崩溃 网购硬盘麻烦不少

检测并修复固件模块

(6)修复成功后将电源复位一次,重新装入硬盘,可以看到状态栏中的LBA值变为了40G的LBA值,如图6所示, LBA值修改成功,再对硬盘进行重建清零或者低格操作,修复坏道即可正常使用了。

祸源不断让人崩溃 网购硬盘麻烦不少

这样就是造假,淘宝有把1TB绿盘(WD10EARS)刷写成1TB黑盘(WD1002FAEX),请大家记住这样无德的卖家!也请大家谨慎购买网上的硬件设备!

编辑提示:这个网友通过查看16进制编码的方式找到产品漏洞。其实像这样的刷固件,改编号的造假方式并不少见,之前笔者曾为大家曝光过市场上存在的真假蓝盘的信息,造假者不仅更改了标签,还更改了里面的编号,而从实际测试来看,和老款的黑盘较为相似,虽然性能方面没有什么太大损失,但是在道德上同样可耻。

 

案例二:

我们再来看看另外一个网友遇到的问题(摘自GZ论坛,2010年12月),他同样描述了一个通过更改固件和编号造假的问题,本来想买块绿盘结果买到的是黑盘:

上周四下班的时候去中关村科贸自提了一块WD20EARS,购买价格588。买到后的第一反应是2010-6月生产的盘,够早的。另外就是包盘的密封静电袋手感感觉很薄,后来和另一块**买的西数盘的静电袋对比了一下发现这个静电袋子也不是原厂的(上面印着DY3660 Static Shielding Bag ,而原厂的袋子是印有Western Digital的)。回家后只上官网查了一下保修,显示到2013-6,没什么问题,也就暂时没上机测试。

祸源不断让人崩溃 网购硬盘麻烦不少

祸源不断让人崩溃 网购硬盘麻烦不少

今晚上机测了一下,发现几个问题

1.通电时间问题:此盘通电时间不是0,有28小时。通电周期也有5,C1值也不小。

祸源不断让人崩溃 网购硬盘麻烦不少

2. 型号问题

HDTune报告的型号是WD20EARS-22Y5B1。而盘面印着的是WD20EARS-00MVWB0。Hdtune报告的序列号也和盘面完全不符。
我上网搜了一下22Y5B1这个型号,发现他应该属于WD10EARS系列。而00MVWB0属于WD20EARS的667单碟系列。另外从此盘的外观看,有6个橡胶垫圈,而00MVWB0这个型号应该只有4个橡胶垫圈。

3.参数问题

HDTune报告的参数里面,转速居然是7200RPM,缓存却没有显示,扇区大小居然是512Byte。也和我之前**买的WD20EARS完全不同。

祸源不断让人崩溃 网购硬盘麻烦不少

4.性能问题

这个盘的平均读取有114MB/s,存取时间11.9,后面的IO测试也能看出来,明显不是绿盘能拥有的性能。

祸源不断让人崩溃 网购硬盘麻烦不少

可以看到固件就是01.00101

5.固件问题

固件版本显示01.00101,也不是WD20EARS的固件版本,网上搜了一下 WD2001FASS 有这个固件版本。看性能也符合WD2001FASS 的水平。所以难道这个盘是用WD2001FASS 刷成绿盘后再销售的?官方应该不会这么干,是商家做的吗?但这么做意图何在?为了清理旧盘吗?这个盘我感觉很蹊跷,大家也分析一下吧,周中我去找买入的柜台说说,看能不能给我换一个真正的绿盘。

编辑观点:这位网友遇到了和第一个网友差不多的问题,也是通过重新刷固件,重新贴标签的方法将旧产品当新产品来卖。这明显也是造假者的行为,非常可耻。以前希捷也同样出现过此类问题。所以请用户一定注意。

高智商造假?“问题”进货源?

什么!以前希捷也同样出现过此类问题?看来,商家应该是通过刷新固件来让主板BIOS将320GB硬盘识别成160GB硬盘,再重新贴标签来打造假硬盘的。但是,比尔盖子认为以这个装机城的水平不太可能做出这种事,这种硬盘,更可能是商家从一些乌七八糟的代理处进货然后去销售的,而硬盘造假也应该是那些乌七八糟的假硬盘代理商所为。

万能的发票单据

遇到这种情况,当然要找装机城退货了。但是,退不退货要出示发票单据,可比尔盖子仔细一看发票:

“IDE硬盘一块”
“三星内存一条”

这样的发票可以保证客户绝对无法退货,真是天才之发票啊!

一些建议

对于这种问题,我们这些极客也真的没有任何方法防范。比尔盖子只能建议大家,买新硬盘的时候不要进入BIOS看一下硬盘信息就完事了,一定要带一张Windows PE的光盘或者U盘,使用HD-Tune(目前的大多数Windows PE都集成了吧),如果发现硬盘信息不符,就坚决不要付款购买,以免上当受骗!

用Python3模拟《侏罗纪公园》中的黑客入侵情节

在《侏罗纪公园》中,有这样一段情节:一位黑客打开一个终端机,试图猜测管理员的密码。失败三次以后,终端上就出现死循环,不停输出:”You didn’t said the magic word!”。而更给力的是,在Youtube上,这段情节视频有一段留言,支持率很高:“The magic word is sudo!”。

而比尔盖子想到,最近刚刚开始学习Python3,是否可以写一段代码来模拟其中的情节?

逻辑设计:
给用户三次输入密码的机会,如果在这三次中用户输入错误,则让用户再次输入并显示错误信息。用户输入了sudo,则显示成功的信息。
如果用户连续三次密码输入错误,则进入死循环,不停显示“You didn’t said the magic word!”。

经过苦思冥想,比尔盖子写出这样一段代码:

#Copyright: Biergaizi | GPL V3
#Developer: Biergaizi, 2011
error = 0
#声明error这个变量,表示用户输入错误的次数

hack = input("Auth_Username:")
#提示用户输入验证用户名,并传入hack这个变量

once = 1
#声明once这个变量是1,表示这是第一次运行程序

while hack != ("sudo"):
#当用户输入的内容不等于sudo时,将程序置于一个循环中

 if once == 1:
  error = error + 1
  print("Permission denied!")
  once = 0
#如果用户是第一次运行程序,则将错误次数增加1,
#显示错误信息,并将once声明为0,表示这已不是第一次运行。并重新执行while块

#因为这是一个循环,因此当用户再次输入错误时,还会进入其中。但是once已经为0,
#因此程序会跳过上面的if块,执行下面的部分:
 hack = input("Auth_Username:")
 error = error + 1
 print("Permission denied")
#再次让用户输入,如果仍输入错误,则再次将错误次数增加1,显示错误信息。并重新执行while块

 if error == 3:
   while hack != ("sudo"):
    print("You didn't said the magic word!")
#如果错误次数以达到3次,则进入死循环,不停输出"You didn't said the magic word"

print("Dear Administrator, welcome!")
exit()
#这也许是这段程序中比较巧妙的部分,只要用户有一次输入"sudo",
#则会被跳出循环,显示这里的成功信息。

但这段代码逻辑还是有些混乱,而且之前的一个版本还存在一个Bug,不画流程图居然都看不出来。
因此,比尔盖子换一种思路:把验证用户名与增加错误次数的这段代码单独提出,写成一个函数,有点类似Linux里的PAM模块。

最终,比尔盖子想方设法精简代码,还是避免不了多了几行代码的事实:

#Copyright: Biergaizi | GPL V3
#Developer: Biergaizi, 2011
error=0
restart=1
#声明两个变量:restart和error,restart为1,error为0

def auth():
  global success,error
#将success,error声明为全局变量,使模块中对这两个变量可以赋值

  if hack == ("sudo"):
   success=1
  if hack != ("sudo"):
   success=0
   error=error+1
#这个模块很好理解,不解释

while restart==1:
#如果restart为1就进入循环,目的是故意构造死循环,
#重复判断,需要跳出死循环时可用break

 hack=input("Auth_Username:")
 auth()
#要求输入用户名,并调用auth模块判断

 if success==1:
  break
#如果用户输入了正确的内容,则用break跳出循环

 if error==3:
  while restart==1:
   print("You didn't said the magic word!")
#如果错误次数等于3,则restart为1进入循环,
#目的同样是构造死循环,并不停输出"You didn't said the magic word!"

 print("Permission denid!")
#这个print是写在这两个if判断之后的,也就是当用户既没有输入正确的内容,
#也没有累计错误三次(即第一、二次输入错误)时,显示错误信息并重复执行while块

print("Dear administrator, welcome!")
exit()
#在第28行,当用户输入正确的内容时,会break跳出循环,则会执行以下内容
#输出成功信息,并退出程序

最近,比尔盖子再次优化该程序:

error=0
import time

def auth(username):
  global error
  if username == ("sudo"):
   return 1
  if username != ("sudo"):
   error=error+1
   return 0

while True:
 hack=input("Auth_Username:")

 if auth(username=hack)==1:
  break
#如果用户输入了正确的内容,则用break跳出循环

 if error==3:
  while True:
   print("You didn't said the magic word!")
   time.sleep(0.5)
#如果错误次数等于3,则进入死循环,并不停输出"You didn't said the magic word!"

 print("Permission denid!")
#这个print是写在这两个if判断之后的,也就是当用户既没有输入正确的内容,
#也没有累计错误三次(即第一、二次输入错误)时,显示错误信息并重复执行while块

print("Dear administrator, welcome!")
exit()
#在第28行,当用户输入正确的内容时,会break跳出循环,则会执行以下内容
#输出成功信息,并退出程序

这样,一个用Python3模拟《侏罗纪公园》中的黑客入侵情节的程序就基本完成了,如果改进建议(比尔盖子最希望再精简代码)和批评意见(代码极不规范,但比尔盖子不知道怎样才规范),欢迎留言指出!

根据过路网友的建议,又修改了一下。在这段时间,比尔盖子的编程风格有了明显变化,第一是自加自减,第二是完全遵守了PEP8的标准,语法检查器没有任何形式的Warning。最不爽的就是那个全局变量了,回头想办法避免,其实很简单。

#!/usr/bin/python3
import time
error = 0

def auth(username):
    global error
    if username == ("sudo"):
        return 1
    else:
        error += 1
        return 0

while True:
    #如果错误次数等于3,则进入死循环,并不停输出"You didn't said the magic word!",否则重复执行while块,继续验证。
    if error == 3:
        print("You didn't said the magic word!")
        time.sleep(0.5)
    else:
        hack = input("Auth_Username:")
        #如果用户输入了正确的内容,则用break跳出循环
        if auth(hack) == 1:
            break

        print("Permission denid!")
#这个print是写在这两个if判断之后的,也就是当用户既没有输入正确的内容,
#也没有累计错误三次(即第一、二次输入错误)时,显示错误信息并重复执行while块

print("Dear administrator, welcome!")
#在第16行,当用户输入正确的内容时,会break跳出循环,则会执行以上内容
#输出成功信息,并退出程序。

做了点小修改,全局变量被拿掉了!

#!/usr/bin/python3
import time

def auth(username):
    if username == ("sudo"):
        return 1
    else:
        return 0

error = 0
while True:
    #如果错误次数等于3,则进入死循环,并不停输出"You didn't said the magic word!",否则重复执行while块,继续验证。
    if error == 3:
        print("You didn't said the magic word!")
        time.sleep(0.5)
    else:
        hack = input("Auth_Username: ")
        #如果用户输入了正确的内容,则用break跳出循环
        if auth(hack) == 1:
            break

        error += 1
        print("Permission denid!")
#这个print是写在这两个if判断之后的,也就是当用户既没有输入正确的内容,
#也没有累计错误三次(即第一、二次输入错误)时,显示错误信息并重复执行while块

print("Dear administrator, welcome!")
#在第16行,当用户输入正确的内容时,会break跳出循环,则会执行以上内容
#输出成功信息,并退出程序。

在 2013 年写了更多面向对象程序后,再次重写此段代码。

#!/usr/bin/env python3
from time import sleep


class UsernameAuthenticator():

    def __init__(self):
        self.__error_count = 0

    @property
    def error_count(self):
        return self.__error_count

    def auth(self, username):
        if username == "sudo":
            return True
        elif username != "sudo" or self.__error_count > 3:
            self.__error_count += 1
            return False


if __name__ == "__main__":
    auth = UsernameAuthenticator()
    while True:
        if auth.error_count >= 3:
            print("You didn't said the magic word!")
            sleep(0.5)
        elif auth.auth(input("Auth_Username: ")):
            print("Dear administrator, welcome!")
            break
        elif auth.error_count < 3:
            print("Permission denid!")

Linux小测试 | The Linux Pub Quiz 中文版 Chinese Version

本文由比尔盖子(http://biergaizi.info)从http://www.tuxradar.com/content/linux-pub-quiz转载并翻译。
转载时请保留本段文字!
翻译质量不高,主要是因为一开始使用的是OpenOffice翻译,然后粘贴到这里以后,出现了大量的控制格式的HTML代码,修改几个字整个版面就乱了,但仍欢迎从评论中指出翻译不到位的地方!

你对自由软件的人物、应用程序和命令了解多少? 请你用下面的题目做自我测试 – 我们不保证Linux之父林纳斯·托瓦兹(Linus Torvalds)也能做对所有的题……

主题一:人物

1) 谁绘制了Linux的吉祥物Tux的原型? (提示:他也绘制了Ximian猴子)

2) 谁编写了Vi编辑器的第一版?

3) 哪位主流Linux发行版的领导人,曾经去宇宙旅行了10天?

4) Python语言之父是谁?

5) 拉里·沃尔(Larry Wall,下图中穿着一件令人兴奋的T恤的人) 发明了哪种编程语言?

This is Larry Wall. The question is, which programming language did he invent?

这是拉里·沃尔。问题是:他发明了哪种编程语言?

 

6) 由Wietse Venema开发的,很流行的流行邮件服务器叫什么?

7) 谁编写了sendmail?

8) 谁编写了Minux, 并在1992年写了题目为“Linux是过时的?”的电子邮件,从而展开论战?

9) 谁编写了最初的Unix shell (就是广为人知的sh)?

10) GNU和自由软件基金会(Free Software Foundation, FSF)的领袖是谁?

主题二:系统管理

11) 你运行了一个命令

ls f*

得到了一行输出:

apple orange banana

这是怎么回事?

12) 在那个配置文件中你能找到以下内容:

%admin ALL=(ALL) ALL

13) 这个命令是关于什么程序的?

root (hd0,0)

14) 你能在那个目录中找到Linux的日志?

15) 按照Unix的传统,你编写的第一个程序应该是什么?

16) root(即管理员)用户的UID是多少?

17) SSH会默认监听哪个端口?

18) 你发现你有一个名为foo的文件,有两个链接,你如何找到其它的链接?

19) 密码配置文件(/etc/passwd)中缺少什么关键信息?

20) ext2和ext3文件系统最大的区别是什么?

主题三:命令

21)

shopt -s dotglob

在Bash中是干什么用的?

22) 如果系统报错:Error: Scanning of VESA modes failed, 你应该将这个问题报告给谁? (警告:这个问题难度极大!)

23) 你如何删除一个名为-r的文件?

24) 你对一个名为foo的文件执行命令

chmod 7000 foo

当你执行 ls -l foo的时候,请问你看到的字母权限(rwxr–r–的形式)是什么?

25) 在vi编辑器中, dd 命令是干什么用的?

26) 在Linux中,哪一个系统请求用来创建一个新进程?

27) 下面这两条命令有什么区别 (假设运行这两条命令之前,foo文件是不存在的)

su -c date > foo
su -c 'date > foo'

28) 哪条命令用来配置Linux数据包过滤器(译者提醒:即防火墙)?

29) init的配置文件是什么?

30) 如果你在屏幕上看到这样一行输出:

drwxr-xr-x 8 chris chris 4096 2007-08-02 12:03 tutorials

……请问tutorials文件夹中有几个子文件夹?

31) 哪条命令用于查找文件系统中所有名为 pipes (fifos) 的文件?

32) 你如何隐藏一条命令所产生标准输出(standard output)?

主题四:名称

33) Wireshark 以前叫什么?

34) Gnome 是一个流行的桌面环境。请问 ‘Gnome’ 的全称是什么?

35) ……还有 KDE 中的 ‘K’ 全称为?

36) 哪一个开放文档标准与英国一个摇滚乐队同名?

37) Awk 语言如何得名?

38) Linux使用一个名为 PAM 的认证模块. PAM 的全称是什么?

39) Ubuntu在2004年发布的首个版本,代号叫什么(Ubuntu的代号命名规则为:一个形容词+一个动物名称)

40) SUSE 是一个流行的Linux发行版. 请问 SUSE 的全称是?

41) 世界上一个基于CD的Linux发行版(就是现在的LiveCD),是以北欧神话中的生命树得名,请问这个发行版叫做?

42) Debian发行版的这个名字是怎么来的?

主题五:残缺的界面

你能说出这些截图来自哪些应用程序吗?

43)

43)

 

44)

44)

 

45)

45)

 

46)

46)

 

47)

47)

 

48)

48)

 

49)

49)

 

50)

50)

 

51)

51)

 

52)

52)

主题六:发行版

53) 想成为一名UCP (Ubuntu专业认证人员), 你必须通过那三项测试?

54) Linspire 以前叫做什么?

55) ……还有Mandriva 以前叫做什么?

What was Mandriva Linux called before it was called Mandriva?

现在它被成为Mandriva,在对用户友好方面有很高的美誉度。

 

56) SUSE的LOGO是个什么动物?

57) 华硕Eee PC上网本采用了哪个Linux发行版?

主题七:应用程序

58) Gnome的资源管理器叫什么?

59) Linux上最流行的Web服务器叫什么?

60) “zip” 文件(压缩文件) 如何得名?

这些软件是干什么的:

61) Bluefish?

62) FluxBox?

63) Joomla?

64) Kopete?

65) Mutt?

66) Stonith devices?

FluxBox is pretty, but what does it do?

FluxBox很漂亮,但究竟是干什么的?

 

LOGO的名称

请问下面这些LOGO属于哪些应用程序或者发行版?

67)

67)

 

68)

68)

 

69)

69)

 

70)

70)

 

71)

71)

 

72)

72)

主题九:零碎的问题

73) Tux有多少脚趾 (没什么用的提示:不是单数!)

74) Linux下的.NET兼容运行环境叫什么名字?

75) 林纳斯·托瓦兹在何年用电子邮件,公布了他新编写的,自由的Linux?

76) Linux 内核版本2.6.28中的C代码超过100万行,到底是几百万行?

77) 哪一部电影中有这样一句台词 “这是个Unix系统!我知道这个!(It’s a Unix system! I know this!)”?

78) 哪个公司拥有MySQL(流行的开源数据库)?

79) Barret和Silverman编写的SSH(全称Secure Shell,意为安全的Shell) 教材:O’Reilly textbook SSH封面上出现的动物是什么?

80) 一本O’Reilly 的教材以’骆驼书’ 广为人知,因为书的封面有一头骆驼。这本书是关于什么的?

What is this book about?

这本书是关于什么的?

81) 哪家Linux公司于1999上市并创华尔街有史以来上市首日的最大涨幅?

82) 哪个组织开发了SELinux?

主题10:领袖的名字

这些都是今天世界开源界的领袖 – 有多少你能叫出名字?

83)

83)

 

84)

84)

 

85)

85)

 

86)

86)

 

87)

87)

 

88)

88)

 

89)

89)

 

90)

90)

 

做完了?快快去这里对照答案,看看自己做对了几道题?

Linux小测试答案 | The Linux Pub Quiz Answer 中文版答案 Chinese Version

这是测试题答案,请先做测试题目,请点击这里查看题目

本文由比尔盖子(http://biergaizi.info)从http://www.tuxradar.com/linuxquiz-answers转载并翻译。
转载时请保留本段文字!
翻译质量不高,主要是因为一开始使用的是OpenOffice翻译,然后粘贴到这里以后,出现了大量的控制格式的HTML代码,修改几个字整个版面就乱了,但仍欢迎从评论中指出翻译不到位的地方!

这就是测试题答案了,赶快算出你的分数,并在页面底部看看你的Linux水平如何吧!

主题一:人物

1 – Larry Ewing
2 – William Nelson Joy(威廉·纳尔逊·乔伊),通常人们称作Bill Joy(比尔·乔伊)
3 – Mark Shuttleworth(马克·沙特尔沃思),他领导着Canonical和Ubuntu
4 – Guido van Rossum
5 – Perl
6 – Postfix
7 – Eric Allman
8 – Andy Tanenbaum(台湾译作:谭宁邦)。 他指出Linux系统采用了宏内核,而谭宁邦认为微内核才是未来的方向,引发了著名的塔能鲍姆-林纳斯辩论(维基百科)
9 – Stephen Bourne
10 – Richard Mathew Stallman(查理德·史托曼)

主题二:系统管理

11 – 你有一个目录以f开头,并有文件
apple, orange and banana
12 – /etc/sudoers(sudo配置文件)
13 – Grub引导配置文件 (可能在 /boot/grub/menu.lst)
14 – /var/log
15 – Hello World
16 – uid:0
17 – Port 22
18 – 运行ls -i foo 找出 inumber
[1]

(就说它是12345吧), 然后运行 find . -inum 12345
     使用连接符成为一条命令就像这样:
     find . -inum $(ls -i main.cf | cut -d' ' -f1) 

[1]inumber即inode编号,inumber和linode编号不是inode

19 - 密码配置文件里就是没有密码!为了安全,密码被哈希加密,并保存到 /etc/shadow
20 - ext3 是日志式文件系统, ext2 不是。

主题三:命令

21 - 这会告诉Shell在使用通配符时将以 '.' 开头的隐藏文件也包括进去。
22 - mj@ucw.cz (这是在是令人很晕, 看看Linux的内核你就知道了[2])
[2]比尔盖子查看了Linux内核,确实发现在video.s文件中存在
.ascii "Error: Scanning of VESA modes failed. Please "
.ascii "report to <mj@ucw.cz>“

23 - rm -- -r 

24 - 权限会显示成 --S--S--T
25 - 它会删除光标所在的那行
26 - clone() 。 如果你想的话,也可以记住 fork()这个函数 。
27 - 在第一个例子中, foo 的所有者将成为当前登录的用户。但在第二个例子中,foo的所有者将成为root。
28 - iptables
29 - /etc/inittab
30 - 六个 (在Linux系统的任何目录中存在两个其实并不存在的链接。“.”表示该目录本身,
“..”表示上一层目录。减去这两个链接,因此tutorials有六个子目录)
31 - find / -type p
32 - 用“>”将它重定向到 /dev/null

主题四:名称

33 – Ethereal
34 – GNU Network Object Model Environment
35 – 原本意思为 ‘Kool Desktop Environment’, 但是现在已经没有任何的实际意义。
36 – Oasis. 其实就是 ‘组织(Organisation)’ 的简写, for the Advancement of Structured Information Standards’, which is the name of the consortium that developed the standard
(这个不知怎么翻译好,如有建议,请留言评论).
37 – 这是它的三位开发者 Aho, Weinberger 和 Kernighan 名字的缩写
38 – 嵌入式认证模块(Pluggable Authentication Modules,PAM,这是一组Linux身份验证的API)
39 – Warty Warthog
40 – 德语叫法 ‘Software und System Entwicklung’ (Software and System Development).
You can have half a mark just      for knowing it was something in German (这个怎么翻译,如有建议,留言评论).
如果你只是知道是某些德语,你可以记半分。  
41 – Yggdrasil
42 – 从它的创始人Ian Murdoch, 和他的妻子Debra得名

主题五:残缺的界面

43 – Gimp
44 – OpenOffice.org
45 – CUPS的Webmin界面
46 – K3b
47 – KCalc
48 – KDE 主菜单标签烂 (在 OpenSUSE 10.3 中)
49 – KMail
50 – Rosegarden
51 – XChat
52 – GNU/Emacs

主题六:发行版

53 – LPI 101, LPI 102 and LPI 199
54 – Lindows
55 – Mandrake
56 – 一只变色龙
57 – Xandros

Round 7: Applications

58 – 鹦鹉螺(Nautilus)
59 – 阿帕奇(Apache)

60 – 被命名为Zip意味着它与同类压缩工具相比,压缩比最高,压缩所需的时间最短[3]
[3]英文中的“压缩”应为compression

61 – 用于编辑HTML和其他Web内容的一个文本编辑器
62 – 一个轻量级的窗口管理器 
63 – 一个开源的内容管理系统(CMS)
64 – 支持多协议的即时通讯软件
65 – 一个基于文本的用户邮件代理
66 – 一个可以通过软件打开和关闭其它计算机电源的设备. Stonith 表示 ‘shoot the other node in the head’ ,用于关闭一个集群中宕机的节点,从而保证集群的高可用性。

主题八:LOGO的名称

67 – Firefox
68 – Gnome
69 – Ubuntu
70 – Gimp
71 – Wireshark
72 – Debian

主题九:零碎的问题

73 – 六个
74 – Mono
75 – 1991 (准确的说是1991年8月25日)
76 – 七百万行 (准确的是7107577行)
我们使用了这个命令统计: find /usr/src/linux -name ‘*.c’ -exec cat {} \; | wc
77 – 侏罗纪公园
78 – Sun公司(也称升阳微系统公司,Sun Microsystems)
79 – 一只蜗牛 [因为蜗牛在一个安全的(Secure)外壳 (Shell)中!]
80 – Perl(比尔盖子:著名的骆驼书,相信大部分人是知道了)
81 – 红帽(Red Hat)
82 – 美国国家安全局(The US National Security Agency,NSA)

主题十:领袖

83 – Bruce Perens (开源倡导者)
84 – Guido van Rossum (Python创始人)
85 – 查理德·史托曼 (Richard Mathew Stallman,GNU和自由软件基金会,Free Software Foundation,FSF的领袖)
86 – Rasmus Lerdorf (PHP创始人)
87 – Jeremy Allison (因他为Samba所作的工作知名)
88 – Miguel de Icaza (一名Gnome, Mono还有其它软件的开发者)
89 – 温特·瑟夫(Vint Cerf,’因特网之父’)
90 – Alan Cox (一位知名的内核黑客,比尔盖子:传记http://news.csdn.net/n/20050908/26111.html)

你的水平

0-20: 你学习的道路还很漫长,我们祝你成功!

21-50: 你的学习已经取得了一些实质性的进展!你应该阅读技术文档,相关书籍,访问相关技术站点,学习更多内容。

51-70: 还不错!你应该对 RPM 是什么东西心中有数,修改xorg.conf配置文件对你来说也只是小儿科而已。

71-89: 疯狂的极客: 你是一位真正的Linux专家,你的引导菜单中可能存在六种不同的Linux发行版,并且都重新编译过内核,而且你正在计划将Linux安装到你的冰箱里。

90: 嗨,林纳斯!我们刚才说:“你也不一定全答对”,只是个玩笑而已,你懂的……

你的分数是多少呢?快快在评论中贴上你的分数与大家分享吧!

CentOS 6 LAMP搭建(服务器配置)

神马是LAMP?路灯?不对,是Linux+Apache+Mysql+PHP(或Perl、Python)。搭建LAMP就是配置Linux+Apache+Mysql+PHP(或Perl、Python)的Web服务器了。

而在这里,我们使用的是最新的CentOS 6。如果其它版本系统想要参考这个教程,对不起,由于软件源中软件版本低,因此不能参考。

LAMP各软件版本:
Linux:CentOS 6 Kernel 2.6.39.3
Apache:2.2.15
Mysql:5.1.52
PHP:5.3.2

和比尔盖子一起搭建LAMP

比尔盖子最近迁移网站到VPS,这正是制作LAMP教程的好机会,下面大家就跟我来吧!
(以下过程均使用管理员root操作)

 

#整个安装过程中可能需要输入y和回车来确定安装。

###准备工作

#安装“最快镜像源”插件,加速下载
yum install yum-plugin-fastestmirror.noarch

#升级系统
yum update

#安装两个软件源
rpm -ivh http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/i386/epel-release-6-5.noarch.rpm
rpm -ivh http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/i386/ius-release-1.0-8.ius.el6.noarch.rpm

###PHP安装与配置

#PHP安装与配置,Apache安装
#PHP依赖Apache,所以会自动安装哦!
yum install php-pear php php-cli php-common php-devel php-gd php-mbstring php-mcrypt php-mysql php-pdo php-soap php-xml php-xmlrpc php-bcmath php-pecl-apc php-pecl-memcache php-snmp

#修改配置文件
#找到short_open_tag = Off,将其改成short_open_tag = On
#vim用法:点一下键盘上的斜杠(/),输入要查询的内容(区分大小写),按回车即可搜索
#找到内容后按一下键盘上的“Insert”,就可以像记事本一样编辑了
#编辑完后,按"Esc",然后输入" :wq “就可保存退出。
vim /etc/php.ini

###Mysql安装与配置

#安装Mysql
yum install mysql mysql-server mysql-devel

#启动服务
service mysqld start

#修改Mysql root密码
/usr/bin/mysqladmin -u root password '新密码'

###Apache配置
#Apache已经被PHP依赖安装,因此我们已经安装好Apache,我们只需要配置一下

#让Apache支持.htaccess
#vim用法:点一下键盘上的斜杠(/),输入要查询的内容(区分大小写),按回车即可搜索
#找到内容后按一下键盘上的“Insert”,就可以像记事本一样编辑了
#编辑完后,按"Esc",然后输入" :wq “就可保存退出。

#查找Options FileInfo AuthConfig Limit
vim /etc/httpd/conf/httpd.conf

###Xcache模块优化性能(可不装)
#安装过程中如果提示“XX not fount",就yum install XX

#安装编译工具以编译
yum install gcc make

#下载Xcache
wget http://xcache.lighttpd.net/pub/Releases/1.3.2/xcache-1.3.2.tar.bz2

#解压缩Xcache
tar -xvf xcache-1.3.2.tar.bz2

#切换到Xcache目录
cd xcache-1.3.2

#根据php配置Xcache
phpize

#编译安装
mkdir ../xcache-build
cd ../xcache-build
~/xcache-1.3.2/configure -enable-xcache
make
make install

#新增Xcache.ini配置文件
vim /etc/php.d/xcache.ini
#增加内容:
[xcache-common]
;; install as zend extension (recommended), normally "$extension_dir/xcache.so"
zend_extension = /usr/lib/php/modules/xcache.so
;; or install as extension, make sure your extension_dir setting is correct
; extension = xcache.so

[xcache.admin]
xcache.admin.auth = On
xcache.admin.user = "mOo"
; xcache.admin.pass = md5($your_password)
xcache.admin.pass = ""

[xcache]
xcache.shm_scheme =        "mmap"
xcache.size   =             32M
xcache.count =                 1
xcache.slots =             8K
xcache.ttl =              3600
xcache.gc_interval =       300

; Same as aboves but for variable cache
; If you don't know for sure that you need this, you probably don't
xcache.var_size   =          0M
xcache.var_count =          1
xcache.var_slots =          8K
xcache.var_ttl =          0
xcache.var_maxttl =       0
xcache.var_gc_interval =     300

; N/A for /dev/zero
xcache.readonly_protection = Off

xcache.mmap_path = "/dev/zero"

xcache.cacher =             On
xcache.stat =             On
###重启服务器

#重启服务器
reboot

 

 

最后说一下配置文件的路径:
PHP:  /etc/php.ini
Apache: /etc/httpd/conf/httpd.conf

iFaith备份证书卡住的解决方案

今天给一个iPhone 4备份SHSH证书,但是苹果已经停止对iOS4.3.3 SHSH证书的签发。因此使用iFaith V1.1 备份SHSH证书。

进入DFU模式后,开始备份SHSH。但是卡在了Detecting ECID的过程,1个小时也不见任何进展。最后无奈关闭了iFaith。

再使用Home+Power重启,进不去系统,进入连接iTunes恢复模式!

使用Tinyumbrella的Exit Recovery踢出恢复模式,就可以正常开机了。

Thinkpad R61笔记本,Linux Ubuntu 11.04 系统下成功安装 安全气囊技术(APS)驱动和充电阀值驱动

安装APS驱动

目前,在多数IBM笔记本中,都应用了一种叫做 APS(Active Protection System,主动保护系统)的技术 ,而IBM官方有时把这种技术形象的称为 Airbag ,安全气囊

相信不少朋友已经知道这种技术的存在了。神马?你还不知道!好吧,这是一段摘录于互联网的介绍,不想看可以无视:

当笔记本电脑硬盘工作时,硬盘磁头在磁盘上方运动,进行数据读取,当撞击力在持续2毫秒内小于200G时,一般可以靠ThinkPad本本本身的外壳与防震设计来减震,避免对硬盘造成损害。而当撞击力在持续2毫秒内超过200G后,损害将会随着撞击能量的加大而加大。

硬盘处于非工作状态时,磁头处于停止区,硬盘在1毫秒内最大可以承受800G的冲击。当撞击超过800G/1毫秒后,损害将会随着撞击能量的加大 而加大(见图右边的函数图)。也就是说如果可以及时将硬盘磁头归位到停止区,则硬盘可以忍受比在工作状态下更大的冲击而不受损害。IBM APS技术就是基于上述原理,在预测到有可能发生撞击后,及时地将磁头移动到停止区以保护硬盘。

根据大量实际调查显示,笔记本电脑在工作状态下跌落的情况绝大部分是从桌面或膝盖上跌落,即从120cm以下高度跌落(通常人的膝盖高度为50cm,桌面高度为80cm),如何能在ThinkPad本本发生撞击之前就将磁头归位,成为了问题的关键所在。

1.磁头归位的时间问题

经测试,磁头的归位时间从接到控制信号到完成操作,根据磁头所处的磁道位置不同,大约为100毫秒到500毫秒。对于20cm高度内自由下落的情况,一般可以靠笔记本电脑的外壳与防震设计抵御撞击力,所以我们仅需要关注20cm以上的跌落情况。而笔记本电脑从20cm至120cm高度掉落下来的时间是202毫秒至495毫秒,再加上笔记本电脑掉落之前的短暂延迟时间,试验表明通常预计发生的时间会多于下跌时间。这就保证磁头能在笔记本电脑发生撞击之前及时归位,有效地保护磁盘。

2.冲击力问题

笔记本电脑要承受怎样的撞击,硬盘才会受到超过800G的冲击力呢?我们知道,硬盘受到的冲击力是由多项因素决定的。首先是笔记本电脑下落的相对高度与初始速率,而一般笔记本电脑在工作状态下跌落的情况绝大部分是从膝盖或桌面上跌落到地板上,相对高度不超过120cm,垂直方向的初始速率基本可以忽略不计;其次是笔记本电脑撞击的表面,硬质无弹性的表面(如水泥地板)可以造成更大的冲击力,软质有弹性的表面(如木地板或铺着地毯的地板)可以略微缓冲碰撞,从而造成较小的冲击;再次是笔记本电脑本身的外壳设计和防震设计。

为了量化在各种情况下硬盘受到的冲击力,IBM实验室特 别针对从膝盖上跌落和从桌面上跌落两种情景进行了大量的实际测试。相关实验数据显示,从膝盖高度(50cm)或从桌面高度(80cm)翻落到硬质无弹性的 水泥地板上,由于有外壳以及冲击吸收垫保护,硬盘受到的冲击力超过200G的几率约为50%,而超过800G的几率不超过2%。

3.规律性颠簸问题

APS功能一旦开启,就一直在监测ThinkPad本本的运动。但用户常常需要移动办公,如在汽车、火车或飞机等交通工具上使用笔记本电 脑,因此颠簸是在所难免的,这些震动要是常触发APS使磁头归位,则ThinkPad用户在使用本本时就会感到本本运行是断断续续的,影响了工作效率。不 过APS技术已经考虑到这个问题,它具有忽略重复震动的功能,能消除移动用户的顾虑。交通工具颠簸造成的冲击力一般并不足以损害硬盘,所以大多数的颠簸都 不会触发APS功能使磁头归位,从而有效保证了ThinkPad用户使用笔记本电脑的流畅性。

智能化的震动预测、有提前量的磁头归位操作,APS的这些重要特性都保证了ThinkPad本本的硬盘以及盘内数据不会轻易受到各种撞击的影响。

比尔盖子最近给一台Lenovo(其实就是IBM) Thinkpad R61安装了Ubuntu 11.04这个Linux发行版,却悲剧的发现APS不工作,后来经过一番疯狂的搜索,知道了以下事实:

在Linux系统中,IBM并没有提供相应的驱动程序让APS正常工作。曾经有一年,IBM宣称将把关于APS的硬件资料公布到开源社区,这听起来很不错,可实际情况是,开发者1年来都没有见到一页资料。后来,有牛人们通过逆向工程编写出了能在Linux下APS的驱动,这下众多Linux IBM笔记本使用者的硬盘才有了安全保证。

看来使用APS还是有戏的,又经过搜索,终于发现了实现方法:

第一步,打开终端,然后输入如下命令:(我是用的 sudo aptitude install,应该没有什么不同。)
sudo apt-get install tp-smapi-dkms
sudo apt-get install python python-gtk2 python-gnome2 hdapsd

第二步,在终端下输入如下命令:
sudo gedit /etc/modules
然后添加“tp_smapi “代码在最后,让它看得和下面的一样:
=====================================
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with “#” are ignored.
lp
tp_smapi
=====================================

第三步,重新启动,进行测试,看是否工作,在终端下输入如下命令
sudo find /

然后进行抖动你的笔记本,看看是否停止,如果停止了,就说明你成功了,

或者运行:

sudo hdapsd -d sda -s 15 -a -v -y

动动笔记本。看看坐标值在变化吗?

如何调整灵敏度,如下:

在终端下进行如下操作

$ sudo gedit /etc/default/hdapsd

找到如下位置:(默认安装是15, 您可按照自己要求修改,25 30….)

# sensitivity
SENSITIVITY=15

不过,我们还可以在完善APS:在Gnome2的面板上增加一个APS硬盘状态的通知图标,让我们得知硬盘目前是被APS停止还是正常运行。

wget http://www.zen24593.zen.co.uk/hdaps/gnome-hdaps-applet-20081204.tar.gz
 tar -zcvf gnome-hdaps-applet-20081204.tar.gz ./
 sudo apt-get install libpanel-applet2-dev
 cd gnome-hdaps-applet-20081204
 gcc $(pkg-config --cflags --libs libpanelapplet-2.0) -o gnome-hdaps-applet gnome-hdaps-applet.c
 sudo cp gnome-hdaps-applet /usr/bin/
 sudo mkdir /usr/share/pixmaps/gnome-hdaps-applet/
 sudo cp *.png /usr/share/pixmaps/gnome-hdaps-applet/
 sudo cp GNOME_HDAPS_StatusApplet.server /usr/lib/bonobo/servers/

然后,注销,再登录,这时右键点击Gnome面板,选择添加,你会发现多出了一个APS的插件!

这样,我们就完美的实现了APS!

设置电池充电阀值

无论你的笔记本电脑电池用去了多少电力,但连接电源适配器后总会充电至100%,即使你只是用了1%的电——这可不是什么好事!这样充电会缩短电池寿命,最好在电池电力在80%左右的时候再连接电源适配器充电。

但是,靠自己自觉做到这点,有点不靠谱吧。因此,IBM将大部分笔记本的电源管理功能中,增加了电池充电阀值这一功能,可以通过设置,在电池电力低于指定的百分比时开始充电和停止充电,但是在Linux又是没驱动,无法实现。所以我们需要自己安装。

首先,你必须依照本文的第一部分安装APS驱动,因为电池充电阀值和APS使用的是一个驱动。然后就可依照下面的命令设置了。

首先执行:

cat /sys/devices/platform/smapi/BAT0/*_charge_thresh

30 
#--> 低于30%开始充电
100 -
#--> 充电至100%后停止

查看当前的设置,你的和我的结果不一定相同哦!然后用下面的命令修改充电阀值。


sudo su
#切换到root身份
echo 80 > /sys/devices/platform/smapi/BAT0/start_charge_thresh
#低于80%开始充电
echo 100 > /sys/devices/platform/smapi/BAT0/stop_charge_thresh
#充电至100%后停止

然后再次执行,果然成功了吧!

cat /sys/devices/platform/smapi/BAT0/*_charge_thresh

80
#--> 低于80%开始充电
100 -
#--> 充电至100%后停止

iOS越狱的基本知识

——iOS越狱不是盗版行为,合理合法

看到了这么一个帖子《需越狱才能装输入法不是公开支持盗版吗!》,全文如下:

需越狱才能装输入法不是公开支持盗版吗!本人一直期待搜狗输入法能在苹果上运行。从测试版等到正式版。没有想到的是正式版也要越狱。更没有想到的是支持盗版的竟是搜狐!

看来,许多人都对“越狱”这个词不理解,下面我就来通过回答疑问的方式告诉大家关于越狱的知识。

疑问1:越狱是什么?

回答:

苹果的手机(iPhone)、平板电脑(iPad)和MP4(iPod touch),甚至是连接到电视上的高清视频播放器(Apple TV),都是用的是一个名为iOS的操作系统。我们的电脑用Windows,人家用iOS。iOS是什么意思?iOS就是iPhone Operning System,意为iPhone操作系统。

而iOS系统不同于其它的系统,你用Windows的话,如果这是属于你的电脑,你肯定有管理员权限,如果你在一台类似网吧的公共环境下用电脑,你会发现很多软件安不进去,提示:你不是管理员。这会痛苦死的。

而iOS给用户的权限很小,不给用户root权限。root权限是什么东西?用人类语言来说,就是管理员权限,只不过在iOS中换了个名字罢了。
——————————————————
比尔盖子链接:root除了是iOS系统的管理员之外,Linux、Unix、Mac OS X等系统中的管理员也叫root。
——————————————————

如果iOS的管理员权限被锁死了,那么就像你在网吧中遇到的情况一样,有些软件会安不上的!那为什么用App Store的时候所有的软件都能安上呢?那是因为App Store里的软件都是低级的ipa软件,不需要至高无上的管理员特权(同时也是苹果所说的所谓“合法”软件)。

但是情况又不太一样!你自己编写了一个iOS的ipa软件,也不需要root权限啊,为什么不能安装到别人的iOS上呢?那是因为苹果的盈利模式就是只能在App Store上安软件,如果你的软件没有通过苹果公司严格的软件审核,不能发布到App Store上,也就不能安装了。说明白点,iOS只允许安装App Store上的ipa软件。即使你的软件没有涉及到系统底层,没有发布到App Store上也是不能安装的!

连不需要root权限的ipa软件都不能安装,别提系统级的软件,诸如输入法、虚拟内存、外观样式、解码器之类的。第一你没有root权限;第二你的软件没有发布到App Store,不受苹果承认,因此不能安装。

那苹果通过什么来确定你的IPA是否是苹果承认的呢?答案就是:数字签名。所有苹果允许发布的IPA软件都包括了一个苹果的数字签名,在软件被安装到iOS上之前,iOS会检查上面的数字签名,如果发现没有数字签名,恭喜你,此IPA无效。同时,此IPA的购买者信息也被记录在IPA里面,也就是说,如果别人购买了一个软件,把IPA发给你了。首先,此IPA是苹果承认的,过了第一层检查,软件已经被安装到你的iOS上了,但你要打开应用时发现,一打开瞬间就退出了,也就是“闪退”,这是怎么回事?原来,苹果发现此IPA的购买者信息与目前苹果(或曾经)登录过的App store账户不符!如果你曾经使用过某个账户并下载安装过软件,那么此账户拥有的IPA才能被执行。这也是论坛上分享应用的人,让大家随便下一个软件,注销,然后以后装IPA的原理。

那这个数字签名可不可以伪造呢?如果你可以,那么你除了可能会获得百万美金以外,还可能轰动全球。虽然没法伪造数字签名,那么是否可以破坏iOS的签名检查机制,从而随意安装软件呢?答曰:可以;又答曰:需要root权限!也就是需要越狱,越狱之后某些人一定安装的IPA补丁就是这个用途。那么到底怎么把软件破解,然后安装到iOS上呢?很简单。前面说过,IPA的购买者信息包括在一个IPA文件里面,我们现在只需要简单的用软件把这个购买人去掉就行了。但是这会导致无法通过苹果的签名检查,因为文件改动了,签名失效了,当然可以重新签,可能吗?那怎么办?打IPA补丁,屏蔽掉苹果的签名检查!

苹果偏偏不让你自由安装软件。但是,这个苹果设备是我们用户的,我们怎么用和苹果有什么关系?这就是“越狱”受到美国法律保护的原因。

说了这么多,到底那怎么办才能自由安装软件?难道要破解root的密码来拿到root权限来自由安装软件吗?比尔盖子可以告诉你:iOS系统和其它的类Unix系统,都是很注重安全性的,因此你不可能拿到root权限的。

想想办法:你是否给Windows补过“系统漏洞”?有没有注意到有些漏洞的说明中写道“任意执行代码”的字样?
——————————————————
比尔盖子链接:由于当时系统程序设计时根本没有考虑周全,而造成程序缺陷。比如说,某人写了一个计算器软件,但是却没有检查用户输入的算式是否合法。有一天,一个用户不小心输入了5除以0,由于0不能做除数,因此导致程序弹出一对错误提示后崩溃。这种程序的缺陷,被称作bug。关键是除数是不是0不要紧,有些缺陷可以导致程序的安全保护失灵。如果一个程序在安全防范方面存在了bug,利用这个bug就可能绕过整个安全机制,比如可以从普通用户变身管理员。那么这种缺陷除了可以一般的称作bug,还可以称作“系统漏洞”!
——————————————————

说了这些,你可能会这样想:咦?既然Windows里面有可以“钻空子”成为管理员的漏洞,那iOS里有没有“钻空子”获得root权限的漏洞呢?你猜对了,有!因此,有些黑客利用这些漏洞来编写软件,用软件就可以轻松获得iOS的root权限,这就是越狱了。

越狱完毕以后,就可以通过Cydia(越狱之后的App Store)上自由安装需要有root权限的软件了;也可以直接通过iTunes安装破解过的ipa软件;还可以再用Cydia安装全世界最大的ipa软件破解组织出品的Installous,在App Store中所有的付费软件,Installous中几乎都能下载到破解版。不过,越狱之后可以安装盗版应用,但是越狱不是为了安装盗版应用。越狱不为盗版而生,不等于盗版。

疑问2:越狱之后的iOS为什么会更容易白苹果呢?

回答:你也许有过把Windows或Linux系统搞坏的经历,这也许是你的操作失误,乱改设置;也可能是软件的问题导致的。不过话说回来了,你在网吧时没有管理员权限怎么折腾上面这几件事情呢?没办法吧!或者,你用系统管理员登录系统之后,系统也不会立即坏掉吧,说了句废话。所以说,以管理员权限使用系统时或多或少会有问题,是你或是第三方软件导致的,但与越狱本身无关!

疑问3:越狱之后的iOS为什么不保修呢?

回答:其实,无论是微软还是Sun,都不会为Windows和Unix的用户“保修”整个系统,解决一切问题,因为系统是开放的,什么都能干,它们也不可能帮你解决一切问题;但iOS不一样:封闭的环境,系统的功能是固定的,因此苹果有能力对此进行保修。一旦越狱,不确定因素就很多了,故无法保修。另外,你以苹果公司不接受的方式使用苹果设备,人家怎么会保修呢?因此,越狱不保修的问题不值得奇怪。但是一旦越狱之后有了问题(比如硬件坏了)怎么办呢?呵呵,用iTunes“恢复”一下就回到了未越狱状态,就可以正常保修了。因此,你不用为“越狱或否”进行思想斗争,因为越狱之后可以反悔。

版权所有 © 2025 比尔盖子 博客

主题设计 Anders Noren返回顶部 ↑