顯示具有 linux 標籤的文章。 顯示所有文章
顯示具有 linux 標籤的文章。 顯示所有文章

星期三, 8月 08, 2012

用git 當svn 的local branch

話說,
用git 當svn 的local branch有點大材小用,
不過原因如下:

一、這樣子就不需要把code branch出去改,
修改的地方用git commit(可以一直commit到git),
等到function work時,
再用svn commit所有的修改,
之後就可以移掉git了

二、真正的原因是有些server我沒有git-svn的權限,
沒辦法用git-svn直接clone svn的code,
不然用git-svn應該才是正解


flow:
1. cd /path_to_work/    #進入工作目錄
2. git init                #init git
3. vim .gitignore   #設 .gitignore
例:
.*

4. git add -A         # add all files exclude .gitignore
5. git commit        # commit files to git
...
6. svn ci                # commit files to svn
7. rm -rf .git/         # remove git




延伸閱讀:
git

星期四, 12月 15, 2011

debian on colinux

latest colinux:
http://sourceforge.net/projects/colinux/files/latest/download?source=files

kernel:
Debian-5.0r2-lenny.7z 2009-07-11 45.4 MB
http://sourceforge.net/projects/colinux/files/Images%202.6.x%20Debian/Debian%205.0%20Lenny/Debian-5.0r2-lenny.7z/download

swap file:
http://colinux.wikia.com/wiki/HowtoCreateSwapFile

====================================================

1. 安裝colinux 0.7.9(安裝path自選,如:C:\coLinux)
2. 選colinux root file system image的時候跳過(不download)
3. 抓下Debian-5.0r2-lenny.7z,解壓縮至C:\coLinux\Debian-5.0r2-lenny
其中 rootfs的file是 C:\coLinux\Debian-5.0r2-lenny\Debian-5.0r2-lenny.ext3.2gb
4. 建立swap file (參考http://colinux.wikia.com/wiki/HowtoCreateSwapFile)
如 C:\coLinux\swap\swap_512Mb
5. 修改 C:\coLinux\example.conf (或是改成其他的名字)
其中
cobd0="c:\coLinux\root_fs"
改成(rootfs的位置)
cobd0="C:\coLinux\Debian-5.0r2-lenny\Debian-5.0r2-lenny.ext3.2gb"

cobd1="c:\coLinux\swap_device"
改成(swap的位置)
cobd1="C:\coLinux\swap\swap_512Mb"

#mem=64
改成(需要的記憶體)
mem=512

#eth1=tuntap
改成
eth0=tuntap

加入需要的cofs(讓colinux可以mount windows上的partition),如
cofs0="e:\"
cofs1="f:\"

6. 需把colinux新增出來的網路介面放入對外網路的共用網路內

7. normal run
C:\coLinux\colinux-daemon.exe @C:\coLinux\example.conf -t nt

root : root/colinux
user : colinux/colinux

8. 修改/etc/fstab
/dev/cobd0 / ext3 errors=remount-ro 0 1
/dev/cobd1 none swap sw 0 0
cofs0 /mnt/disk_e cofs defaults 0 0
cofs1 /mnt/disk_f cofs defaults 0 0


9. 更新系統
apt-get update
apt-get upgrade
apt-get install ssh
apt-get install subversion

10. 增加一個partiton的方法(如 /home)
如4. 建立一個空的file
修改 修改 C:\coLinux\example.conf 加入一個cobb#
重新開機後用mkfs.ext3 /dev/codb#
再修改/etc/fstab就可以自動mount起來

11. by readme.txt in colinux
Running as an service.
colinux-daemon.exe @example.conf --install-service "Cooperative Linux"
Also, to remove the service:
colinux-daemon.exe --remove-service "Cooperative Linux".
Then go to the Service Manager and start the "Cooperative Linux" service,
OR start from command prompt:
net start "Cooperative Linux"

星期四, 10月 06, 2011

tar + ssh ?

透過pipe送東西的時候,
一個連續的大檔案比分散的小檔案快,
所以一端tar起來(可壓縮可不壓縮)另一端un-tar
local可以直接執行指令,
遠端要用 ssh user@ip "command; command; command"的方式包起來
tar 的檔案位置用 - 透過pipe 傳
如:
ssh root@11.22.33.44 "cd /home/work; tar cjf - " | tar xjf -
tar cjf - XXXXXX/ | ssh root@12.22.33.44 "cd /home/work ; tar xjf -"

星期五, 6月 03, 2011

svn mismatch

用過svn 1.6的work_copy,
整份copy拿到svn 1.4或是svn 1.5上,
會有work_copy上的問題,
解法請看下面的link


延伸閱讀:
I got an error saying "This client is too old to work with working copy '...' ". How can I fix it without upgrading Subversion?

星期六, 1月 29, 2011

做白工的vmware network

某天的windows藍色畫面,
需要重新安裝vmware image,
結果安裝花了一個晚上,

原本覺得裝好了,
去客戶那要使用的時候,
變成vmware的network有問題,
搞了一天的vmware network,
連重新安裝

最後是下班前有同事幫忙看了一下,
原來是dns的問題,
順便把防火牆關掉,
結果就好了,
留下記錄中...

========== /etc/network/interfaces ==========
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static

address 192.168.1.146
network 192.168.1.0
netmask 255.255.255.0
broadcast 192.168.1.255
gateway 192.168.1.1
#dns-nameservers 192.168.1.1

========== /etc/resolv.conf ==========
nameserver 192.168.1.1

星期日, 1月 23, 2011

vimrc

留下覺得好用的~/.vimrc
下次重灌電腦就有跡可尋

================================
syntax on
set number
set hls
set ic
set ai
set enc=utf8
set incsearch
set cursorline
colorscheme torte

set viminfo='10,\"100,:20,%,n~/.viminfo
au BufReadPost * if line("'\"") > 0|if line("'\"") <= line("$")|exe("norm '\"")|else|exe "norm $"|endif|endif

星期五, 1月 21, 2011

vmware on r7d

雖然可以借工作的notebook出門,
但是帶兩台notebook進大陸怕麻煩,
只好在r7d上裝vmware,
再裝個linux進去吧,
就裝debian吧,
如果用開機選單裝二個系統,
會有在linux下不確定usb to comport能不能找到driver的疑問,
所以還是vmware是可接受的選項

其實第一次知道debian,
是某個同學說的,
心中就一直想試試看debian,
雖然後來還是有用過fedora、mandrake不同的linux distribution,
裝在wmware裡的,
還是試試看用debian吧,

終於到下載svn的code的時候了,
還是要等到能編出file才算完成...

========== vmware 安裝分隔線 ==========
裝完vmware之後,
開一個virtual machine,
disk size選最大size比較好,
反正是用多少佔多少,
不會不小心就暴掉了(8g實在不夠,害我重裝一次)

用iso當光碟餵給vmware的光碟機,
所以沒有實體光碟也可以裝
我是用debian 5 (代號 lenny)的網路安裝檔,
kernel是2.6.26,
debian-507-i386-netinst.iso(約150mb),
但是我想用debian-507-i386-businesscard.iso(約36mb)也行

用簡單安裝(不用圖形安裝,感覺會快一點),
用途只選standard(跑desktop感覺有點慢),
回答一些簡單的問題之後就裝完了,
感覺比我裝在desktop還快,
是不是因為我都去撿舊電腦來當server啊?

debian預設用apt(command)或是aptitude(圖形)的方式管理packages,
沒有裝到的tools都可以透過網路直接安裝,
我記得還需要裝zip unzip bzip2 make gcc subversion dos2unix(這個我找不到,只好自己抓source code下來編,怪怪的-->好像變成tofrodos這個package了,不知道有沒有比較好的方法找需要的指令被包在那個package裡?)

另外,
現在已經不需要裝toolchain了,
真是不錯

========== samba 安裝分隔線 ==========
主要參考samba 安裝法
加入samba smbfs兩個package,
設定一下user,
就可以讓vmware內的debian linux 和外面的windows xp互傳資料了

星期一, 9月 27, 2010

bug of storeword loadbyte

#define endian(x) (((x)&0xff000000>>24) || ((x)&0x00ff0000>>8) || ((x)&0x0000ff00<<8) || ((x)&0xff000000<<24))

這會有什麼bug?
只有在(x)還有人在改的時候,
問題不是我發現的,
長經驗長經驗...

星期六, 7月 10, 2010

(*a) = (*a)++;

今天解了一個bug,
比較像是compile的問題,
因為其他人的compiler不會這樣子,
但是也software的問題,
就是
(*a) = (*a)++;
(*a)到底會等於什麼值?
原作似乎是想要等於(*a)++,
不過不過的compiler好像會看成不一樣的東西,
有疑慮的寫法,
不如就寫成
(*a)++;
所以,
還是不要太相信別人的code才是

這幾天的感覺,
讓我想到一部電影 - 熟男飛行日記,
不過我沒有簡捷有力的旅行感覺,
反而已手忙而已,
飛行時數也沒有多少能集到一張1千萬哩的貴賓卡(應該沒有記錯吧),
多旅行應該就會慢慢有經驗吧

初到陌生的城市,
要待得夠久,
才會慢慢有一種開始熟悉附近道路的感覺,
大概知道要往那走才會到公司、hotel,
不過吃的和玩的就不熟了,
美國(或是說加州?)的開車方式差不多,
比較要注意的是大部份的紅燈可以右轉,
不過要先停下來才能轉,
也要等到綠燈方向的車先行,
另外一個就是看到stop一直要停,
然後再走,
目前沒有在美國開過車,
不過,
坐坐別人開的車也不錯

加一筆流水帳,
就是三餐地點如昨天,
不過中午是吃bbq(買餐卷點餐),
晚餐是吃美式的中式食物,
感覺每樣都很重口味

星期二, 9月 01, 2009

debian woody 3.1_r6a

再次為裝了一陣子的linux做記錄,
這次是版本是debian woody 3.1r6a,

重點一:
在於要找比2.6.12.6小的kernel版本,
然後自己編2.6.12.6做測試,
試了很多版本,
終於試到可以的版本

為什麼要找比2.6.12.6小的kernel版本呢?
因為我試過有一版的kernel是2.6.18的,
編出2.6.12.6之後,
有一個udevd的套件是原來2.6.18在用的,
可是我不知道怎麼取消,
一直無法用2.6.12.6開機,
所以放棄...

重點二:
要用gcc3.3左右的版本編kernel,
用gcc4.3左右的編會編不過

重點三:
用aptitude(for debian?)去安裝套件,
可以自動算相依性

重點四:
編kernel需要用到的指令
make && make modules modules_install install
mkinitrd -o /boot/initrd.img-2.6.12.6 2.6.12.6


重點五:
下載可netinstall的版本,
就不需要燒太多片cd(用cd-rw就行了),
一切的套件在設完ip之後,
就可以自動去抓了


延伸閱讀:
DebianWoody - Debian Wiki
Index of /pub/Linux/debian/debian-cdimage/archive/3.1_r6a/i386/iso-cd
aptitude - DebianWiki
Index of /pub/linux/kernel/v2.6
升級kernel 2.6.9出現問題

星期五, 8月 21, 2009

module-init-tools

把追了一天的cross-compile設定寫下來,
之後重灌就不會再出錯了

module-init-tools 3.3的modules.dep的path會是(from modules.dep man page)

/lib/modules/2.5.53/kernel/a.ko: /lib/modules/2.5.53/kernel/c.ko /lib/modules/2.5.53/kernel/b.ko
/lib/modules/2.5.53/kernel/b.ko:
/lib/modules/2.5.53/kernel/c.ko: /lib/modules/2.5.53/kernel/b.ko


但是fedora 11用的是module-init-tools 3.7,
modules.dep是這個樣子

/kernel/a.ko: /kernel/c.ko /kernel/b.ko
/kernel/b.ko:
/kernel/c.ko: /kernel/b.ko


所以用cross-compile編出來的modprobe會不到對的module path,

解決方法是自己去下載3.3版的
(其實不確定那個版本改成path沒有version的資訊,
不過因為在pc上用的modprobe和depmod會是match的,
所以不會有這個問題,
cross-compile用的busybox比較舊,
所以還是要用舊一點的module-init-tools才合,
只能確定3.3的path有version的資訊,
3.7版的沒有version的資訊),

另外,
要編module-init-tools時,
會出現
/usr/bin/ld: cannot find -lc
的錯誤,
google一下的結果,
要yum install glibc-static才行,

以上

星期三, 8月 19, 2009

fedora 11

避免每次重灌server的時候,
都處理很久,
把經驗寫下來,
做為以後參考

1. download fedofa 11 Network Install CD for i386(約150mb)
2. 安裝的設定自定,重點是利用網路抓file,自動安裝,我的重點不在這裡
3. 要設網路的service前,一定要把防火牆關掉)fedora 11 default是有開防火牆,但是只有開少數的port,samba、tftp、nfs都沒有開)

4. samba
4.1 用yum install samba安裝
4.2 用smbpasswd -a username設密碼
4.3 vi /etc/samba/smb.conf,適度修改,
4.4 執行/etc/init.d/smb restart
4.5 (重點)如果連得進去,看得到家目錄,但是進不去,請用桌面去看fail的訊息,會教下什麼指令去修正(setsebool -P samba_enable_home_dirs=1)

5. nfs
5.1 yum install nfs-utils
5.2 vi /etc/exports,修改nfs參數,如 /home/nfs *(rw,insecure,sync,no_root_squash)
5.3 /etc/init.d/nfs restart

6 tftp
6.1 yum install tftp-server
6.2 vi /etc/xinetd.d/tftp,讓disable = no,server_args後面帶的目錄是tftp的目錄,預設是/var/lib/tftpboot/
6.3 chmod 777 /var/lib/tftpboot/, 把上述的tftp目錄的權限設成777
6.4 /etc/init.d/xinetd restart


延伸閱讀:
1.Fedora 專案
2.在 Ubuntu Desktop 上安裝 TFTP Server
3.鳥哥的Linux 私房菜-- SAMBA 伺服器

星期二, 4月 17, 2007

2007/4/17 蘇州出差日記 之 fedora篇

需要在linux的環境下工作,
目前灌的版本是fedora core 6,
很方便,
會自動從網路上下載新的patch更新,
一切都很方便,
除了中文輸入法之外,

用習慣了無蝦米,
用其他的中文輸入法就慢得不得了,
出國前有上網找了一下如何在fedora上裝無蝦米,
得到的答案都是去裝gcin,
gcin有技援無蝦米,
但是沒有提供table,
需要自己找,
但是試了很多次,
還是無法成功,

昨天覺得再試一下好了,
在網上找到這篇文章,
方法很簡單,
指令也講的很清楚,
一下子就ok了,
奇怪我怎麼沒有在出國前就找到這個文章呢?
連著用英文輸入幾天,
覺得很不順...

不過英文還是應該要好好的練一練的

自虐喔!來安裝Fedora吧!

星期四, 9月 21, 2006

Debian on Linux

今天在公司因為公事要裝一台linux的電腦,
雖然有很多的版本可以安裝,
但是後來還是裝了一台Debian的linux,

之前裝過一次,
不過後來電腦壞了,
就沒有再玩下去了,

debian的入手我覺得有點難,
有點困難,
但是安裝好了之後,
要再安裝不同的packages也很容易,
下次在家裡再裝一台來玩玩好了

參考連結
Debian @ Wikipedia
摩托學園
Debian升級核心

星期二, 2月 21, 2006

[linux] RE sed awk

RE( regular expression )
http://www.rtfiber.com.tw/~changyj/
http://phi.sinica.edu.tw/aspac/reports/94/94019/ch1.html

sed
http://www.study-area.org/linux/system/linux_shell.htm
http://140.114.98.15/~simi/File/upload/simi_sed_how.txt

awk
http://140.114.98.15/~simi/File/upload/simi_awk.htm