跳转至

2012

画--增补

这是lofyer早期的作品 1123

这是最近的作品 2012-08-23_07-01-04_117[1]

Arduino相关

目前最流行的是uno系列,而leonardo好象是在1.0.1后才加入的,其ide开发是在github上进行。 设计很清爽(因为没有UI设计师吧),希望别像keil一样越来越冗余。


Arduino IO生成波形的问题(2012)

1
2
3
4
DigitalWrite(pin,HIGH);
DELAY(10);
DigitalWrite(pin,LOW)
DELAY(10);

观察波形(上升沿触发)频率是51Hz,峰值为0.520V(使用外接电源的情况下,USB作电源为0.505V)。 除掉市电滤波的原因,应该是128本身Timer造成的问题,因DELAY使用的是Timer,选中的端口同样为Timer可用的端口,故在电平维持时可看到波形有毛刺(示波器太烂了吧)。


使用Arduino显示主机CPU

https://github.com/lofyer/arduino-hostcpuload-led

用libgtop2的库,已完成。 注意: 数据以ascii类型传输,调用led时转化为int cpu利用率算式:

1
(float)(100\*(cpu\_time2.(sys+user)-cpu\_time2.(sys+user))/(cpu\_time2.total-cpu\_time1.total))

oVirt相关

Ovirt Just make some notes: # need net qemu-kvm -m 1024 -localtime -M pc -smp 2 -drive file=ovirt.qcow2,cache=writeback,boot=on -boot d -name kvm-ovirt,process=ovirt -usb -usbdevice tablet Ovirt provided a fedora.iso with node in it. Ao is building the engine.

on virtfan spicec -h localhost -p 5910

node应该是自动加入engine的,结果是现在能加入,但是不能安装 nmap后engine确实是有8443,node只有22,安装过程是交互的(node通过外网获取安装包,返回状态到engine)

改变端口为443,按照troubleshooting更改engine上的nfs服务。f17上nfs默认建立服务为v4,要改为v3,并且添加group和user id分别为36的vdsm与kvm,用提供的脚本测试下。 Troubleshooting_NFS_Storage_Issues

ok,等明天加入节点就可以了。

Building ovirt from source with cmdline within an ide install jboss maven plugin on eclipse

here's the engine arch

and here's the engine-core arch

运行engine-manage-domain需要ipa-server,类似windows的ActiveDirectory,需要不同于engine的主机上安装ipa 安装ipa-server

title: "Add nat to ovirt via vdsm hooks" date: 2014-05-04 categories: - "cloud-infra"


OK, I do not like control group very much for now.

Comment device section in control group config, sorry for my laziness...

mount { cpuset = /cgroup/cpuset; cpu = /cgroup/cpu; cpuacct = /cgroup/cpuacct; memory = /cgroup/memory;

devices = /cgroup/devices;

1
    freezer = /cgroup/freezer;

net_cls = /cgroup/net_cls;

1
    blkio   = /cgroup/blkio;

}

Enable ip forward

net.ipv4.ip_forward = 1

Reboot the host

Connect to virsh to enable libvirt's default virbr0(NAT)

If you don't know the password for your account, just use command below to create one.

saslpasswd2 -a libvirt root

Create a nat network.

nat b42e377d-e849-4c36-bd98-3d090def5ecc

virsh net-create /etc/libvirt/qemu/networks/nat.xml

virsh net-autostart nat

virsh net-start nat

Create tun device and add it to virbr0

UPDATE: This could be ignored if you use extnet.py

tunctl -t nat0 -u qemu

brctl addif virbr1 nat0

Add hook file to vdsm

UPDATE: use extnet from github with a little modification (Only the first vNIC will be NAT, the second one still keeps its way).

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/usr/bin/python

import os
import sys
import traceback
import xml.dom
import hooking

def replaceSource(interface, newnet):
    source, = interface.getElementsByTagName('source')
    source.removeAttribute('bridge')
    source.setAttribute('network', newnet)
    interface.setAttribute('type', 'network')

def main():
    params = "default"
    os.environ.\_\_setitem\_\_("extnet",params)
    newnet = os.environ.get('extnet')
    if newnet is not None:
        doc = hooking.read\_domxml()
        interface = doc.getElementsByTagName('interface')[0]
        replaceSource(interface, newnet)
        hooking.write\_domxml(doc)
def test():

    interface = xml.dom.minidom.parseString("""
    """).getElementsByTagName('interface')[0]

    print "Interface before forcing network: %s" % \\
        interface.toxml(encoding='UTF-8')

    replaceSource(interface, 'yipee')
    print "Interface after forcing network: %s" % \\
        interface.toxml(encoding='UTF-8')

if \_\_name\_\_ == '\_\_main\_\_':
    try:
        if '--test' in sys.argv:
            test()
        else:
            main()
    except:
        hooking.exit\_hook('extnet hook: [unexpected error]: %s\\n' %
                          traceback.format\_exc()) 

QEMU-CMD way:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import os
import sys
import hooking
import traceback
import json
import shutil

def addQemuNs(domXML):
    domain = domXML.getElementsByTagName('domain')[0]
    domain.setAttribute('xmlns:qemu',
                        'http://libvirt.org/schemas/domain/qemu/1.0')

def injectQemuCmdLine(domXML, qc):
    domain = domXML.getElementsByTagName('domain')[0]
    qctag = domXML.createElement('qemu:commandline')

    for cmd in qc:
        qatag = domXML.createElement('qemu:arg')
        qatag.setAttribute('value', cmd)

        qctag.appendChild(qatag)

    domain.appendChild(qctag)
domxml = hooking.read\_domxml()

# Get vm uuid, just in case

cur\_vm\_uuid = domxml.getElementsByTagName('uuid')[0].firstChild.nodeValue

macaddr = "94:de:80:ea:30:f5"
natname = "nat0"
params = '["-netdev","tap,ifname=%s,script=no,id=hostnet0,downscript=no","-device","virtio-net-pci,mac=%s,netdev=hostnet0,bus=pci.0,addr=0x10"]' % (natname, macaddr)
os.environ.\_\_setitem\_\_("qemu\_cmdline",params)

# Modify Qemu Parameter

if 'qemu\_cmdline' in os.environ:
    try:
        domxml = hooking.read\_domxml()

        qemu\_cmdline = json.loads(os.environ['qemu\_cmdline'])
        addQemuNs(domxml)
        injectQemuCmdLine(domxml, qemu\_cmdline)

        hooking.write\_domxml(domxml)
    except:
        sys.stderr.write('qemu\_cmdline: [unexpected error]: %s\\n'
                         % traceback.format\_exc())
        sys.exit(2)

Then you should start the vm WITHOUT ANY NIC if you are using nat.py.

title: "Migrate vm from ESXi to oVirt" date: 2014-04-25 categories: - "cloud-infra"


oVirt: v3.3, CentOS, 192.168.1.111 ESXi: 5.x, 192.168.1.135

For Windows vm, do this http://pve.proxmox.com/wiki/Migration_of_servers_to_Proxmox_VE#VMware_to_Proxmox_VE_.28KVM.29 Before you begin make a copy of the VMware image. Remove VMware tools Start the Windows virtual machine on VMware and remove the VMware tools via the Windows control panel. Reboot. Enable IDE Start the Windows virtual machine on VMware and execute the mergeide.reg (File:Mergeide). Now the registry is changed that your Windows can boot from IDE, necessary for KVM. Make sure Atapi.sys, Intelide.sys, Pciide.sys, and Pciidex.sys are in the %SystemRoot%\System32\Drivers folder. If any are missing they can be extracted from %SystemRoot%\Driver Cache\I386\Driver.cab which can be opened in Windows file Exlorer like a directory and then the missing files can be copied out. see Microsoft KB article for details. Shutdown Windows.

  1. Create a nfs export domain on your oVirt datacenter.

/vdsm/export 0.0.0.0/0.0.0.0(rw)

  1. Install virt-v2v on CentOS and add authentication.

yum install virt-v2v

machine 192.168.1.135 login root password 1234567

Change permission of .netrc as saying of manual or you will get a warning with wrong permission.

chmod 600 ~/.netrc

  1. Import myvm. Make sure that your vm in ESXi is powered off.

virt-v2v -ic esx://192.168.1.135/?no_verify=1 -o rhev -os 192.168.1.111:/virtfan/export --network mgmtnet myvm

myvm_myvm: 100% [====================================================]D 0h04m48s

virt-v2v: myvm configured with virtio drivers.

  1. Import myvm from export domain to data domain.

Import.

import

Run.

run

"VDSM" "2012-10-29"

不喜欢java,就是不喜欢。。但还是要干的。。 4000多个文件构建UML图的话有点困难,都是小类,看了些tools的代码,然后转到vdsm内容,通讯方式是xml-rpc,当初我猜对了。

vdsm是oVirt的节点代理,功能可订制,也可移植到其他管理平台,基于KVM,储存VM各种暂态数据 vdsm提供的api通过xmlrpc使用,架构如下

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
------------+------VDSM-------+------+-----
            |                 |      |
    sysfs---+                 |      |
      LVM---+              libvirt   |
net-tools---+              qmp|      |Virtio serial
      xxx---+             ---+      +-------------/
           ...                |      |
                      -------/        \-------
                     /                        \
                    |  KVM-QEMU VM             |
                     \________________________/

主要包括vdsm,vdsm_cli,vds_bootstrap,vdsm_reg,vdsm_hooks 其中lifecycle hooks有针对vdsm和vm在before和after期间 bootstrap用于验证兼容性,包括网络,cpu,认证等,目前只支持RH自家产品

黑客与画家(摘抄)

1.使用计算机以及所有有助于了解这个世界本质的事物都不应受到任何限制。任何事情都应该亲手尝试。

Access to computer--and anythin that might teach you something about the way the world works--should be unlimited and total. Always yield to the Hands-On Imperative.

2.信息应该全部免费。

All information should be free.

3.不信任权威,提倡去中心化。

Mistrust Authority--Promote Decentralization.

4.判断一名黑客水平应该看他的技术能力,而不是他的学历、年龄或地位等其他标准。

Hackers should be judged by their hacking, not bogus criteria such as degrees, age, race, or position.

5.你可以用计算机创造美和艺术。

You can create art and beauty on a computer.

6.计算机使生活更美好。

Computers can change your life for the better.

幽默一定程度上反映了力量。幽默感是强壮的一种表现,始终拥有幽默感代表你对厄运一笑了之,而丧失幽默感则表示你被厄运深深伤到。所以,强壮的标志(或至少是特点)就是轻松面对自己的人生。充满自信的人常常像燕子一样,以一种居高临下的姿态轻盈地看到周围的一切,比如希区柯克拍摄的电影、16世纪画家勃鲁盖尔的绘画(甚至莎士比亚也是这方面的一个例子。)

让dnspod解析了

godaddy的解析在朝内老是挂掉,有人说国内的dnspod不错,就换换试试了,添加@ A与www A记录,在gd上设置ns为dnspod的,也就半小时就好了。

吐槽下pod的进阶服务怎么不识别我电信手机号←_←

实用笔记

WebFramework:

Django Cappuccino->mockingbird

搜索Tab

grep -P "t"

批量替换

sed -i "s/qwe/asd/g" `grep -rl "qwe"`

cmake 配置安装完opencv后,将安装路径中到lib/pkg-config/opencv.pc复制到/usr/lib/pkg-config,然后可以进行pkg-config 查找

gnome3任务栏快捷方式的存放位置拖到浏览器或者终端里你就看见了。。

curl POST

curl -X POST -d '4142430A02000' http://user:pass@myhost/hudson/job/_jobName_/postBuildResult

curl -X POST -d @myfilename http://user:pass@myhost/hudson/job/_jobName_/postBuildResult

ddwrt 内网不能访问内网域名

iptables -t nat -I POSTROUTING -o br0 -s 192.168.0.188/24 -d 192.168.0.188/24 -j MASQUERADE

vpn的内网的问题

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j SNAT --to-source 70.8.7.6

iptables -t nat -A POSTROUTING -o eth0 -s 172.16.1.0/24 -j MASQUERADE

delete git branch

git push origin :yourbranch

ipa client reinstall

删除_/etc/ipa/ca.crt_证书

fedora制作安装cd

!/bin/bash

livecd-creator --config=/usr/share/spin-kickstarts/fedora-livecd-desktop.ks \ --fslabel=Test \ --tmpdir=/root/iso/tmp \ --cache=/root/iso/cache \ --nocleanup \ --cacheonly #为节约下载时间可在以后制作时忽略

mysql grant

grant all privileges on *.* to root@'%' identified by '123456'; flush privileges;

打开kvm nested参数

cat /sys/module/kvm_intel/parameters/nested

为N则

modprobe -r kvm-intel modprobe kvm-intel nested=1

Fedora滚动升级版 Rawhide

yum install fedora-release-rawhide yum-config-manager --disable fedora updates updates-testing yum-config-manager --enable rawhide yum update yum yum --releasever=rawhide distro-sync --nogpgcheck

or

dnf upgrade --refresh dnf install dnf-plugin-system-upgrade dnf system-upgrade download --refresh --releasever=rawhide --allowerasing dnf system-upgrade reboot

Opensuse滚动升级版 Tumbleweed

zypper ar --refresh http://download.opensuse.org/repositories/openSUSE:/Tumbleweed/standard/ Tumbleweed zypper ar --refresh http://download.opensuse.org/distribution/openSUSE-current/repo/oss/ 'openSUSE Current OSS' zypper ar --refresh http://download.opensuse.org/distribution/openSUSE-current/repo/non-oss/ 'openSUSE Current non-OSS' zypper ar --refresh http://download.opensuse.org/update/openSUSE-current/ 'openSUSE Current updates' zypper ar --refresh http://download.opensuse.org/update/openSUSE-non-oss-current/ 'openSUSE Current non-OSS updates' zypper dup

vs2012修复补丁

由于升级.net 4.5会出现vs2012部分项目失败,可以打这个补丁修复 Microsoft Visual Studio 2012 更新 (KB2781514)

RESTClient

针对RESTful的API可以使用这个工具 http://restclient.org

dl-ssl.google.com

74.125.237.1

owncloud repo

http://software.opensuse.org/download/package?project=isv:ownCloud:devel&package=owncloud-client

android google play

cp /data/app/googleplay /system/app/

获取Gravatar头像

curl http://www.gravatar.com/avatar/`echo -n [email protected] | md5sum` > gravatar.jpg

Maven insecure SSL

-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true

bVNC build

FreeRDP: checkout dbbb341; cmake .; ant release Singed keystore: keytool -genkey -alias android.keystore -keyalg RSA -validity 20000 -keystore android.keystore http://www.mail-archive.com/[email protected]/msg13763.html

IPA ADD-USER

!/bin/bash

echo -e "pswd4admin\n" | kinit admin echo -e "\(1\\n\)1\n\(1\\n" | ipa user-add echo -e "\)1\n\(1\\n" | ipa passwd \(1 sleep 1 echo -e "\)1\\n\)1\n$1\n" | kinit $1

NTP server

server 192.168.1.11 mask 255.255.0.0 nomodify 启动ntpd后要等个几分钟,client才能去同步,否则报错说未找到合适的ntp服务器

rsync

rsync -zvrtopgal -e ssh --delete --stats --progress --exclude 'ignore.txt' [email protected]:/var/log /home/lofyer/lofyer.org/

CentOS Smartcard

SmartCard service: openct pcscd

zathura

很好的PDF阅读器

ssh without password

Generate rsa key pair without passphrase

[demo@A ~]$ ssh-keygen -t rsa

Copy pub key to B

[demo@A ~]$ cat .ssh/id_rsa.pub | ssh alpha@B 'cat >> .ssh/authorized_keys2'

Add private key to A

[demo@A ~]$ ssh-add ~/.ssh/id_rsa or just [demo@A ~]$ ssh-copy-id alpha@B

ssh to a new host without key checking promption

vim /etc/ssh/ssh_config

... StrictHostKeyChecking no ...

debian offcie乱码

安装文泉逸字体 apt-get install fonts-wenquanyi

debian virt-viewer with spice

deb http://mirrors.163.com/debian/ unstable main deb-src http://mirrors.163.com/debian/ unstable main

deb http://security.debian.org/ unstable/updates main deb-src http://security.debian.org/ unstable/updates main

unstable-updates, previously known as 'volatile'

deb http://mirrors.163.com/debian/ unstable-updates main deb-src http://mirrors.163.com/debian/ unstable-updates main deb http://apt.wxwidgets.org/ unstable-wx main deb-src http://apt.wxwidgets.org/ unstable-wx main

Better DNS

dns1: 199.91.73.222 dns2: 8.8.8.8

audit log

Modify /etc/audit/audit.conf to 8192 or bigger.

memcached

PHP

apt-get install memcached php5-memcached

modify /etc/php5/conf.d/memcached.ini

disable TSO GSO to improve virtio-net

ethtool -K eth0 gso off

ethtool -K eth0 tso off

disable PackageKit in Fedora

/etc/yum/pluginconf.d/refresh-packagekit.conf

enabled=0

推荐一种工作方式

集成显卡下运行linux,将另一块硬盘或者vdisk,还有独立显卡passthrough给虚拟机Win7,协议使用spice,这是很爽啊

crt & key to pem

openssl x509 -inform DER -outform PEM -in server.crt -out server.crt.pem openssl rsa -inform DER -outform PEM -in server.key -out server.key.pem cat server.crt.pem server.key.pem >> server.pem

wireless relay for tomata

设置无线中继时确保主路由和从路由的SSID、密码、加密方式一致,不要使用WPA/WPA-2混合模式

libvirt password

saslpasswd2 -a libvirt root

netcat(nc) tips

大传输文件(file transfer)

server: nc -l 5555 < file_to_copy client: nc server_ip 5555 > new_file

聊天(chat)

client1: nc -l 5555 client2: nc server_ip 5555

udp connection

server: nc -4 -u -l 5555 clinet: nc -4 -u localhost 5555

owncloud repo

[isv_ownCloud_community] name=Latest stable community release of ownCloud (CentOS_CentOS-6) type=rpm-md baseurl=http://download.opensuse.org/repositories/isv:/ownCloud:/community/CentOS_CentOS-6/ gpgcheck=1 gpgkey=http://download.opensuse.org/repositories/isv:/ownCloud:/community/CentOS_CentOS-6/repodata/repomd.xml.key enabled=1

gnome terminal proxy

$ ssh -ND 7070 yourname@yourserver $ gconftool-2 -R /system/proxy # show configuration $ gconftool-2 -s /system/proxy/socks_host -t int 127.0.0.1 $ gconftool-2 -s /system/proxy/socks_port -t int 7070 $ gconftool-2 -s /system/proxy/mode -t string manual # enable $ gconftool-2 -s /system/proxy/mode -t string none # disable

update xcode cmd

xcode-select --install

Test linux watchdog

echo c > /proc/sysrq-trigger

Bash环境变量漏洞检测

env x='() { :;}; echo asdasd' bash -c "echo asd"

maven socks5 proxy

-DsocksProxyHost=127.0.0.1 -DsocksProxyPort=7070

When your vm has 2 ethernet, DO noticed which one is the default gateway, or you will fail in ROUTER PORT FORWARDING.

Delete RAID info in your disk

dmraid -n /dev/sda

DDF1 Anchor at 12345678

dd if=/dev/zero of=/dev/sda seek=12345678 bs=512 count=1

Postgresql recovery when xlog failed

$ pg_resetxlog -f -x 0x9A00000 -m 0x10000 -O 0x10000 -l 0x1,0xB67,0x58 -D /var/lib/pgsql/data or $ pg_resetxlog -f /var/lib/pg_sql/data Transaction log reset

解决mysql+php中文显示问号问题

比如在vtigercrm,zabbix中

创建utf8排序的数据库即可

mysql

create database mydb DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

Mysql delete duplicated rows

delete from posts where id not in (select * from (select max(n.id) from posts n group by n.title) x);

OR

create table new as select * from posts where 1 group by url; rename table new master;

pip upgrade all

pip freeze --local | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 pip install -U

wget 递归下载

wget -c -r -np -k -L -p http://example.com/dir0/

修改gem源

$ gem sources --remove https://rubygems.org/ $ gem sources -a https://ruby.taobao.org/ $ gem sources -l *** CURRENT SOURCES ***

https://ruby.taobao.org

请确保只有 ruby.taobao.org

使用extundelete恢复rm -fr数据

http://extundelete.sourceforge.net/下载源码,安装efs2progs-devel并编译。

mount /dev/sdb2 /mnt -o ro

extundelete /dev/sdb2 --restore-files relative-path-to-files --after 20140404

OR

extundelete /dev/sdb2 --restore-all

使用TestDisk/PhotoRec恢复分区/数据

http://www.cgsecurity.org/wiki/TestDisk下载TestDisk,解压后会发现源码以及静态编译文件,直接执行即可,其中TestDisk恢复分区,PhotoRec恢复图片文件。

Wordpress 摘要字数搜索关键字excerpt_length

Eclipse multiuser

Add following code to your eclipse/configuration/config.ini

[email protected]/Eclipse/configuration osgi.sharedConfiguration.area=/opt/eclipse/configuration osgi.configuration.cascaded=true

get cer and key out of pfx

openssl pkcs12 -in domain.pfx -clcerts -nokeys -out domain.cer openssl pkcs12 -in domain.pfx -nocerts -nodes -out domain.key

openssl/gpg encrypt/decrypt

$ echo Hi | openssl enc -aes-128-cbc -a -salt -pass pass:wtf U2FsdGVkX18qAdhqop1SffsewHue6EOPNKv9dXc/0rI= $ echo U2FsdGVkX18qAdhqop1SffsewHue6EOPNKv9dXc/0rI= | openssl enc -aes-128-cbc -a -d -salt -pass pass:wtf Hi

OR

generate a 2048-bit RSA key and store it in key.txt

openssl genrsa -out key.txt 2048

encrypt "hello world" using the RSA key in key.txt

echo "hello world" | openssl rsautl -inkey key.txt -encrypt >output.bin

decrypt the message and output to stdout

openssl rsautl -inkey key.txt -decrypt OR

gpg --encrypt -r [email protected] >tempfile gpg --decrypt

ssh port forward

Local Forwarding, with -g to share the local port with other hosts

(localpc)$ ssh -g -L 2222:localhost:22 [email protected]

ssh to localhost:2222 to connect lofyer.org

(localpc)$ ssh -lroot -p 2222 localhost

Remote Forwarding

(localpc)$ ssh -R -L 2222:localhost:22 [email protected]

On host lofyer.org, ssh to localhost:2222 to connect localpc.

(lofyer.org)$ ssh localhost -p 2222

Mixed, localpc:22->lofyer.org:2222

On lofyer.org we make a tunnel(2222) to localpc:22

(localpc)$ ssh -R 2222:localhost:22 lofyer.org

Make a local tunnel(3333) listening on all interface to localpc:2222

(lofyer.org)$ ssh -g -L 3333:localhost:2222 localhost

ssh to lofyer.org:3333 to connect localpc:22

(localpc) ssh lofyer.org -p 3333

Dynamic Forwarding, with -CN to compress data and close terminal input.

To start a SOCKS v4/v5 server on localhost:7777

Then you can use this as a proxy for your browser.

(localpc)$ ssh -CND 7777 [email protected]

Export private key of IIS that cannot be exported

  1. git clone https://github.com/iSECPartners/jailbreak-Windows.git
  2. Run mcc.msc, add Cert, save this MCC as a file(i.e. aaa).
  3. Run jailbreak64.exe mcc.msc aaa
  4. Then you can export the private key from the cert.

iptables route to local pc

iptables -t nat -A PREROUTING -p tcp --dport 5060:5081 -j DNAT --to-destination 192.168.122.222:5060:5081

Change vm root password

virt-sysprep --root-password password:123456 -a os.img

Ubuntu ap-hotspot PPA

sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install ap-hotspot

恢复IO ERROR文件

dd if=ioerror.file of=file bs=1M conv=noerror

QEMU LSI SCSI

qemu-kvm -m 1024 -drive file=centos58-RAW.img,index=0,if=scsi,format=raw -boot c -net nic -net user -nographic -vnc :1 -option-rom 8xx_64.rom,bootindex=1

lsi_bios 下载

yum remove nodeps

rpm -e --nodpes PKG yum install PKG

File too large

ulimit -n 102400 ulimit -f 102400

HTTP REFRESH

AUTORECONF

autoreconf -i

RPi x11vnc auto start and prevent screen from sleeping

pi@raspberrypi:~ $ cat .config/lxsession/LXDE-pi/autostart @lxpanel --profile LXDE-pi @pcmanfm --desktop --profile LXDE-pi @xscreensaver -no-splash x11vnc -auth /home/pi/.Xauthority -display :0 @xset s noblank @xset s off @xset -dpms

Crawl date yesterday

select id,title,content,url,date_format(str_to_date(date, '%d-%M-%Y'), '%Y%m%d') as date_new from posts where date_format(str_to_date(date, '%d-%M-%Y'), '%Y%m%d')=curdate()+0-1;

Simple PHP server

php -S 127.0.0.1:80 -t .

MacOS reinstall

Format U disk at first with 区分大小写,日志式

/Volume/Install\ OSX/Install\ OSX.app/Contents/Resources/createinstallmedia --volume /Volume/install --applicationpath /Volume/Install\ OSX/OSX.app

MySQL select items yesterday

select id,title,content,url,date_format(str_to_date(date, '%d-%M-%Y'), '%Y%m%d') as date_new from posts where date_format(str_to_date(date, '%d-%M-%Y'), '%Y%m%d')=curdate()+0-1;

MACOS all source

macOS 允许所有来源

sudo spctl --master-disable

wp-github all repos limit

120 public function get_repositories() { 121 $contents = $this->get_response('users/' . $this->username . '/repos?per_page=100');

修改iconic右侧widget超链接颜色

.widget-area .widget a { /*color: #757575;*/ text-decoration:none; font-size: 98%; }

CPU IPC usage 4-wide CPU

perf stat -a -- sleep 10

Linux, when adding a new disc

First find your host bus number

grep mpt /sys/class/scsi_host/host?/proc_name

Which should return a line like

/sys/class/scsi_host/host0/proc_name:mptspi

where host0 is the relevant field.

use this to rescan the bus with the following command

echo "- - -" > /sys/class/scsi_host/host0/scan

In the above command the the hyphens represent controller,channel,lun, so – – – indicates all controllers, all channels and all luns should be scanned.

ens/enp rename to eth0

Edit /etc/default/grub At the end of GRUB_CMDLINE_LINUX line append "net.ifnames=0 biosdevname=0" Save the file Type "grub2-mkconfig -o /boot/grub2/grub.cfg" Type "reboot"

Change mysql database or table encoding

SELECT neutron_ml2; ALTER DATABASE neutron_ml2 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE standardattributes CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Or if you're still on MySQL 5.5.2 or older which didn't support 4-byte UTF-8, use utf8 instead of utf8mb4:

ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_unicode_ci; ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Google Pixel 2 network "X" symbol

./adb shell "settings put global captive_portal_https_url https://captive.v2ex.co/generate_204";

title: "transfer IPv6 to IPv4 via socat" date: 2018-10-09 categories: - "linux-admin"


Suppose that you have an ipv6-only server A with ip [ipv6-A], and ipv4-ipv6 server B with ip (ipv4-B, [ipv6-B]).

If you wanna visit http://[ipv6-A]:80, but your ISV does not provide some ipv6 addresses. Now then, you'll make B be your "ipv6-ipv4 relay server" with following guide.

If TCP:

root@B:~# socat tcp4-listen:2222,fork tcp6:[2001:19f0:7001:5a34:5400:01ff:feb5:5bcd]:80

If UDP:

root@B:~# socat udp4-listen:2222,fork udp6:[2001:19f0:7001:5a34:5400:01ff:feb5:5bcd]:80

Now you can visit http://ipv4-B:2222 to access http://[ipv6-A]:80

回不去就往前走

昨天我试图追寻往日的痕迹,未果。 多年来有过很多次尝试,一个人自作多情的尝试,每次都期待奇迹发生。 如果我有一天真的远去,那我会给自己不回头的勇气。

V字仇杀队--经典台词

[audio mp3="http://blog.lofyer.org/wp-content/uploads/2012/10/Q播电影V字仇杀队.rmvb09-57-06.mp3"][/audio]

Remember, remember

The 5th of November 要记住,要记住,11月的5日

The gunpowder treason and plot 火药阴谋和叛乱

I know of no reason Why the gunpowder treason Should ever be forgot 我不知有何理由可以忘记火药阴谋

We are told to remember the idea and not the man 我们被教导要记住思想,不是人

Because a man can fail He can be caught, he can be killed and forgotten 因为人可能失败 他可能会被捕 他会被杀死、被遗忘

But 400 years later......an idea can still change the world 但400年后思想仍可改变世界

I have witnessed firsthand the power of ideas. 我亲眼目睹了思想的威力

I've seen people kill in the name of them... 我见过人们以它为名杀戮

...and die defending them 为维护它而送命

But you cannot kiss an idea......cannot touch it or hold it 但你不能杀死思想不能触到它或者捧着它

Ideas do not bleed. They do not feel pain. 思想不会流血,不会感到痛苦 思想不会死去

They do not love.他们不会爱

And it is not an idea that I miss 但我最思念的不是思想

It is a man A man that made me remember the 5th of November. 是一个男人,让我记住11月5日的男人

A man that I will never forget. 一个我永不会忘记的男人

That with devotion's visage and pious action we do sugar o'er the devil himself. 人们往往用至诚的外表和虔敬的 行动,掩饰一颗魔鬼般的

Who is but the form following the function of what......and what I am is a man in a mask. 我是谁?名字只是事物的代号而已 而我是一个戴面具的人

I'm merely remarking upon the paradox of asking a masked man who he is. 我不过是指出一个矛盾, 需要问一个戴面具的人是谁吗?

But on this most auspicious of nights......permit me then, in lieu of the more commonplace sobriquet......to suggest the characterof this dramatis persona. 这样一个美好的夜晚请允许我建议用更平常的语言来介绍一位戏剧性的角色

In view, a humble vaudevillian veteran......cast vicariously as both victim and villain by the vicissitudes of fate. This visage, no mere veneer of vanity... ...is a vestige of the vox populi, now vacant, vanished. However, this valorous visitation of a bygone vexation stands vivified... ...and has vowed to vanquish these venal and virulent vermin vanguarding vice... ...and vouchsafing the violently vicious and voracious violation of volition. The only verdict is vengeance, a vendetta... ...held as a votive not in vain, for the value and veracity of such... ...shall one day vindicate the vigilant and the virtuous. Verily, this vichyssoise of verbiage veers most verbose. So let me simply add that it's my very good honor to meet you......and you may call me V. 一位谦虚的杂耍老手代苦难命运的受害者和加害者演出这个面孔,不只是虚华的外表它是遗存的人民呼声 现已空洞消亡 不过,我这对过往烦恼的勇敢访问者 恢复了生命的活力 决心铲除那些引来 腐败堕落邪恶的毒虫 遏制他们狂暴的恶毒的 以及贪婪的对意志的破坏 对他们唯一的裁决就是复仇 正义和警惕的信念不会落空 它们的价值和真理终将实现 当然,我这段莫名其妙的杂碎汤 带来的是最冗长的自我介绍 所以简单地说,能遇见您 是我很大的荣幸,请叫我V

The DCD was Tchaikovsky's 1812 Overture.CD是柴科夫斯基的《1812序曲》

- Whereby important events of the past... -……历史的重要时刻……

...usually associated with someone's death or the end of some awful, bloody struggle... 通常是跟某人的死去或者 苦难挣扎的结束有关

...are celebrated with a nice holiday... ...I thought we could mark this November the 5th... 然后以一个美好的 假日来纪念 我想我们可以把这个11月5日作为

...a day that is, sadly, no longer remembered... 可悲地不再被记住的一天

...by taking some time out of our daily lives to sit down and have a little chat. 只需从我们的日常生活 里抽出一点时间

There are, of course, those who do not want us to speak. 坐下来谈一会话 当然有些人不希望我们发言

Let me think, let me think. Even now, orders are being shouted into telephones... ...and men with guns will soon be on their way. - It's Chancellor Sutler. - Damn it! 就在现在,电话里吼叫着命令 - 带枪的人们正在路上 - 是苏特勒元首 该死!

Why? Because while the truncheon may be used in lieu of conversation... 因为尽管沉默代替了谈话

...words will always retain their power. 言语却总是能保持它的力量

Words offer the means to meaning... 含义深刻的言语

...and, for those who will listen, the enunciation of truth. 它向那些愿意倾听的 人们发出真相的宣告

...there is something terribly wrong with this country, isn't there? 而真相是,这个国家 有些事情错得可怕

Cruelty and injustice, intolerance and oppression. 残暴、不公、歧视和镇压

And where once you had the freedom to object......to think and speak as you saw fit......you now have censors and surveillance coercing your conformity......and soliciting submission. 你曾经有过反对的自由可以说出你想说的话。你现在有了传感器和监视系统强迫你随大流

How did this happen? Who's to blame? 这是怎么发生的? 这要怪谁?

Certainly there are those who are more responsible than others. 有谁比大家更需要负上责任?

And they will be held accountable. 他们会遭到惩罚的

But again, truth be told, if you're looking for the guilty... 但是,真相讲完了 你要找罪人的话

...you need only look into a mirror.你只需要照照镜子

I know why you did it. I know you were afraid. 我知道你为什么这样做 我知道你害怕

Who wouldn't be? War, terror, disease. 战争、KB事件、疾病

There were a myriad of problems which conspired......to corrupt your reasonand rob you of your common sense. 它们就像杂草种子 用来摧毁你的理智

Fear got the best of you. 恐惧控制了你

And in your panic, you turned to the now High Chancellor Adam Sutler. 你在慌乱中投向了元首先生 ——亚当·苏特勒

He promised you order, he promised you peace......and all he demanded in return was your silent, obedient consent. 他向你许诺秩序 他向你许诺和平 所要的回报不过 是你的服从和沉默

- Last night, I sought to end that silence. 昨晚我决定结束这种沉默

Last night, I destroyed the Old Bailey... 昨晚我摧毁了老巴里街

...to remind this country of what it has forgotten. 以提醒这个国家忘记的事情

More than 400 years ago, a great citizen wished to imbed the 5th of November......forever in our memory. 将近400年前 一位伟大的公民打算将11月5日 永远刻入我们的记忆中

His hope was to remind the world that fairness, justice and freedom......are more than words. 以此提醒世界公平、正义和自由 不只是口头说说

They are perspectives. So if you've seen nothing......if the crimes of this government remain unknown to you......then I would suggest that you allow the 5th of November to pass unmarked. 它们是人的权利所以如果你什么也没看见 对这个go-vern-ment犯下 的罪行一无所知 我建议你让这个 11月5日平淡地过去

But if you see what I see......if you feel as I feel, and if you would seek as I seek......then I ask you to stand beside me,one year from tonight......outside the gates of Parliament. 可是如果你看见我所见的如果你有跟我一样的感受如果你像我一样去寻觅 我请你在一年以后的今晚站到议会大厦的外面 团结一致,我们将使11月5日 永远不会被忘怀

I dare do all that may become a man. Who dares more is none. 只要是男子汉做的事,我都敢做 没有人比我有更大的胆量 Macbeth.《麦克白》

But I'd only told them the truth. Was that so selfish? 我只是告诉他们真相 那是否太自私?

Our integrity sells for so little, but it is all we really have. 我们的尊严是那么地小 但那是我们仅有的

It is the very last inch of us. 那是我们最后一寸领地

But within that inch......we are free. 但在那一寸领地里,我们是自由的

Beneath this mask there is more than flesh. 这张面具之下不止是肉体

Beneath this mask there is an idea, Mr. Creedy. 这张面具之下是一种 思想,克里蒂先生

And ideas are bulletproof. 思想是杀不死的

回家了

繁琐的事儿安排给他们了,在这里贴一张寝室老周写的文章。

不说“再见”507

哈尔滨的夏天十分凉爽,这样的夏天对于我这个即将离开的南方人来说真是不可多得的奢侈。正是在这美好的时光里,离别的愁绪却塞满了整个寝室,整个校园! 去年的这个时候,也是这样的天气,也是这样的场景,各色领边的学士服穿梭于校园里的各个角落。那时的我,正坐在二号楼的教室里上着单片机课,老师在讲台上讲得唾沫横飞,而我和我的小基友们正打望着窗外黑丝学姐们,穿着学士服摆着各种各样的pose用相机定格住那一瞬间。那时的我对今天有些期待,但真没想到这个场景来得这么滴快,让我有些措手不及! 我本是多愁善感的,但在我的潜意识里我不认为我是一个会为离别而感到难舍难分的人。我时常想,没事我们有手机,我们有校内,我们有QQ。但就在老大上出租车关上车门那一瞬间;老二放开手,微笑的说:洪锋,我走了,到海南了一定要找我;老三给我打电话告诉我:走了,各种卡都在你床上,你到时帮我退了。我的心猛然下沉了,走了走了真的走了。我的同学、我的室友、日日夜夜相伴的小基友们、成天开黑虐菜的DOTA队友们。 昨日欢声笑语的507就剩下四人了,再也听不见老大的那句:含住它了;老二再也不能教我们海南话的里的流氓语了;再也没有老三的经典外卖搭配,酱炒蛋两盒饭加一瓶可乐了;再也没有小六起床的高呼:小客搬电脑过来DO啊。 缘分让我们这天南海北的八人相聚507;那份深深的情让我们在507欢度三年,虽然有苦有甜,有喜又忧;我相信就算我们散落于天涯海角,那份浓浓的思念也会把我们的心紧连一起! 兄弟们,一路走好!咱们不说“再见”!因为那太假!只要我们想见,24小时内绝对能相见! 507经典语录: 周黎明(老大):含住它!(一语道破了百千上万同胞们的心声) 吴挺标(老二):蓝路蓝乎乎一般!(海南语最直白的表白) 将迪(老三)  :FUCK SHIT 日 干 操!(多么霸气的爷们当年这句话唬住了多少位DOTA界的大神) 宗学龙(老四):此人名言太多,为咱们解析了三四班全部女生,无人不知,无所不晓,俗称江湖百晓生! 李天路(小六):小客搬电脑DO啊!(每天早上唤醒正在春梦的DOTA基友们) 宋晓强(小七):我得减肥(≧▽≦)/啦啦啦;操你二大爷加三姥姥四姑滴!(俗不可耐啊) 高兴龙(小八):不在乎天长地久;只在乎今晚一宿!(这句话就不说什么了,大家都明白滴)

还有小强的补充:替你补充下老五的资料,老五,又名周神,以“没有拆不散的夫妻,只有不努力的小三”为座右铭,主打歌是什么我叫小莫(此处省略好多字),脾气好,是大家共同的小基友。

奶奶个熊最后连我的姓都tm打错,吃屎长大的吧你。。

2012年6月8日

2012年6月8日

end of the tour

marriage, parsley and flowers