重度Linux使用者專用…
如果你會常在 windows command 下輸入 ls , cp , cat …. etc
這只代表一件事…
你已經深深的中了linux 的毒了…
你肯定是 linux 重度用戶…
我今天終於受不了上述….
如果你會常在 windows command 下輸入 ls , cp , cat …. etc
這只代表一件事…
你已經深深的中了linux 的毒了…
你肯定是 linux 重度用戶…
我今天終於受不了上述….
YUM, Yellow dog Updater, Modified 這個相當好用的軟體,解決了 rpm 安裝過程常遇到的相依性問題,自動幫你判斷,有了他幾乎都不會直接使用 rpm 指令,最近由於有些 Server 在於 VPN 環境底下,因此需要有一台作為中繼的 yum server 除了可以讓內部取得最新套件,也可以節省頻寬的消耗,因此便架設一台 yum server 。
RHEL4 Update4(CentOS 4.4) & Red Hat Cluster Suite 安裝實錄
1. 硬體
伺服主機: DELL PowerEdge 1950 x 2
儲存裝置: DELL PowerVault x 1
電源管理: Dell Remote Access Card V5 (DRAC5) (Fence Device)
2. 軟體、服務、套件
作業系統:Red Hat Enterprise 4 Update4 / CentOS 4.4
HA軟體:Red Hat Cluster Suite 4
使用服務:Apache2(httpd 2.0.5.2-28)、MySQL4(mysql-4.1.20-1)
為什麼要特別寫一篇呢? 原因是 CentOS 4.x (yum install) vnc-server 第一次啟動不會主動要你輸入密碼…
所以自然也做不起來, 所以你必須自己執行 vncpasswd 設定密碼…. orz
以下是節錄楊錦昌老師的大作
http://apt.nc.hcc.edu.tw/web/student_server_FC3/student_server_FC3.htm
VNC(Virtual Network Computing)- 遠端遙控軟體
VNC 官方網站:http://www.realvnc.com
apt-get install vnc-server
/etc/rc.d/init.d/vncserver start
vncserver 第一次執行會要求設定密碼
vi ~/.vnc/xstartup 取消此兩行前面的 #
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
vi /etc/sysconfig/vncservers
# VNCSERVERS="1:myusername" 修改成–> VNCSERVERS="1:root"
# VNCSERVERARGS[1]="-geometry 800×600″
/etc/rc.d/init.d/vncserver restart
在 Linux 下把 Windows 2003 所分享的資料夾掛上, 找了些資料…
2003 以前的版本可以使用下面的指令
mount -t smbfs -o username=$user,password=$pass //$windows/share /mnt/smb
2003 以後必須使用下面的指令…
mount -t cifs -o username=$user,password=$pass //$windows/share /mnt/smb
英文不好, 沒辦法很清楚的解釋, 但我認為是 Kerberos 的驗證機制所以必須換成 cifs ,
換了這個, 帳號密碼沒問題那就 ok 了~ 以後有時間再查 cifs … 這個參數…
去查了一下 cifs => The Common Internet File System … 好像跟
Kerberos 無關.. 再查吧~
使用mdadm在Linux中配置RAID
軟件RAID是創建即時備份並且防止你的系統在某個驅動器失效的情況下丟失數據的一個費用低廉的方法。學習一些基本的RAID管理。
Linux上的軟件RAID是一個快照,感謝最新Linux版本中包含的mdadm工具。軟件RAID,特別是RAID1,是創建即時備份並且防止你的系統在某個驅動器失效的情況下丟失數據的一個費用低廉的方法。
要想創建一個RAID設備,執行下面的命令:
# mdadm –create –verbose /dev/md0 –level=1 –raid-devices=2 \
/dev/hda1 /dev/hdc1
有兩種方法可以獲得RAID的信息。你可以用提供某個特定設備的詳細信息的mdadm向設備進行查詢,或者你可以通過直接查看/proc/mdstat以瞭解整個RAID系統的概況。例如:
# cat /proc/mdstat
Personalities : [raid1]
read_ahead 1024 sectors
md0 : active raid1 hda1[0] hdc1[1] 56261376 blocks [2/2] [UU]
在這裡你可以看到personality是RAID1,設備/dev/md0是活動的,而兩個磁盤都是活動的(由[UU]進行註釋)。要想獲得該設備的更詳細信息,使用下面的命令:
# mdadm –detail /dev/md0
這個命令將打印出該設備各種不同的信息,包括它創建的時間,大小,上次更新的時間。
如果你想修改驅動器,你可以從組中刪除某個設備。該命令將防止/dev/hdc1出現在/dev/md0組中:
# mdadm /dev/md0 -r /dev/hdc1
你也可以向組中添加設備。方法如下:
# mdadm /dev/md0 -a /dev/hdc1
雖然RAID管理可以異常複雜,但是簡單的驅動器鏡像(比如這個RAID1安裝)卻相當簡單。除此之外,它比昂貴的磁盤或可移除的介質解決方案提供了一個具有更好靈活性和划算的備份解決方案
1.下載Kernel Source(廢話!)
CentOS 使用者 => yum install kernel-sourcecode
Fedora 使用者 => 去官方網站或 mirror 抓 kernel-xxxx.src.rpm
RHEL 使用者 => RHN
所有Linux 使用者 => http://www.kernel.org/
反正不只這幾種… 參考看看吧!!
2.確認是否有編譯套件(還是廢話)
yum -y install gcc make automake autoconf
可以的這幾個套件最好是確認一下
3.將 kernel-soruce 放到 /usr/src/ 下
善用 mv / cp 指令將 kernel source 移到 /usr/src
(這不是廢話, 建立良好的習慣會有利於你工作的交接)
4.修改 kernel source 中的 Makefile 專案, 建立你的版別
將 EXTRAVERSION = 修改為你的版別
可以是 EXTRAVERSION =-roach
也可以EXTRAVERSION =-k8-64
看個人習慣囉!
5.複製舊有設定檔
通常是安裝時預設所建立的,可以的話請你務必複製這個
因為通常他會包含你的硬體設備(如果你沒有大變動的話)
cp /boot/config-2.6.x.x.config /usr/src/linux-2.6.x.x/
你也可以複製 kernel source 所附的各種cpu的設定檔!
6. 使用 menuconfig 介面選取所需模組
make menuconfig
預設都是 Pentium-Pro 如果可以調整成合適的 cpu 效能將會提昇不少
請不要忘記儲存離開… orz
7. 編譯核心及模組
make all
這個動作大約要跑 5min ~ 1hr 以上不等, 我的經驗是 P4 都要在 30min ~1hr 左右
據說 K8 使用者有 5min 的高速經驗… orz
8. 安裝編譯完成的模組
make modules_install
9.建立模組連結
depmod -a
10.建立 initrd 核心映像檔( init ram disk 有點類似開機片的一部份…)
mkinitrd /boot/initrd-2.6.x.x-roach.img 2.6.x.x-roach
11.複製系統資訊到開機目錄
cp System.map /boot/System.map-2.6.x.x-roach
12.複製新的核心到開機目錄
cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.x.x-roach
13.修改開機選單
grub 或是 lilo
複製一組…
類似下面這樣..
title CentOS-4 i386 (2.6.9-11.EL-L7filter)
root (hd0,0)
kernel /vmlinuz-2.6.x.x-roach ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.x.x-roach.img
完成, 收工重開機看看會不會 kernel panic…
不會就恭喜各位…
參考資料
旗標出版社
Linux iptables 技術實務
施威銘研究室著
ISBN 957-442-243-7

話說幾個禮拜前想要把公司的 NT4.0 檔案分享服務, 換成 SAMBA, 想要在效率跟金錢上取得一個平衡, 在之前上課時某位老師在閒聊時提供了一個經濟的方案, 也就是 採用 SATA RAID, 並提供了一家可以參考的國內廠商 Promise 喬鼎資訊, 因此我買了兩顆320G硬碟, 也選了一片看起來性能較佳的 SATA RAID 卡FastTrak S150 SX4-M客倌啊! 這可是可以插記憶體的啊! 不禁想起多年以前買不起的 IDE 快CACHE卡, 想當年在上面插個 4MB 是多麼神氣的啊, 當年還是學生的我當然是買不起的, 會知道也是某位大工程師打電話來炫燿…
離題了… 總之可以插記憶體, 我想效能應該會不錯…這片卡不是很好買, 店家沒有庫存, 必須訂貨, 又遇上颱風…一波三折… 總之這片卡我找了快兩個禮拜才買到, 最後我開始安裝發現, 這個是要掛 Module 的, 不是 Hard Raid ,要新安裝, 我想比較新的 Distribution 應該會有支援吧? 然後我開始試著用 RHEL3 / RHEL4 / FC3 / FC4 去安裝, 發現預設是不支援的, 我最後去 Promise 的網站找 Driver …
才發現 Promise 對於 RedHat Distribution 的支持是比較薄弱的, 提供的版僅有 RHEL3/4 以及 RH9 (更舊的晶片組就不用想說會有 RHEL 的Driver) , Fedora 系列的並沒有提供專用的 Driver 但是有提供 Source code ,光聽到 Source 就讓我卻步了,
開始去使用 google 找有沒有人有做好的… 不斷的更換字串翻頁… 最後我選擇自行編譯模組…但是都失敗… 最後我發現他有提供 RHEL4 的, 好吧! 那我就裝 RHEL4 然後在想辦法裝 APT / YUM 然後把 mirror 換成 centos … 基於經濟的考量我不得不這麼作…最後再重新編譯模Kernel的過程中把這片卡的 Module 成功的做出來了…
1.下載所要使用的 Kernel Soruce
2.請確認你的系統內有 gcc 等編譯套件, 正確的套件可能需要查,
(我是使用 yum update 後就就可以順利執行了)
3.取得該介面卡的 module source
4.確認 Kernel Soruce 內的 Makefile 中的版本編號是否與你要安裝的
Kernel Verison是否相符(這很重要,版本不對就不能用)
5.重新編譯核心後, 製作 init ram disk 時, 請將 FastTrak.ko 複製到
/lib/modules 下屬於你的 kernel 版本目錄中的 updates 中…
這樣才能順利驅動介面卡, 不然就等著 Kernel panic …
Step.1 產生 Root CA
cd /usr/share/ssl/misc
./CA -newca
輸入路徑,不輸入Enter跳過,預設路徑為
/usr/share/ssl/misc/demoCA/cacert.pem
輸入密碼,請牢記, 如果忘記, 以後你便無法簽發憑證, 除非重新產生Root CA
再打一次
輸入CA的資料,不要輸入你的網站的資料,這是簽發憑證中心,不是你申請憑證網站
之後你會有兩個檔案
Root CA 憑證 usr/share/ssl/misc/demoCA/cacert.pem
Root CA Private Key /usr/share/ssl/misc/demoCA/private/cakey.pem
Step.2 產生使用者憑證(你的Server要申請憑證)
cd /usr/share/ssl/misc
./CA -newreq
跟產生 CA 鎖要輸入的資料差不多, 只有 CN 一定要正確, 其他就看你了
Step.3 分離憑證申請書以及 Private Key
head -18 newreq.pem > private.key
取得前18行為priveate.key
sed 1,18d newreq.pem > newreq.pem.1
mv newreq.pem.1 newreq.pem
刪除申請書的前18行
openssl rsa -in private.key -out server.key
拿掉申請憑證時所設定的密碼,如果你是要給 apache 用的話,
你不希望每次啟動跟都要打一次密碼的話, 請拿掉.
Step.4 CA 對憑證申請書進行簽章
cd /usr/share/ssl/misc
./CA -sign (輸入當初設定 Root CA 時所設的密碼)
sed 1,45d newcert.pem > /usr/share/ssl/certs/dovecot.pem
cp server.key /usr/share/ssl/private/dovecot.pem
重新啟動 dovecot , 以及刪除 /usr/share/ssl/misc
下所產生的 newcert.pem newreq.pem private.key server.key
/usr/share/ssl/certs/dovecot.pem
這個檔案複製下來到 user 端改為 *.crt 匯入收信程式的憑證即可~
ps. 如果要更改憑證有效日期在簽章憑證之前請修改
/usr/share/ssl/openssl.conf 將 default_days 修改成你要的有效時間
讓 SAMBA 支援中文
在 globeal 設定加上
client code page = 950
那是 samba 2.x 用的…
3.0 請加上
unix charset = cp950