直接設定 vim /etc/fstab 寫入下面那行
tmpfs /tmp tmpfs size=100m,mode=1777 0 0
# 設讓 RAM 掛 100Mb 在 /tmp

roder0419 發表在 痞客邦 留言(0) 人氣()

symfony產生靜態頁的方式可看下面連結:

http://trac.symfony-project.org/wiki/HowtoServeStaticContent

Symfony 1.4 可使用 sfSimplePagePlugin 模組管理靜態頁

roder0419 發表在 痞客邦 留言(0) 人氣()

之前用過Cacti,但若硬體不同或是OS不同,甚至因為安裝的軟體版本不同,有時SNMP吐出來的資訊便有所差異,要去找相對應的plug-in
造成監控資訊多少有誤差,大概只有網路流量比較正確一點
網路上看了Zabbix的相關資訊,打算用它來替代Cacti&Nagios來做監控

roder0419 發表在 痞客邦 留言(0) 人氣()

symfony [選項] 任務名 [參數]
選項:
–dry-run -n Do a dry run without executing actions.
–help -H 顯示幫助信息
–quiet -q Do not log messages to standard output.
–trace -t Turn on invoke/execute tracing, enable full backtrace.
–version -V 顯示程序版本
可用的任務:
help 顯示任務的幫助信息 (簡寫h)
list 列出任務
app:routes 顯示一個應用程序當前的路由信息
cache:clear 清空緩存(簡寫cc, clear-cache)
configure:author 設置項目作者
configure:database 設置數据庫 DSN
generate:app 初始化一個應用程序 (簡寫init-app)
generate:module 初始化一個模塊 (簡寫init-module)
generate:project 初始化一個項目 (簡寫init-proj)
generate:task Creates a skeleton class for a new task
i18n:extract Extracts i18n strings from php files
i18n:find Finds non “i18n ready” strings in an application
log:clear 清空日志 (log-purge)
log:rotate Rotates an application log files (log-rotate)
plugin:add-channel 添加一個新的PEAR頻道
plugin:install 安裝一個插件 (簡寫plugin-install)
plugin:list 列出已安裝的插件 (簡寫plugin-list)
plugin:publish-assets 將全部插件的web目錄發布到項目的web目錄下
plugin:uninstall 卸載一個插件 (plugin-uninstall)
plugin:upgrade 升級一個插件(plugin-upgrade)
project:clear-controllers Clears all non production environment controllers (clear-controllers)
project:deploy 發布一個項目到另外一台服務器 (sync)
project:disable 在指定環境下屏蔽一個應用程序 (disable)
project:enable 在指定環境下打開一個應用程序 (disable)
project:freeze 凍結 symfony 庫文件 (簡寫freeze)
project:permissions 修改symfony項目目錄的權限 (permissions, fix-perms)
project:unfreeze 解凍 symfony 庫文件 (簡寫unfreeze)
project:upgrade1.1 將一個symfony項目升級到1.1
project:upgrade1.2 將一個symonfy項目從1.1升級到1.2
doctrine:build-all 生成model,form,生成sql語句並創建數据庫 (doctrine-build-all)
doctrine:build-all-load 生成model,form,生成sql語句,創建數据庫並插入初始數据 (doctrine-build-all-load)
doctrine:build-filters 根据當前的模型創建過濾器
doctrine:build-forms 根据當前的模型創建表單
doctrine:build-model 根据數据庫結构創建模型 (doctrine-build-model)
doctrine:build-schema 根据數据庫結构創建schema (doctrine-build-schema)
doctrine:build-sql 根据當前模型創建一個SQL (簡寫doctrine-build-sql)
doctrine:data-dump 導出數据到 fixtures directory (doctrine-dump-data)
doctrine:data-load 從fixtures directory載入數据 (doctrine-load-data)
doctrine:generate-admin 自動生成一個module的后台
doctrine:generate-module Generates a doctrine module (doctrine-generate-crud, doctrine:generate-crud)
doctrine:generate-module-for-route Generates a doctrine module for a route definition
doctrine:graphviz Generates a graphviz chart of current object model
doctrine:init-admin 初始化一個module后台(doctrine-init-admin)
doctrine:insert-sql Inserts SQL for current model (doctrine-insert-sql)
doctrine:schema-to-xml 根据schema.yml生成schema.xml (doctrine-convert-yml-schema)
doctrine:schema-to-yml 根据schema.xml生成schema.yml (doctrine-convert-xml-schema)
test:all 運行全部測試 (簡寫test-all)
test:coverage Outputs test code coverage
test:functional 運行全部功能測試 (簡寫test-functional)
test:unit 運行單元測試 (test-unit)

roder0419 發表在 痞客邦 留言(0) 人氣()

如果一個memory engine Table名稱為 test,當刪除一些資料後想釋放test table所佔用的記憶體可用下面指令
ALTER TABLE test ENGINE=MEMORY

roder0419 發表在 痞客邦 留言(0) 人氣()

用此來編譯PHP程式加快執行速度

 

先更新APT

apt-get update

 

Packages installation

Using sudo or as root user:

As outlined in the 11.04 instructions
sudo apt-get install git-core cmake g++ libboost-dev libmysqlclient-dev libxml2-dev libmcrypt-dev libicu-dev openssl build-essential binutils-dev libcap-dev libgd2-xpm-dev zlib1g-dev libtbb-dev libonig-dev libpcre3-dev autoconf libtool libcurl4-openssl-dev libboost-system-dev libboost-program-options-dev libboost-filesystem-dev wget memcached libreadline-dev libncurses-dev libmemcached-dev libicu-dev libbz2-dev libc-client2007e-dev php5-mcrypt php5-imagick libgoogle-perftools-dev libjemalloc-dev

Required on 11.10
sudo apt-get install libcloog-ppl0

 

Getting HipHop source-code

cd /home/roder
git clone git://github.com/facebook/hiphop-php.git
cd hiphop-php
export CMAKE_PREFIX_PATH=`/bin/pwd`/../
export HPHP_HOME=`/bin/pwd`
export HPHP_LIB=`/bin/pwd`/bin
cd ..

 

Building third-party libraries

libevent

wget http://www.monkey.org/~provos/libevent-1.4.14b-stable.tar.gz
tar -xzvf libevent-1.4.14b-stable.tar.gz
cd libevent-1.4.14b-stable
cp ../hiphop-php/src/third_party/libevent-1.4.14.fb-changes.diff .
patch -p1 < libevent-1.4.14.fb-changes.diff
./configure --prefix=$CMAKE_PREFIX_PATH
make
sudo make install
cd ..

 

libCurl

Make sure that your system time is correct, otherwise ./configure will fail.

wget http://curl.haxx.se/download/curl-7.21.2.tar.gz
tar -xvzf curl-7.21.2.tar.gz
cd curl-7.21.2
cp ../hiphop-php/src/third_party/libcurl.fb-changes.diff .
patch -p1 < libcurl.fb-changes.diff
./configure --prefix=$CMAKE_PREFIX_PATH

As per: https://github.com/bagder/curl/commit/26b487a5d6ed9da5bc8e4a134a88d3125884b852

  • Edit lib/ssluse.c

As per: https://github.com/facebook/hiphop-php/issues/319#issuecomment-1445537

  • Edit runtime/ext/extension.cpp

make
sudo make install
cd ..

libmemcached

wget http://launchpad.net/libmemcached/1.0/0.49/+download/libmemcached-0.49.tar.gz
tar -xzvf libmemcached-0.49.tar.gz
cd libmemcached-0.49
./configure --prefix=$CMAKE_PREFIX_PATH
make
sudo make install
cd ..

Building HipHop

cd hiphop-php
git submodule init
git submodule update
cmake .
make

roder0419 發表在 痞客邦 留言(0) 人氣()

一般的解決方法為

1. # 列出所有的 mysql 執行緒
2. ps -aux|grep mysql
3.
4. # 刪掉看見的 pid
5. kill [pid]
6.
7. # 再重啟 MySQL
8. /etc/init.d/mysql

自己的解決方法

1. 不過上面的方法不行,最後我就得自找一下出錯的問題
2. 通過使用 mysqld_safe& 這指令,看見有 error msg 輸出到檔案.
3. 打開檔案查看,發現記錄很多,最後決定刪除,再讓他生成之際..
4. 奇積出現.再執行 mysqld_safe& 時,發現錯誤沒再輸出.而是寫著重啟成功?
5. 打開網頁查看,發現真的可以了 ..
6. 最後再看 HDD 位置,發現原來被 Data 備份寫滿了,變成不能再寫入新檔案 = =

roder0419 發表在 痞客邦 留言(0) 人氣()

這個是在/etc/skel的目錄裡面所建立的子目錄,之後都匯出現在新建帳號的/home/XXX下面
例如:
sudo mkdir /etc/skel/tmp
sudo useradd test

之後在/home/test下面就會出現一個tmp目錄

roder0419 發表在 痞客邦 留言(0) 人氣()

網路上看這篇文章http://www.ichiayi.com/wiki/tech/svnmantis
他的PERL程式我在整合上都出現問題,所以還是參考這裡的文章
http://alt-tag.com/blog/archives/2006/11/integrating-mantis-and-subversion/
加上自己的修改而成,終於順利整合成功
做法如下:


1.先裝SVN套件
apt-get install subversion

2. 安裝apache svn module 以取得svn相關組件
apt-get install apache2-utils apache2.2-common libapache2-svn

3.安裝mantis
到這裡下載最新的穩定版 http://www.mantisbt.org/download.php
我裝的是1.1.4

4.建立svn repository
sudo mkdir /home/svn
sudo svnadmin create /home/svn/mantis

5.設定dav_svn.conf
sudo vim /etc/apache2/mods-available/dav_svn.conf


DAV svn
SVNParentPath /home/svn
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
AuthzSVNAccessFile /etc/apache2/dav_svn.authz
Require valid-user


6.編輯dav_svn.authz
[mantis:/] #<---mantis是我當初svnadmin create的名稱
* =
test= rw #<--test是帳號他擁有讀寫權

7.產生dav_svn.passwd的密碼
sudo htpasswd -c /etc/apache2/dav_svn.passwd test
若要增加第二位以上的使用者(不要加-c)
sudo htpasswd /etc/apache2/dav_svn.passwd test

8.修改mantis下的config_inc.php,加入以下敘述
#Source Control
$g_source_control_account = 'svn'; #<--這是在mantis建立的帳號
$g_source_control_regexp = '/\b(?:bug|issue|mantis)\s*[#]{0,1}(\d+)\b/i';
$g_source_control_set_status_to = RESOLVED;
$g_source_control_set_resolution_to = FIXED;
$g_source_control_fixed_regexp = '/\bfix(?:ed|es)\s+(?:bug|issue|mantis)?\s*[#]{0,1}(\d+)\b/i';

9.在/home/www/mantis下新增svn2mantis.sh (這是指mantis的網頁的路徑下)
#!/bin/sh

REPOS="$1"
REV="$2"
#export LANG=zh_TW.UTF-8這是為了相容中文
auth="$(export LANG=zh_TW.UTF-8;/usr/bin/svnlook author -r $REV $REPOS)"
dt="$(export LANG=zh_TW.UTF-8;/usr/bin/svnlook date -r $REV $REPOS)"
log="$(export LANG=zh_TW.UTF-8;/usr/bin/svnlook log -r $REV $REPOS)"
changed="$(export LANG=zh_TW.UTF-8;/usr/bin/svnlook changed -r $REV $REPOS)"
border='========================'
n=$'\n'

echo "Changeset [${REV}] by $auth, $dt$n$log$n$border$changed$border" | /usr/bin/php -q /home/www/mantis/scripts/checkin.php

10.新增/home/svn/mantis/hook/post-commit
#!/bin/sh

REPOS="$1"
REV="$2"

/home/www/mantis/svn2mantis.sh "$REPOS" "$REV"

11.建立一個PROJECT目錄
sudo mkdir /home/svn/mantis/files

12.import這個PROJRCT到svn
sudo svn import /home/svn/mantis/files file:///home/svn/mantis

以上設定完成,重新啟動apache2
sudo /etc/init.d/apache2 restart

這個時候用瀏覽器開啟 http://XXX/svn/mantis 輸入剛剛建立的svn帳號和密碼就可以看到最新的更新文件

以下介紹在client端用TortoiseSVN commit文件時的設定

1.先在你要做SVN的目錄按下滑鼠右鍵,選SVN checkout,將檔案庫的路徑用http://XXX/svn/mantis
之後會出現要你輸入SVN帳密

2.之後在TortoiseSVN裡設置一下項目的屬性,右鍵點擊目錄,屬性,在subversion一欄裡,加入這幾個屬性

bugtraq:label = issue
bugtraq:url = http://%3cmantisserver%3e/mantis/view.php?id=%BUGID%
bugtraq:message = issue %BUGID%
bugtraq:warnifnoissue = true

3.這時候使用者用TortoiseSVN commit時會要輸入issue編號,這是在mantis中的BUG編號
輸入完畢送出後,到http://XXX/mantis 網頁可以看到剛剛輸入的bug note

roder0419 發表在 痞客邦 留言(0) 人氣()

#每 30 分鐘同步一次
*/30 * * * * (/usr/sbin/ntpdate -s time.stdtime.gov.tw; /usr/sbin/hwclock -w) > /dev/null 2>&1

#/usr/sbin/hwclock -w 把目前的時間寫到 BIOS 裡
#"> /dev/null" 表示不留下任何記錄
#"2>&1" 表示若有錯誤,就照標準錯誤輸出

roder0419 發表在 痞客邦 留言(0) 人氣()

這個問題在我公司剛好有同事遇到,上網查資料有人說抓SIS191最新驅動程式並更新最新BIOS
之後拔掉電源按下POWER BUTTON幾秒鐘放電,重新開機就可以抓到IP上網了
的確這樣做是可以上網了

但是,這仍是治標,因為當我發現可以上網後把電腦關機,並將另外給同事暫用的螃蟹網卡拔掉
之後在重開機,那個SIS191晶片又抓不到IP了@@

最後的結論是用螃蟹卡插上,不要用內建的網卡才能一勞永逸
應是這批SIS191晶片有瑕疵

roder0419 發表在 痞客邦 留言(0) 人氣()