“英雄不问出处”的选人方案在海量招聘中有些难度。随着现代管理体系的不断完善很多东西都在靠公式评估。年龄、工作经验、学历、上家公司规模、上家公司收入、项目规模、汇报对象、老板背景等等,输入完毕。嘟嘟嘟,出结果:X等人。哈哈哈,人就这样被定性了。整的和数学专家似的。
我认为做管理还是应该以人为本,能知人善用。对于一个想要孩子,还要问问老婆有多少经验,生过几个才后才能做决定的领导,跟着也没有意义。
raspberry pi 自动初始化脚本
玩了几天,打算刷一下。但是很多要升级也挺麻烦,直接写了个脚本,自动升级。大家如果还有自己需要的,也可以自行添加,这样初始就方便多了。
先修改成亚洲的源
$ sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
$ sudo vi /etc/apt/sources.list
deb http://mirror.nus.edu.sg/raspbian/raspbian wheezy main contrib non-free rpi
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ wheezy main contrib non-free rpi
如果直接用我的脚本命令如下:
$ wget http://www.simonzhang.net/wp-content/uploads/2012/12/pisystemupdate.py_.gz
$ gunzip pisystemupdate.py_.gz ;chmod a+x pisystemupdate.py_;python pisystemupdate.py_
不知道为什么加了个尾巴
脚本内容如下:
#!/bin/env python # -*- coding:utf-8 -*- # Revision: # Date: 2012-12-10 # Author: simonzhang # Email: simon-zzm@163.com # Web: www.simonzhang.net # ------------------------------- import os import time def SystemUpdate(): #系统升级 try: os.system('sudo apt-get -y update') _get = 'ok' except: _get = 'ERROR' return _get def Timing(): #校时 try: os.system('sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime') os.system('sudo apt-get install -y ntpdate') os.system('sudo /usr/sbin/ntpdate stdtime.gov.hk') _get = 'ok' except: _get = 'ERROR' return _get def Vncserver(): #远程桌面 try: os.system('sudo apt-get install -y tightvncserver') _get = 'ok' except: _get = 'ERROR' return _get def DevelopTool(): #开发工具 try: os.system('sudo apt-get install -y gcc make') _get = 'ok' except: _get = 'ERROR' return _get def SystemTools(): #系统常用工具 try: os.system('sudo apt-get install -y bison gawk vim chkconfig') _get = 'ok' except: _get = 'ERROR' return _get def PythonTools(): #python 管理工具 try: os.system('wget -q http://peak.telecommunity.com/dist/ez_setup.py') os.system('sudo python ez_setup.py') os.system('sudo easy_install pygame') _get = 'ok' except: _get = 'ERROR' return _get def PythonImage(): #python的图片处理 try: os.system('sudo apt-get install -y libjpeg*-dev') os.system('sudo apt-get install -y python-imaging') os.system('sudo apt-get install -y python-dev') os.system('sudo easy_install tornado PIL') _get = 'ok' except: _get = 'ERROR' return _get def PythonFrame(): #python框架 try: os.system('sudo easy_install tornado Django') _get = 'ok' except: _get = 'ERROR' return _get def OpenCV(): #摄像头 try: os.system('sudo apt-get install -y python-opencv') _get = 'ok' except: _get = 'ERROR' return _get def InstallMysql(): #数据库,密码为pi try: os.system('sudo debconf-set-selections <<< \'mysql-server-5.5 mysql-server/root_password password pi\'') os.system('sudo debconf-set-selections <<< \'mysql-server-5.5 mysql-server/root_password_again password pi\'') os.system('sudo apt-get -y install mysql-server') _get = 'ok' except: _get = 'ERROR' return _get def Installjava(): #java环境 try: os.system('sudo apt-get install -y openjdk-7-jdk') _get = 'ok' except: _get = 'ERROR' return _get def ChineseFont(): #中文字体 try: os.system('sudo apt-get install -y ttf-wqy-microhei') _get = 'ok' except: _get = 'ERROR' return _get def InputMethod(): #输入法 try: os.system('sudo apt-get install -y scim scim-pinyin') _get = 'ok' except: _get = 'ERROR' return _get def AudioDriver(): #音频 try: os.system('sudo apt-get install -y alsa-utils') os.system('sudo modprobe snd_bcm2835') _get = 'ok' except: _get = 'ERROR' return _get def main(): install_list = [SystemUpdate, \ Timing, \ Vncserver, \ DevelopTool, \ SystemTools, \ PythonTools, \ PythonImage, \ PythonFrame, \ OpenCV, \ InstallMysql, \ Installjava, \ ChineseFont, \ InputMethod, \ AudioDriver, \ SystemUpdate, ] for il in install_list: print '*' * 50 print ': %s start' % il print '*' * 50 install_status = il() nt = time.localtime() log_time = "%s-%s-%s %s:%s:%s" % (nt[2], nt[2], nt[3], nt[4], nt[5], nt[6]) log_file = open("pi_install.log", "ab") log_file.write("%s %s install %s\n" % (log_time, il, install_status)) log_file.close() os.system('sudo apt-get upgrade -y') print "Install all end." if __name__ == '__main__': main()
raspberry pi安装 java mysql tomcat
raspberry pi安装 java mysql tomcat。开始用oracle通的arm进行安装但是遇到了问题没有成功。后来还是采用apt-get安装,还是非常简单
$ sudo apt-get install openjdk-7-jdk mysql
版本如下:
Server version: 5.5.28-1 (Debian)
java version “1.7.0_07”
tomcat也能直接安装,但是出于需要,还是直接到apache上下载。解压,默认配置启动。能看到可爱的小猫了。
查看配置源
$ vim /etc/apt/sources.list
通过到源上查看haproxy、nginx、apache2、squid、tomcat7、cacti、nagios、snmp、redis、rsync、samba、python、php、lua、node.js等应有尽有,直接用工具安装非常方便。以后不再用考虑环境准备工作了。下一步开始准备做点实用的东西。
对于要用桌面系统要还需要安装字体等
中文字体
$ sudo apt-get install ttf-wqy-microhei
输入法
$ sudo apt-get install scim scim-pinyin
音频驱动:
$ sudo apt-get install alsa-utils
raspberry pi 连接android手机
之前测试wifi不稳定,网上看了看gprs的开发模块还挺贵。打算将我的htc手机连接到raspberry pi的板子上,看看能不能成功。
使用命令查看是否已经认到手机。
$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 008: ID 0bb4:0cad HTC (High Tech Computer Corp.)
Bus 001 Device 009: ID 0ac8:301b Z-Star Microelectronics Corp. ZC0301 Webcam
编写文件,内容里面的串是根据lsusb中的值得来的。
$ sudo vim /etc/udev/rules.d/99-android.rules
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0bb4″, ATTRS{idProduct}==”0cad”,MODE=”0666″
$ sudo chmod a+rx /etc/udev/rules.d/99-android.rules
$ sudo service udev restart
下载编译好的adb工具
http://fieldeffect.info/w/Beagleboard_Notes?action=AttachFile&do=view&target=adb
本地下载
传到系统上,使用命令进入android手机
$ chmod a+x adb
$ ./adb shell
成功了。这样就可以用手机做代理进行操作,如果写个能时时交互数据的服务,很多传感器的钱都剩下了。
http://huulivoide.pp.fi/Arch/arm/也有编译好的adb工具,我没有测试
raspberry pi连接摄像头
安装pygame产生窗口用,cv获取摄像头图像
$ sudo easy_install pygame
$ sudo apt-get install -y python-opencv
代码如下:
#!/bin/env python # -*- coding:utf-8 -*- # ------------------------------- # Filename: # Revision: # Date: 2012-12-7 # Author: simonzhang # Email: simon-zzm@163.com # Web: www.simonzhang.net # ------------------------------- import pygame import cv pygame.init() size = width, height = 640, 480 speed = [1, 1] black = 0, 0, 0 pygame.display.set_caption('simonzhag.net') screen = pygame.display.set_mode(size) cam = cv.CreateCameraCapture(0) cv.SetCaptureProperty(cam,cv.CV_CAP_PROP_FRAME_WIDTH, 640) cv.SetCaptureProperty(cam,cv.CV_CAP_PROP_FRAME_HEIGHT, 480); while 1: try: cv.GrabFrame(cam) img = cv.RetrieveFrame(cam) cv.SaveImage('/tmp/test.jpg', img) except: pass cv.WaitKey(1500) image = pygame.image.load('/tmp/test.jpg') screen.blit(image, speed) pygame.display.flip()
如果cv.WaitKey过小或者请求太多会报select timeout。还不知道是摄像头问题、还是我的存储开始class2的问题。图像也经常获取不全,问题还未处理。
也不是所有设想头都可以用。可以使用lsusb查看系统是否识别出usb设备,并且有/dev/video0文件。如果有就应该可以获取。