Tổng Hợp ứng dụng DD-WRT cho G300NH
Đầu tiên là Thanks laodatma và blacksea rất nhiều, khi mình mới rinh cục buffalo này zìa thì cũng nhờ laodatma nhiệt tình trả lời nhiều thứ rùi sau này tình cờ được blaksea chỉ, hixx…nếu ko nhờ sự nhiệt tình luôn support hết mình của blacksea thì chắc giờ mình còn đang ức chế với torrent zin cùi của con router này đây X(, có thể sau này mình cũng học linux rùi mò ra nhưng…đó là chiện xa xa xôiii xôii, thanks blacksea đã giúp mình tận tình
Rùi, topic này mình sẽ tổng hợp những tinh chỉnh mình tìm hỉu được chỉ và search về cách sử dụng fw DD-WRT cho G300NH, mình cũng là gà con lon ton thui, nên nhờ vào ae xem chỉnh sửa góp ý để giúp cho bản thân và những người khác sẽ dễ dàng tiếp cận và tìm hiểu cách dùng DD hiệu quả hơn :">
Trước khi bắt đầu thì có 2 lưu ý :
1/ Khi up lên fw DD thì bạn sẽ mất 1 số tính năng…ko dùng của fw zin như hẹn giờ tắt/mở wifi của ECO v..v.v.chẳng hạn, và quan trọng là khi xài torrent transmission BẠN PHẢI CẮM HDD VÀO CỔNG USB MÃI -> vì nó sẽ ghi thông số cần thiết lên hdd box, nếu rút ra -> làm lại từ bước đầu tiên cho thuộc bài thui ^^
2/ bạn nào thix vọc và có thời gian thì hẳng làm, vì hầu như mình thấy bản thân và xem forum DD thấy tụi nó gặp tùm lum thứ lỗi rắc rối, chắc thế nào bạn cũng dính và ngay bản thân mình dù làm xong…lỗi vẫn báo nhưng vẫn chạy, bởi vậy nếu thix sự ổn định thì nên nghĩ lại, còn ko thì cùng lắm có thêm cục chặn giấy hiệu buffalo

sướng nhá

)
Bắt Đầu :•
*Cài đặt FW DD-WRT:
Vào đây down bản cài fw về :
http://www.dd-wrt.com/site/support/router-database
Gõ tên G300NH vào, đó là dòng cuối cùng, nhấp vào rùi down bản : buffalo_to_ddwrt_webflash-MULTI.bin >> đây là bản up từ fw zin router lên fw DD, còn bản dưới dành cho fw DD cũ nâng cấp.
*Chỉnh Ip cho router :
Mặc định khi up lên fw DD thì Ip web GUI sẽ chuyển từ 192.168.11.1 sang 192.168.1.1, đăng nhập Ip mới, khi vào nó sẽ hiện ra bảng, bạn nhập tên user và pass tùy chọn dùng đăng nhập vào router sau này. Một số bạn như mình xài modem FPT thì sẽ bị trùng với Ip modem, do vậy khi đăng nhập vào thì vào phần Setup đầu tiên chỉnh lại Ip cho nó sang 192.168.*.* (* tùy chọn, 113,114 gì cũng đc) vd như mình 192.168.8.1 !
I / Cài đặt soft lên router :
1/ Format USB :
-bạn có thể dùng ổ usb hay hdd box dung lượng tùy ý, nhưng phải format nó sang định dạng ext3 trước khi cài đặt soft lên, có thể dùng live cd Ubuntu với soft Gparted hoặc đơn giản partition magic mình cũng thấy có định dạng format ext3.
2/ Tinh Chỉnh DD-WRT :
a. Mở SSH :
- Vào Services->Service->Secure Shell và làm như hình dưới :
b. Chỉnh USB Support :
-Vào Services->USB tab. chỉnh như hình dưới và Click “Apply Settings”
c. Bỏ chọn the jffs :
-Vào Administration->Management, bỏ chọn “JFFS2 Support”. click “Apply Settings”.
3/ Tải WinSCP, PuTTY và prebuilt libraries :
-
WinSCP dùng copy file giữa PC và router, còn
PuTTY dùng login vào SSH router.
-Ngoài ra cần cài thêm thư viện OpenWrt là
lib.tar
4/ Giờ cắm hdd vào cổng usb và reboot lại router : (reboot trong phần administration >> reboot dưới cùng)
5/ Sau khi rebooting, login vào router dùng PuTTY :
Để mọi thứ mặc định, chỉ điền Ip router vào và enter open.
Login mặc định là root, và pass là pass đăng nhập router của bạn.
6/ Mount USB :
-Gõ vào khung command của PuTTY :
(Chú ý: tiết kiệm thời gian các bạn có thể quét chọn copy và nhấp chuột phải vào khung command - nghĩa là past vào PuTTY)
ls /dev/discs/disc0/
Và sẽ hiện ra như sau :
Giờ chú ý: nếu các bạn sử dụng toàn bộ ổ usb hay hdd nghĩa là chỉ có 1 phân vùng thì chỉ thấy chữ "disc", còn nếu các bạn có chia nhiều phân vùng sẽ có thêm chữ "part 1" "part 2"...
-Nếu chỉ thấy chữ "disc" thì gõ tiếp lệnh sau để mount USB :
mount -t ext3 -o noatime /dev/discs/disc0/disc /mnt
-Nếu bạn có nhiều phân vùng "part *"... thì gõ lệnh sau :
mount -t ext3 -o noatime /dev/discs/disc0/part1 /mnt
7/ Tạo thư mục cho HDD :
Copy từng dòng và past (Right Click) vào PuTTY :
cd /mnt
mkdir etc opt root
touch optware.enable
chmod 755 etc opt root
mkdir opt/lib
chmod 755 opt/lib
cp -a /etc* /mnt/etc/
mount -o bind /mnt/etc /etc
mount -o bind /mnt/opt /jffs
Giờ chúng ta đã tạo folders /ect và /jffs vào hdd, những folder khác như /bin, /usr và /sbin ko đụng đến, /ect sẽ dùng cho những mục đích cài đặt khác sau này.
8/ Giải nén lib.tar và upload files vào router theo thư mục : /jffs/lib - Dùng WinSCP làm :
-Mở WinSCP, giống PuTTY, nhập username là root và pass đăng nhập router, chọn như hình dưới SCP :
Và tiếp theo là phần...báo lỗi chít tiệt, chính mình bây giờ khi vào vẫn báo lỗi, tìm hiểu thì lỗi nó...cũng đa dạng phong phú lắm, như blacksea thì ko bị lỗi nên cũng...hên-xui :-@
có điều bạn cứ YES, OK...cứ thế mà vào

)
Giờ giải nén lib.tar và upload mọi thứ vào folder /jffs/lib
>> bạn kéo thả từng file bên khung trái của folder lib vào folder jffs của router khung phải.
Trong cửa sổ Putty gõ:
ls /jffs/lib
Để chắc chắn mọi file đã upload gõ :
chmod a+x /jffs/lib...
để set quyền cho nó.
9/ Cài gói opkg của OpenWrt :
Trong PuTTY gõ :
cd /tmp
wget
http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/opkg_513-2_ar71xx.ipk
ipkg install /tmp/opkg_513-2_ar71xx.ipk
Sau đó chạy lệnh sau để update bản mới nhất của opkg :
cat > /etc/opkg.conf << EOF
src/gz snapshots
http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages/
dest root /opt
dest ram /tmp
lists_dir ext /tmp/var/opkg-lists
EOF
* Lưu ý: có thể khi cài opkg nó ko tải cài vào được, bạn gõ xong vào mục /tmp xem có nó chưa, nếu chưa thì dùng IDM copy cái link trên tải và dùng WinSCP copy sang rùi update.
10/ Cài đặt Startup script và reboot :
-Vào router : Administration->Commands, past khúc dưới vào và click “Save Startup”
#!/bin/sh
sleep 5
#mount -t ext3 -o noatime /dev/discs/disc0/disc /mnt
mount -t ext3 -o noatime /dev/discs/disc0/part1 /mnt
#Chú ý bước này chọn 1 trong 2 theo bước 6 ở trên.
sleep 2
if [ -f /mnt/optware.enable ]; then
mount -o bind /mnt/etc /etc
mount -o bind /mnt/root /tmp/root
mount -o bind /mnt/opt /opt
else
exit
fi
if [ -d /opt/usr ]; then
export LD_LIBRARY_PATH='/opt/lib:/opt/usr/lib:/lib:/usr/lib'
export PATH='/opt/bin:/opt/usr/bin:/opt/sbin:/opt/usr/sbin:/bin:/sbin:/usr/sbin:/usr/bin'
else
exit
fi
Reboot lại router để có hiệu lực.
11/ Kiểm tra gói opkg :
-Sau khi reboot, login và PuTTY và chạy :
export LD_LIBRARY_PATH='/opt/lib:/opt/usr/lib:/lib:/usr/lib'
export PATH='/opt/bin:/opt/usr/bin:/opt/sbin:/opt/usr/sbin:/bin:/sbin:/usr/sbin:/usr/bin'
opkg update
->để check nếu opkg đã cài và làm việc.
Sau đó cài / upgrade thêm vài thư viện nữa cho nó : (phần này có thể quét chọn hết và copy vào PuTTY để nó down lần lượt)
opkg install libc
opkg install libgcc
opkg install uclibcxx
opkg install libncurses
opkg install busybox
12/ Cài đặt các biến ban đầu :
-Login Putty và copy/past như dưới để tạo script tự chạy mỗi lần root login :
cat > /mnt/root/.profile << EOF
export LD_LIBRARY_PATH='/opt/lib:/opt/usr/lib:/lib:/usr/lib:/opt/usr/local/lib'
export PATH='/sbin:/opt/bin:/opt/usr/bin:/opt/sbin:/opt/usr/sbin:/bin:/usr/bin:/usr/sbin:/opt/usr/local/bin'
export PS1='\[\033[01;31m\]\u@\h \[\033[01;34m\]\W \$ \[\033[00m\]'
export TERMINFO='/opt/usr/share/terminfo'
EOF
Mã trên tạo các biến cơ bản cho sau này cài đặt nhiều thứ, nó cũng làm thay đổi màu khi dùng PuTTY...cho nó lòe lọet dễ nhìn hơn ^^
Giờ tắt PuTTY và login lại, nếu thấy màu mí chữ đổi thì ok rùi.
Gõ típ :
opkg update
Cài đặt trình chỉnh sử nano :
opkg install nano
* Cái nano shit này, bài hướng dẫn trên blog của nó cứ nghĩ ai cũng rành linux xài nano nên mí lệnh sau toàn chơi thiếu nao bắt mình tự hiểu tự làm, lát ai xem blog gốc sẽ thấy hèn gì mình làm hoài ko đc X(
13/ Tạo software chạy service :
Trong phần trước chúng ta đã tạo DD-WRT startup script làm nhiệm vụ "mount" vài folder, nó sẽ chạy bất kì script nào khi khởi động miễn đúng thư mục và đúng tên. Giờ để nó làm như vậy thì mình cần đặt script vào mục /opt/etc/init.d và đặt tên nó chạy theo dạng S##ScriptName.
“##” là 2 số từ 00 đến 99, script số nhỏ hơn sẽ chạy trước. VD để chạy dịch vụ Samba file server và p90nd printer server, chúng ta sẽ tạo 2 script khởi động trong PuTTy :
/opt/etc/init.d/p910nd
/opt/etc/init.d/samba
Rồi làm tiếp đường dẫn cho nó:
ln -s /opt/etc/init.d/p910nd /opt/etc/init.d/S30p910nd
ln -s /opt/etc/init.d/samba /opt/etc/init.d/S50samba
Như vậy p910nd với “S30” sẽ được ưu tiên chạy trước Samba với “S50". Trong trường hợp bạn ko thích chạy dịch vụ nào đó, chỉ cân xóa file đường dẫn của nó (S30p910nd/S50samba => dùng Winsch hay FTP hoặc Ubuntu như mình vào folder /opt/etc/init.d tìm xóa)
trên đây là 2 vd để hỉu hơn cách thêm chỉnh sửa vài script cho nó chạy tự động, mọi người đọc thêm phần cuối ở đây để hỉu rõ hơn nếu muốn tạo thêm dịch vụ cho AP, còn ko thì làm típ lun phần cài đặt Transmission ko cần làm cái này cũng được.
http://g300nh.blogspot.com/2010/06/software-installation-on-dd-wrt-part-2.html
Cài Đặt Trình Torrent Transmission :
Giờ là phần sung sướng cài ứng dụng thực tế cho nó cắm film đây
1/ Cài transmission :
-Gõ vào PuTTY :
opkg install transmission-web
Nó sẽ cài đặt thư viện, giao diên Web GUI và ứng dụng transmission cho mình.
2/ Cài đặt transmission :
-Gõ :
transmission-daemon
-Đợi khỏang 10s và tắt nó bằng lệnh sau :
killall transmission-daemon
-chỉnh sửa file cấu hình của transmission bằng nano:
nano /mnt/root/.config/transmission-daemon/settings.json
-Xóa hết trong đó bằng phím Delete rồi copy script bên dưới vào :
{
"blocklist-enabled": 1,
"download-dir": "\/mnt\/share\/torrents",
"download-limit": 100,
"download-limit-enabled": 1,
"encryption": 2,
"max-peers-global": 35,
"peer-port": 25000,
"pex-enabled": 1,
"port-forwarding-enabled": 1,
"rpc-authentication-required": 0,
"rpc-password": "",
"rpc-port": 9091,
"rpc-username": "",
"rpc-whitelist": "192.168.1.*",
"upload-limit": 200,
"upload-limit-enabled": 1
}
-Rồi Nhấp : CTRL + O -Enter (để ghi) , rồi CTRL + X - Enter
-Tạo folder bằng lệnh sau :
mkdir -m 777 /mnt/share/torrents
* Chú ý:
+nếu ai xài dải IP khác thì chỉnh lại, ví dụ 192.168.3.1, thì để là 192.168.3.*
+nếu gõ lệnh đó mà nó báo lỗi ko tạo đc folder đó thì dùng WinSCP log vào theo đường dẫn /mnt trên và tạo folder theo như trên lun : Chuột phải - New - Directory - Tạo tên folder như trên và click chọn "set permissions" cho nó, tick vào 3 cột R, W, X đủ hết. Tạo xong 2 folder trên rùi thì gõ lại lệnh trên check xem nó đã có chưa, nó báo folder exits thì ok
-Bây giờ tất cả torrent download sẽ bay vào mục : /mnt/share/torrents
3/ Tạo giao diện Web GUI cho Transmission :
-Gõ :
export TRANSMISSION_WEB_HOME='/opt/usr/share/transmission/web/'
transmission-daemon
- Giờ truy cập vào giao diện web transmission theo link :
http://IP-Của-Router:9091/
Vd:
http://192.168.8.1:9091
Nếu mọi thứ ok, giao diện web hiện ra...tự sướng chút đi, làm đc đến đây coi như gần xong hết rùi =)) tui đổi router 3 lần, up lên DD, hạ xuống fw zin mí lần mới xong, mệt gần chết #:-S
4/ Bước cuối, chạy ụdịch vụ Web của nó :
-Gõ :
nano /mnt/root/.profile
để mở file profile rồi thêm đoạn này vào dưới cùng
export TRANSMISSION_WEB_HOME='/opt/usr/share/transmission/web/'
sau đó CTRL + O để ghi lại rồi CTRL + X để thoát ra.
-Tạo startup script, Gõ :
nano /opt/etc/init.d/transmission
-Del hết trong đó bằng phím Delete và past khúc dưới vào :
source /mnt/root/.profile
killall transmission-daemon
sleep 2
transmission-daemon -g /mnt/root/.config/transmission-daemon/
-Rồi nhấp : CTRL + O -Enter và CTRL + X - Enter
-Chạy như dịch vụ web, Gõ :
chmod a+x /opt/etc/init.d/transmission
ln -s /opt/etc/init.d/transmission /opt/etc/init.d/S60transmission
* Rùi, giờ đã hoàn tất các bước để transmission có thể down torrent.
5/ Dùng FTP Copy File từ HDD torrent :
-Vì bạn ko thể rút HDD ra được nếu ko sẽ phải cài lại từ đầu....tút trên kia xuống đây...thật là sướng

) nên phải cài FTP để copy file sang ổ khác, tuy nhiên mình nghĩ nếu tắt hết modem, router rùi thì chắc rút ra đút vào pc linux copy định dạng ext3 ok thui, tuy chưa thử nhưng nghĩ chắc ok thui
-Cài FTP để copy, có thể dùng mí soft riêng or mình cài add-on trên Firefox lun FireFTP để login HDD torrent và copy :
a/ Login vào router : Services - NAS - Enble - Trong khung User Password List : gõ vào tên và pass bạn dùng đăng nhập FTP (vd: admin 123) như hình dưới :
b/ Cài add-on FireFTP :
- Chọn Edit ở góc trái trên và đăng nhập như hình :
acc và host là Ip của router, ID login và pass là cái bạn tạo ở trên bước 1.
-Xong rồi, giờ nhấp connect nó để check xem đăng nhập vào router lấy torrent được chưa. Nếu ok thì tốt, nếu đợi mãi nó ko load thì thử làm theo bước sau chọn như hình :
Phần Security chọn None, Port 21 rùi thử lại xem
6/ Cài chương trình Trans remote dotnet :
các bạn qua topic arryo có hướng dẫn chi tiết cách cài soft điều khiển trans trực quan và nhìu tính năng từ win hơn hen, mình ko viết lại vì dài quá và làm trùng top :
GUI transmission remote dotnet
* Đáng lẽ viết típ phần cài host dns để remote torrent khi bên ngoài truy cập vào để xem hay tắt hay add thêm torrent, nhưng mình vẫn đang gặp vấn đề, bị vòng lặp xoay vòng địa chỉ ip nó ko trỏ ra ngoài đc vì modem và cả ap đều làm router nên bi đụng nhau, nếu ai chyển đc modem làm bridge rùi thì cứ vào phần DDNS đăng kí 1 cái host rùi làm thử típ đi
-------------------------------------------------------------------
Rùi, cuối cùng đã xong hết rùi đó, ôi ngồi gõ gần 2 tiếng mệt chết được, cái FF mắc dịch cùng Chrome mình mở nhìu tab copy qua lại là bị crash làm gõ nửa bài phải làm lại shit thiệt @-)
Phần tiếp theo sẽ chỉ các bạn xài login transmisson ở ngoài...đâu đó bên ngoài

) và Web GUI đẹp hơn pro hơn như bittorrent để dễ add nhìu torrent cùng lúc và dễ quản lý..v.v...
Giờ đi ăn kum đây, mình cũng mới làm tới đây nên ko viết típ là zậy =))
------------------------------
Gõ phím và ấn chuột :
Tommysmith
Tham khảo từ blog G300NH - các bạn có thể tìm hiểu thêm và làm nhìu ứng dụng khác tại đây, rảnh mình làm thử ok sẽ post típ, đời còn dài, topic này ứng dụng còn lê thê

)
* Ngoài ra đây là ebook mình tổng hợp từ net, cách khai thác các tính năng khác của DD, cái này viết bài có từ lâu rùi, thấy phần hướng dẫn tiếng việt từ mí năm trc, nhưng nhìn vào cơ bản chức năng chỉ có nâng cấp thêm chứ ko đổi, mình đã copy làm thành ebook cho đẹp và để đọc, để dành, các bạn có thể tham khảo thêm về các cách từ làm repeater, làm hotspot, mở rộng WDS, cấu hình DHCP tĩnh, làm bridge ko dây .v.v... (search google "hướng dẫn DD-WRT" sẽ thấy), ebook khỏang 40 trang mình làm thành file pdf up lên MF cho dễ down :
http://www.mediafire.com/?b21fdf2350q12zl
* Ghi chú thêm cho ai muốn xài Trans remote trên Linux như Ubuntu thì dùng bản Transmission Remote GUI nó có phiên bản dành cài trên Linux, còn bản Trans remote dotnet trên chỉ dành cho windows, các bạn có thể down tại đây
http://code.google.com/p/transmisson-remote-gui/downloads/list
*Ngoài ra đôi khi các bạn down file name lạ ko phải tiếng latinh như tiếng china hay japan chẳng hạn, thì winsch ko nhận diện được name nên ko del đc hay vì bất kì lí do gì ko del đc, cách cuối cùng là...rút ap ra >> rút hdd ra >> cắm zô linux đọc và toàn quyền chém nó B-)