sudo apt-get install -y openjdk-8-jdk openjdk-8-jre git build-essential libncurses5-dev:i386 libx11-dev:i386 libreadline6-dev:i386 g++-multilib tofrodos python-markdown libxml2-utils xsltproc dpkg-dev libesd0-dev git-core gnupg flex bison gperf build-essential zip curl gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev ccache libxml2-utils xsltproc unzip m4 python-pip smbclient libgl1-mesa-dev libsdl1.2-dev zlib1g-dev:i386 lib32z-dev zlib1g-dev lib32z1 lib32ncurses5 lib32stdc++6 libbz2-1.0:i386 libssl-dev
2019年4月3日 #
$ simg2img system.img system.ext4.img
$ mkdir system
$ sudo mount -t ext4 system.ext4.img system
2017年5月31日 #
×#×#4636#×#× 進手機信息,“切換DNS檢查”修改為 allowed
2016年12月31日 #
Android.mk修改
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_STATIC_JAVA_AAR_LIBRARIES := leakcanary-android-aar leakcanary-watcher-aar leakcanary-analyzer-aar
LOCAL_STATIC_JAVA_LIBRARIES := haha
LOCAL_MODULE_TAGS := optional
LOCAL_AAPT_FLAGS := \
--auto-add-overlay \
--extra-packages com.squareup.leakcanary
LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
LOCAL_SRC_FILES := \
$(call all-java-files-under, src)
LOCAL_PACKAGE_NAME := XXXXX
include $(BUILD_PACKAGE)
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES :=
haha:libs/haha-2.0.3.jar \
leakcanary-android-aar:libs/leakcanary-android-1.5.aar \
leakcanary-watcher-aar:libs/leakcanary-watcher-1.5.aar \
leakcanary-analyzer-aar:libs/leakcanary-analyzer-1.5.aar
include $(BUILD_MULTI_PREBUILT)
include $(call all-makefiles-under,$(LOCAL_PATH))
include $(CLEAR_VARS)
LOCAL_STATIC_JAVA_AAR_LIBRARIES := leakcanary-android-aar leakcanary-watcher-aar leakcanary-analyzer-aar
LOCAL_STATIC_JAVA_LIBRARIES := haha
LOCAL_MODULE_TAGS := optional
LOCAL_AAPT_FLAGS := \
--auto-add-overlay \
--extra-packages com.squareup.leakcanary
LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
LOCAL_SRC_FILES := \
$(call all-java-files-under, src)
LOCAL_PACKAGE_NAME := XXXXX
include $(BUILD_PACKAGE)
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES :=
haha:libs/haha-2.0.3.jar \
leakcanary-android-aar:libs/leakcanary-android-1.5.aar \
leakcanary-watcher-aar:libs/leakcanary-watcher-1.5.aar \
leakcanary-analyzer-aar:libs/leakcanary-analyzer-1.5.aar
include $(BUILD_MULTI_PREBUILT)
include $(call all-makefiles-under,$(LOCAL_PATH))
2016年7月25日 #
1.增加數據源
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
修改/etc/apt/sources.list.d/gitlab-ce.list 加入 deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/debian jessie mainsudo apt-get update
2.開始安裝
2.開始安裝
# 安裝依賴包
sudo apt-get install gcc-4.9 g++-4.9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9
sudo apt-get install curl openssh-server ca-certificates postfixsudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9
# 安裝 GitLab 社區版
apt-get install gitlab-ce
# 初始化,初始化完自動啟動 GitLab
sudo gitlab-ctl reconfigure
3.修改配置
3.修改配置
每次修改/etc/gitlab/gitlab.rb,都要運行以下命令,讓配置生效
sudo gitlab-ctl reconfigure
2016年6月22日 #
1.安裝相關軟件
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z1-dev libgl1-mesa-dev gcc-multilib g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc libsdl-dev libesd0-dev libncurses5-dev lib32ncurses5 lib32stdc++6 rapidsvn nautilus-open-terminal libswitch-perl subversion openjdk-7-jdk lib32z1 libusb-dev libpcap-dev lib32bz2-1.0 libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9
2.設置環境變量,修改.bashrc
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z1-dev libgl1-mesa-dev gcc-multilib g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc libsdl-dev libesd0-dev libncurses5-dev lib32ncurses5 lib32stdc++6 rapidsvn nautilus-open-terminal libswitch-perl subversion openjdk-7-jdk lib32z1 libusb-dev libpcap-dev lib32bz2-1.0 libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9
2.設置環境變量,修改.bashrc
export ANDROID_SDK_HOME=/home/xxx/android_env/adt-bundle-linux-x86_64/sdk
export ANDROID_HOME=/home/xxx/android_env/adt-bundle-linux-x86_64/sdk
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export JRE_HOME=$JAVA_HOME/jre
export PATH=.:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ANDROID_SDK_HOME/tools:$ANDROID_SDK_HOME/platform-tools:$GRADLE_HOME/bin:$PATH:
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib
export USE_CCACHE=1
export MAVEN_HOME=/home/xxx/android_env/apache-maven-3.3.9/
export GRADLE_HOME=/home/xxx/android_env/gradle-2.10
export GRADLE_USER_HOME=/home/xxx/android_env/gradle-2.10
export ANT_HOME=/home/xxx/android_env/apache-ant-1.9.7
export PATH=$GRADLE_HOME/bin:$MAVEN_HOME/bin:$ANT_HOME/bin:$PATH
export GOROOT=/root/go
export GOPATH=/root/goworkspace
export PATH="/root/go/bin:/root/goworkspace/bin:"$PATH
2016年6月6日 #
adb mtp設置
1)sudo apt-get install libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9
4)sudo gedit /etc/udev/rules.d/51-android.rules
6)sudo reboot
1)sudo apt-get install libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9
2)sudo gedit /etc/fuse.conf
#user_allow_other 修改為 user_allow_other
3)sudo gedit /lib/udev/rules.d/69-mtp.rules
ATTR{idVendor}=="0e8d", ATTR{idProduct}=="201d", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
ATTR{idVendor}=="271d", ATTR{idProduct}=="2017", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
ATTR{idVendor}=="271d", ATTR{idProduct}=="2008", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
ATTR{idVendor}=="271d", ATTR{idProduct}=="0c02", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
ATTR{idVendor}=="271d", ATTR{idProduct}=="bf3a", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
ATTR{idVendor}=="271d", ATTR{idProduct}=="bf3a", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
4)sudo gedit /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="271d", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTR{idVendor}=="1782", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", MODE="0666", GROUP="plugdev"
5)sudo service udev restart
6)sudo reboot
flashtool設置
1)sudo apt-get install libusb-dev
2)sudo ./flash_tool.sh
3)sudo gedit /etc/udev/rules.d/20-mm-blacklist-mtk.rules
ATTRS{idVendor}=="0e8d", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="271d", ENV{ID_MM_DEVICE_IGNORE}="1"
4)service udev restart
2016年5月31日 #
有兩種解決方法:
1、設置Action和packageName:
參考代碼如下:
2、將隱式啟動轉換為顯示啟動:
1、設置Action和packageName:
參考代碼如下:
Intent mIntent = new Intent();
mIntent.setAction("XXX.XXX.XXX");//你定義的service的action
mIntent.setPackage(getPackageName());//這里你需要設置你應用的包名
context.startService(mIntent);
此方式是google官方推薦使用的解決方法。mIntent.setAction("XXX.XXX.XXX");//你定義的service的action
mIntent.setPackage(getPackageName());//這里你需要設置你應用的包名
context.startService(mIntent);
2、將隱式啟動轉換為顯示啟動:
public static Intent getExplicitIntent(Context context, Intent implicitIntent) {
PackageManager pm = context.getPackageManager();
List<ResolveInfo> resolveInfo = pm.queryIntentServices(implicitIntent, 0);
if (resolveInfo == null || resolveInfo.size() != 1) {
return null;
}
ResolveInfo serviceInfo = resolveInfo.get(0);
String packageName = serviceInfo.serviceInfo.packageName;
String className = serviceInfo.serviceInfo.name;
ComponentName component = new ComponentName(packageName, className);
Intent explicitIntent = new Intent(implicitIntent);
explicitIntent.setComponent(component);
return explicitIntent;
}
調用方式如下:PackageManager pm = context.getPackageManager();
List<ResolveInfo> resolveInfo = pm.queryIntentServices(implicitIntent, 0);
if (resolveInfo == null || resolveInfo.size() != 1) {
return null;
}
ResolveInfo serviceInfo = resolveInfo.get(0);
String packageName = serviceInfo.serviceInfo.packageName;
String className = serviceInfo.serviceInfo.name;
ComponentName component = new ComponentName(packageName, className);
Intent explicitIntent = new Intent(implicitIntent);
explicitIntent.setComponent(component);
return explicitIntent;
}
Intent mIntent = new Intent();
mIntent.setAction("XXX.XXX.XXX");
Intent eintent = new Intent(getExplicitIntent(mContext,mIntent));
context.startService(eintent);
mIntent.setAction("XXX.XXX.XXX");
Intent eintent = new Intent(getExplicitIntent(mContext,mIntent));
context.startService(eintent);
2016年5月24日 #
服務器端安裝
1. 切換到dash
sudo dpkg-reconfigure dash 選no
2.配置iptables
#iptables -I INPUT -p tcp --dport 22 -j ACCEPT
#iptables -I OUTPUT -p tcp --sport 22 -j ACCEPT
3. 安裝
rm -f install_fs.sh
wget http://fs.d1sm.net/finalspeed/install_fs.sh
chmod +x install_fs.sh
./install_fs.sh 2>&1 | tee install.log
4.保持iptables
將防火墻規則保存到/etc/iptables.up.rules文件中:
iptables-save > /etc/iptables.up.rules
然后修改腳本/etc/network/interfaces,在末尾添加一行,在網絡啟動時應用防火墻規則:
pre-up iptables-restore < /etc/iptables.up.rules
5.卸載
sh /fs/stop.sh ; rm -rf /fs
6.啟動
sh /fs/start.sh; tail -f /fs/server.log
重復運行啟動會出現以下端口綁定錯誤,請先停止或直接重啟服務.

7.停止
sh /fs/stop.sh
8.重新啟動
sh /fs/restart.sh; tail -f /fs/server.log
9.設置開機啟動
chmod +x /etc/rc.local
vi /etc/rc.local
加入
sh /fs/start.sh
10.每天晚上3點自動重啟
crontab -e
加入
0 3 * * * sh /fs/restart.sh
客戶端
1.安裝libpcap,
sudo apt-get -y install libpcap-dev
2.安裝java運行環境
3.下載
http://fs.d1sm.net/finalspeed/finalspeed_client1.2.zip
4.運行
sudo java -jar finalspeed_client.jar
前面加sudo,因為必須以root權限運行,如果沒有root權限,會無法啟用tcp協議.
1. 切換到dash
sudo dpkg-reconfigure dash 選no
2.配置iptables
#iptables -I INPUT -p tcp --dport 22 -j ACCEPT
#iptables -I OUTPUT -p tcp --sport 22 -j ACCEPT
3. 安裝
rm -f install_fs.sh
wget http://fs.d1sm.net/finalspeed/install_fs.sh
chmod +x install_fs.sh
./install_fs.sh 2>&1 | tee install.log
4.保持iptables
將防火墻規則保存到/etc/iptables.up.rules文件中:
iptables-save > /etc/iptables.up.rules
然后修改腳本/etc/network/interfaces,在末尾添加一行,在網絡啟動時應用防火墻規則:
pre-up iptables-restore < /etc/iptables.up.rules
5.卸載
sh /fs/stop.sh ; rm -rf /fs
6.啟動
sh /fs/start.sh; tail -f /fs/server.log
重復運行啟動會出現以下端口綁定錯誤,請先停止或直接重啟服務.

7.停止
sh /fs/stop.sh
8.重新啟動
sh /fs/restart.sh; tail -f /fs/server.log
9.設置開機啟動
chmod +x /etc/rc.local
vi /etc/rc.local
加入
sh /fs/start.sh
10.每天晚上3點自動重啟
crontab -e
加入
0 3 * * * sh /fs/restart.sh
客戶端
1.安裝libpcap,
sudo apt-get -y install libpcap-dev
2.安裝java運行環境
3.下載
http://fs.d1sm.net/finalspeed/finalspeed_client1.2.zip
4.運行
sudo java -jar finalspeed_client.jar
前面加sudo,因為必須以root權限運行,如果沒有root權限,會無法啟用tcp協議.
2016年5月1日 #
1. pptpd vpn
2. l2tp vpn
ipsec verify (查看 IPSec 檢查結果)
/etc/init.d/ipsec start|stop|restart|status (CentOS6 下使用)
/etc/init.d/xl2tpd start|stop|restart|status (CentOS6 下使用)
systemctl start|stop|restart|status ipsec (CentOS7 下使用)
systemctl start|stop|restart|status xl2tpd (CentOS7 下使用)
service ipsec start|stop|restart|status (Debian/Ubuntu 下使用)
service xl2tpd start|stop|restart|status (Debian/Ubuntu 下使用)
2. shadowsocks 安裝
#1.從github上下載shell腳本
root@wys:~# cd /tmp
root@wys:/tmp# wget --no-check-certificate https://raw.github.com/viljoviitanen/setup-simple-pptp-vpn/master/setup.sh
#2.執行
root@wys:/tmp# sudo sh setup.sh
#3.設置密碼
root@wys:/tmp# vi /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client server secret IP addresses
username pptpd password *
#4.重啟vpn服務
root@wys:/tmp# service pptpd restart
* Restarting PoPToP Point to Point Tunneling Server pptpd
#5.到了第4步應該能連接上VPN了,如果無法訪問外網,執行下面的命令添加NAT規則
root@wys:/tmp# iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source 服務器IP地址
#6.重啟服務
root@wys:/tmp# service pptpd restart
* Restarting PoPToP Point to Point Tunneling Server pptpd [ OK ]
root@wys:/tmp#
root@wys:~# cd /tmp
root@wys:/tmp# wget --no-check-certificate https://raw.github.com/viljoviitanen/setup-simple-pptp-vpn/master/setup.sh
#2.執行
root@wys:/tmp# sudo sh setup.sh
#3.設置密碼
root@wys:/tmp# vi /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client server secret IP addresses
username pptpd password *
#4.重啟vpn服務
root@wys:/tmp# service pptpd restart
* Restarting PoPToP Point to Point Tunneling Server pptpd
#5.到了第4步應該能連接上VPN了,如果無法訪問外網,執行下面的命令添加NAT規則
root@wys:/tmp# iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source 服務器IP地址
#6.重啟服務
root@wys:/tmp# service pptpd restart
* Restarting PoPToP Point to Point Tunneling Server pptpd [ OK ]
root@wys:/tmp#
2. l2tp vpn
wget --no-check-certificate https://raw.githubusercontent.com/teddysun/across/master/l2tp.sh
chmod +x l2tp.sh
./l2tp.sh
ipsec status (查看 IPSec 運行狀態)chmod +x l2tp.sh
./l2tp.sh
ipsec verify (查看 IPSec 檢查結果)
/etc/init.d/ipsec start|stop|restart|status (CentOS6 下使用)
/etc/init.d/xl2tpd start|stop|restart|status (CentOS6 下使用)
systemctl start|stop|restart|status ipsec (CentOS7 下使用)
systemctl start|stop|restart|status xl2tpd (CentOS7 下使用)
service ipsec start|stop|restart|status (Debian/Ubuntu 下使用)
service xl2tpd start|stop|restart|status (Debian/Ubuntu 下使用)
2. shadowsocks 安裝
wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks.sh
chmod +x shadowsocks.sh
./shadowsocks.sh 2>&1 | tee shadowsocks.log
chmod +x shadowsocks.sh
./shadowsocks.sh 2>&1 | tee shadowsocks.log