• Home
  • Store
  • Forum
  • Blog

XTDV Forum
Đăng nhập Đăng ký
Đăng nhập XTDV Forum

XTDV Forum › Chuyên môn › HD PLAYER
[HTPC] Hướng dẫn xây dựng hệ thống HTPC chia sẻ và sử dụng chung đĩa cứng với NAS

Thread tools
[HTPC] Hướng dẫn xây dựng hệ thống HTPC chia sẻ và sử dụng chung đĩa cứng với NAS
xtdv
Điều hành cao cấp
Bài viết: 504
5 Likes
   
#1
Thứ hai, 29/07/2013, 15:27 (Bài viết được chỉnh sửa lần cuối vào Thứ sáu, 13/09/2013, 14:02 bởi xtdv.)
Chào các bạn,
Trong bài viết hôm nay mình sẽ giới thiệu cho các bạn một giải pháp chơi HD dành cho gia đình hoặc nhà hàng, khách sạn với những ưu điểm sau:
  • Mạnh mẽ (sử dụng sức mạnh từ CPU Intel, một con Pentium 4 cổ lỗ sĩ cũng ăn đứt các đầu HD đắt tiền trên thị trường hiện nay)
  • Tiết kiệm (với số tiền bỏ ra không lớn, bạn có thể tận hưởng các tính năng cao cấp chỉ có ở những đầu phát đời mới và đắt tiền)
  • Linh động (không bị bó buộc hoặc giới hạn về phần cứng, tương thích hầu hết các loại PC hiện nay, khả năng nâng cấp và mở rộng gần như vô hạn)
  • Triển khai nhanh (nếu đọc kỹ hướng dẫn ở đây, bạn chỉ mất khoảng 2 tiếng cho việc cài đặt lần đầu, những lần triển khai tiếp theo chỉ mất 30 phút hoặc ít hơn)
  • Dễ bảo trì (bạn không còn phải chạy lăng xăng khắp nơi để cài đặt và cấu hình, việc quản lý được tập trung tại một chỗ)
  • Và còn nhiều yếu tố khác nữa mà khi triển khai các bạn sẽ nhận thấy ưu điểm của nó...

[Ảnh: HTPCDisklessSystem_zpsd7c5fb43.png]


Bài viết này tập trung vào mô hình triển khai nhiều HTPC, mỗi HTPC không có ổ cứng chứa dữ liệu hay HĐH, mà toàn bộ HĐH cũng như dữ liệu giải trí (phim, nhạc, hình,...) sẽ lưu trữ tập trung ở một thiết bị duy nhất. Việc này sẽ làm giảm đáng kể chi phí triển khai cũng như bảo trì và nâng cấp sau này...

Trước hết, chúng ta sẽ tóm tắt sơ những việc sẽ làm để các bạn dễ hình dung:
  1. Yêu cầu tối thiểu
  2. Cấu hình máy chủ (NAS)
  3. Cấu hình máy tính (HTPC)
  4. Kiểm tra và chạy thử
  5. Mở rộng và nâng cấp hệ thống
  6. Điều khiển và quản lý
Nếu bạn đã sẵn sàng, chúng ta hãy bắt tay vào làm nào...

1. Yêu cầu tối thiểu
- Đối với máy chủ (NAS):
  • Có dung lượng còn trống trên 10GB (chưa tính dữ liệu giải trí)
    • Nên sử dụng dòng NAS có 2 ổ cứng (cấu hình RAID 1) hoặc dòng NAS 4 ổ cứng (cấu hình RAID 5) để đảm bảo an toàn dữ liệu và độ bền của ổ cứng vì tần suất truy xuất dữ liệu cao và liên tục.
  • Có ít nhất 256 MB RAM.
    • Nên sử dụng dòng NAS có trên 1.0GB RAM để có hiệu suất tốt hơn.
  • Có cổng LAN Gigabit để hạn chế tình trạng thắt cổ chai khi nhiều máy tính truy cập
  • Đã cài đặt HĐH Debian - http://forum.xtdv-group.com/thread_36 hoặc đã cài IPKG - http://buffalo.nas-central.org/wiki/Ipkg_on_the_Linkstation_(for_end-users)
    • Ở đây mình lấy NAS chạy Debian làm mẫu. Với NAS chạy FW khác nhưng đã cài IPKG, bạn tham khảo cú pháp của IPKG và vị trí các tập tin cấu hình để điều chỉnh cho thích hợp.
- Đối với máy tính (HTPC):
  • Intel Pentium 4, Intel Pentium M, AMD Athlon XP/64, AMD Opteron, hoặc cao hơn (có hỗ trợ SSE).
    • Nếu bạn không có card đồ họa đủ mạnh như yêu cầu ở dưới, bạn cần phải nâng cấp lên bộ xử lý 2 nhân đủ mạnh (Core 2 Duo E4xxx hoặc hơn) để giải mã video H.264 FullHD (1080p) .
  • Card đồ họa ATI/AMD, Intel, hoặc NVIDIA (đề xuất) hỗ trợ OpenGL 2.0 hoặc mới hơn
    • ATI Radeon R700 (HD 4000) hoặc mới hơn.
    • Intel GMA X4500HD (G45) hoặc mới hơn
    • nVIDIA GeForce 8-Series hoặc mới hơn
  • RAM: 512MB hoặc hơn, nhưng không cần quá 1024MB (1GB).
2. Cấu hình máy chủ (NAS)
- Đầu tiên, bạn SSH vào và cài đặt các gói cần thiết bằng lệnh sau:
Mã:
apt-get install isc-dhcp-server tftpd-hpa nfs-kernel-server

- Sửa tập tin cấu hình của máy chủ DHCP /etc/dhcp/dhcpd.conf giống như dưới đây, chú ý các địa chỉ MAC AA-BB-CC-DD-EE-... phải giống với địa chỉ MAC trên HTPC bạn và phải viết thường chứ không viết HOA:
Mã:
option domain-name-servers 208.67.222.222, 208.67.220.220;
option subnet-mask 255.255.255.0;

ddns-update-style none;

default-lease-time 604800;

log-facility local7;

# XTDV Local
subnet 100.84.0.0 netmask 255.255.255.0 {
    filename "pxelinux.0";
    option domain-name "XTDV.local";
    option broadcast-address 100.84.0.255;
    option subnet-mask 255.255.255.0;
    option routers 100.84.0.1;
    range 100.84.0.127 100.84.0.250;
    # HTPC 01
    host HTPC-01 {
        hardware ethernet aa:bb:cc:dd:ee:01;
        fixed-address 100.84.0.11;
        }
    # HTPC 02
    host HTPC-02 {
        hardware ethernet aa:bb:cc:dd:ee:02;
        fixed-address 100.84.0.12;
        }
    # HTPC 03
    host HTPC-03 {
        hardware ethernet aa:bb:cc:dd:ee:03;
        fixed-address 100.84.0.13;
        }
    }

- Xác định phân vùng ổ cứng còn trống trên 10GB bằng lệnh df -h (trong bài viết này, giả sử mình tìm thấy thư mục /home còn trống nhiều), sau đó tạo thư mục tftp để chứa các tập tin cần thiết:
Mã:
mkdir /home/tftp

- Sửa tập tin cấu hình của máy chủ TFTP /etc/default/tftpd-hpa cho giống như sau:
Mã:
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--ipv4 --secure"

- Tải tập tin tftp_basic.tar.gz đính kèm ở cuối bài viết, sau đó chép vào một thư mục nào đó trên NAS của bạn (thư mục share chẳng hạn).

- Giải nén tập tin vừa tải về vào thư mục /home/tftp/ bằng các lệnh sau:
Mã:
cd /home/tftp
tar -zxf /<đường dẫn chưa tập tin vừa tải về>/<tên tập tin>
Ví dụ:
Mã:
cd /home/tftp
tar -zxf /mnt/array1/share/tftp_basic.tar.gz

- Tạo tiếp một thư mục tên là htpc_01, thư mục này sẽ chứa tất cả dữ liệu cần thiết cho HTPC khởi động:
Mã:
cd /home/tftp
mkdir htpc_01

- Lúc này ta có cấu trúc thư mục như sau:
Mã:
/home/tftp
├── htpc_01
├── pxelinux.0
└── pxelinux.cfg
    ├── 01-aa-bb-cc-dd-ee-01
    ├── 01-aa-bb-cc-dd-ee-02
    ├── 01-aa-bb-cc-dd-ee-03
    ├── chain.c32
    ├── default
    ├── hdd.cfg
    ├── menu.cfg
    ├── prompt.cfg
    ├── splash.png
    ├── stdmenu.cfg
    └── vesamenu.c32

- Tải tiếp tập tin chứa HĐH cơ bản để HTPC khởi động, sau đó chép lên NAS và giải nén vào thư mục htpc_01:
Mã:
https://mega.co.nz/#!xwJFxCBD!ecEqon9agNODAmSyJlhMly_XnTh_WcDT5InKtG9Roi8
hoặc
http://www.filefactory.com/file/59s76o5dtqo5/n/htcp_ubuntu_12_10_pxe_tar_bz2
hoặc
http://rapidshare.com/files/935507064/htcp_ubuntu_12_10_pxe.tar.bz2
hoặc
http://www.mediafire.com/download/ekb3414pcejjmgx/htcp_ubuntu_12_10_pxe.tar.bz2

Mã:
cd /home/tftp/htpc_01
tar -jxf /mnt/array1/share/htcp_ubuntu_12_10_pxe.tar.bz2

- Lúc này ta có cấu trúc thư mục như sau:
Mã:
/home/tftp/
├── htpc_01
│   ├── bin
│   ├── boot
│   ├── dev
│   ├── etc
│   ├── home
│   ├── initrd.img
│   ├── lib
│   ├── media
│   ├── mnt
│   ├── opt
│   ├── proc
│   ├── root
│   ├── run
│   ├── sbin
│   ├── selinux
│   ├── srv
│   ├── sys
│   ├── tmp
│   ├── usr
│   ├── var
│   └── vmlinuz
├── pxelinux.0
└── pxelinux.cfg
    ├── 01-aa-bb-cc-dd-ee-01
    ├── 01-aa-bb-cc-dd-ee-02
    ├── 01-aa-bb-cc-dd-ee-03
    ├── chain.c32
    ├── default
    ├── hdd.cfg
    ├── menu.cfg
    ├── prompt.cfg
    ├── splash.png
    ├── stdmenu.cfg
    └── vesamenu.c32

- Chỉnh sửa tập tin pxelinux.cfg/01-aa-bb-cc-dd-ee-01 (tập tin để khởi động HTPC thứ nhất) giống như dưới đây:
Mã:
# D-I config version 2.0 - HTPC 01 startup configuration
default pxelinux.cfg/vesamenu.c32
menu width 80

menu title PXE Diskless Entertainment System - XTDV Group
include pxelinux.cfg/stdmenu.cfg
menu separator
label ubuntu
        menu label HTPC 01 - Ubuntu with XBMC
        menu default
        kernel htpc_01/vmlinuz
        append root=/dev/nfs nfsroot=100.84.0.5:/home/tftp/htpc_01 initrd=htpc_01/initrd.img ip=dhcp rw

TIMEOUT 30
TOTALTIMEOUT 1200

- Đổi tên tập tin 01-aa-bb-cc-dd-ee-01 thành địa chỉ MAC thực sự của máy bạn. VD địa chỉ MAC máy bạn là 00-1A-A0-2B-EB-83 thì tập tin đó phải có tên là 01-00-1a-a0-2b-eb-83.

- Chỉnh sửa tập tin htpc_01/etc/fstab để tìm và gắn kết các tập tin hệ thống cho giống với dưới đây:
Mã:
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>

/dev/nfs        /               nfs     defaults        0       0
tmpfs           /tmp            tmpfs   defaults        0       0
tmpfs           /var/run        tmpfs   defaults        0       0
tmpfs           /var/lock       tmpfs   defaults        0       0
tmpfs           /var/tmp        tmpfs   defaults        0       0

- Chỉnh sửa tập tin htpc_01/etc/network/interfaces để cấu hình giao tiếp mạng, chú ý chỉnh thiết bị eth0 (hoặc eth1) thành manual, tuyệt đối không để auto hay dhcp:
Mã:
# 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 dhcp
iface eth0 inet manual
dns-nameservers 208.67.222.222 208.67.220.220

- Chỉnh sửa tập tin htpc_01/etc/resolvconf/resolv.conf.d/base để HTPC phân giải được tên miền và truy cập được Internet:
Mã:
nameserver 208.67.222.222
nameserver 208.67.220.220

- Chỉnh sửa tập tin /etc/exports để máy chia sẻ thư mục /home/tftp/htpc_01/ qua giao thức NFS:
Mã:
# /etc/exports: the access control list for filesystems which may be exported
#               to NFS clients.  See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#
/home/tftp/htpc_01/     100.84.0.11(async,no_root_squash,rw)

- Sau khi sửa xong, khởi động lại các dịch vụ máy chủ DHCP, máy chủ TFTP, NFS bằng các lệnh sau:
Mã:
/etc/init.d/isc-dhcp-server restart
/etc/init.d/tftpd-hpa restart
/etc/init.d/nfs-kernel-server restart

- Lúc này máy chủ DHPC (DHCP Server) trên NAS đã bật lên, có thể sẽ xung đột với máy chủ DHCP trên router (IP 100.84.0.1). Để tránh xung đột, bạn cần tắt máy chủ DHCP trên router. Các bạn vui lòng tham khảo tài liệu của router trước khi thực hiện các bước tiếp theo dưới đây.

3. Cấu hình máy tính (HTPC)
3.1. Cấu hình cơ bản
3.1.1. Cấu hình BIOS
- Bạn truy cập vào BIOS Setup (CMOS Setup Utility) của máy bằng cách nhấn phím DEL, F1, F2, F10,... (tham khảo tài liệu của máy hoặc mainboard).
- Bật tính năng PXE cho thiết bị mạng - Enable Ethernet PXE Support (tham khảo tài liệu của máy hoặc mainboard).
- Bật tính năng Wake on LAN (WOL) cho thiết bị mạng - Enable Ethernet Wake on LAN support (tham khảo tài liệu của máy hoặc mainboard).
- Ưu tiên khởi động từ thiết bị mạng lên cao nhất (tham khảo tài liệu của máy hoặc mainboard).
- Lưu lại cấu hình và khởi động lại máy.

[Ảnh: Lubuntu-2013-08-26-13-59-14_zpsf193d768.png]


3.1.2. Cấu hình HĐH
- Khi máy khởi động, nếu màn hình dừng lại ở câu lệnh nhắc đăng nhập có nghĩa là bạn đã cấu hình thành công. Bạn đăng nhập với tên htpc, mật khẩu là password. Ngoài đăng nhập và thực hiện lệnh trực tiếp trên máy, bạn cũng có thể SSH vào HTPC để thực hiện các bước tiếp theo.
- Cập nhật các bản vá bảo mật cho HĐH và các gói ứng dụng kèm theo:
Mã:
sudo apt-get update
sudo apt-get upgrade

*Chú ý: Sau khi đăng nhập vào HTPC, bạn có thể nhận được thông báo có phiên bản HĐH mới và yêu cầu gõ lệnh để nâng cấp "New release '13.xx' available. Run 'do-release-upgrade' to upgrade to it." Bạn không nên chạy lệnh trên nếu không muốn gặp rắc rối về tính tương thích hoặc các vấn đề về khởi động...

- Cài đặt các gói giao diện đồ họa (GUI) LXDE bằng các lệnh dưới đây, bạn trả lời Yes (nhấn Y) khi được hỏi có muốn cài đặt không.
Mã:
sudo apt-get install xorg lxde-core lxdm

- Sửa tập tin /etc/lxdm/lxdm.conf để cho phép người dùng htpc tự động đăng nhập khi máy khởi động. Bạn tìm dòng sau:
Mã:
#autologin=
rồi sửa thành:
Mã:
autologin=htpc

- Khắc phục lỗi không cho tắt nguồn/khởi động lại từ trong giao diện người dùng LXDE:
Mã:
sudo apt-get install policykit-1 upower acpi-support
sudo chmod +x /usr/lib/dbus-1.0/dbus-daemon-launch-helper

- Cài đặt trình điều khiển và ứng dụng âm thanh:
Mã:
sudo apt-get install alsa-base alsa-utils

- Cho phép người dùng htpc vào nhóm audio để có quyền sử dụng thiết bị âm thanh:
Mã:
sudo usermod -a -G audio htpc

- Thêm các dòng sau vào cuối tập tin /etc/apt/sources.list để bổ sung nguồn cài đặt xbmc:
Mã:
# XBMC PPA for Ubuntu Quantal - 12.10
deb http://ppa.launchpad.net/team-xbmc/ppa/ubuntu quantal main
deb-src http://ppa.launchpad.net/team-xbmc/ppa/ubuntu quantal main

- Chạy các lệnh sau để cập nhật và cài đặt xbmc:
Mã:
sudo apt-get update
sudo apt-get install xbmc

- Nếu bạn gặp thông báo lỗi "GPG error: http://ppa.launchpad.net quantal Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 6D975C4791E7EE5E", bạn chạy lệnh sau để khắc phục rồi chạy lại các lệnh cài đặt XBMC ở trên:
Mã:
sudo gpg --recv-keys 6D975C4791E7EE5E
sudo gpg --export 6D975C4791E7EE5E | apt-key add -

- Cho phép XBMC tự chạy khi LXDE khởi động xong:
Mã:
mkdir ~/.config/autostart
cp /usr/share/xsessions/XBMC.desktop ~/.config/autostart

- Khởi động lại HTPC để kiểm tra kết quả:
Mã:
sudo reboot

3.2 Cấu hình nâng cao (nếu bạn có thể vào XBMC bình thường và không gặp vấn đề gì về hình ảnh khi phát phim/nhạc thì bạn không cần thực hiện các bước nâng cao dưới đây).
3.2.1 Cấu hình dành cho máy tính dùng card đồ họa nVidia
- Cài đặt driver card đồ họa nVidia cho HTPC:
Mã:
sudo apt-get install nvidia-current

- Cập nhật tập tin khởi tạo RAM Disk và khởi động lại để kiểm tra xem trình điểu khiển card đồ họa mới đã chạy hay chưa:
Mã:
cd /
sudo rm initrd.img
sudo ln -s boot/initrd.img-3.5.0-39-generic initrd.img
sudo chmod +r+x boot/initrd.img-3.5.0-39-generic
sudo reboot

3.2.2 Cấu hình dành cho máy tính dùng card đồ họa ATI/AMD
- Cài đặt driver card đồ họa ATi/AMDcho HTPC:
Mã:
sudo apt-get install fglrx-updates fglrx-amdcccle-updates

- Cập nhật tập tin khởi tạo RAM Disk và khởi động lại để kiểm tra xem trình điểu khiển card đồ họa mới đã chạy hay chưa:
Mã:
cd /
sudo rm initrd.img
sudo ln -s boot/initrd.img-3.5.0-39-generic initrd.img
sudo chmod +r+x boot/initrd.img-3.5.0-39-generic
sudo reboot

3.2.3 Cấu hình dành cho máy tính dùng card đồ họa tích hợp (Intel)
- Không cần thêm bước cấu hình nào nữa.

4. Kiểm tra và chạy thử

5. Điều khiển và quản lý

6. Mở rộng và nâng cấp hệ thống


Đang cập nhật...




Tập tin đính kèm
.gz   tftp_basic.tar.gz (Kích thước: 281,69 KB / Tải xuống: 131)
Trả lời
Send thread to a friend
Send thread to a friend
Send thread to a friend
Send thread to a friend
xtdv
Điều hành cao cấp
Bài viết: 504
5 Likes
   
#2
Thứ năm, 01/08/2013, 15:34 (Bài viết được chỉnh sửa lần cuối vào Thứ bảy, 24/08/2013, 21:21 bởi xtdv.)
Phụ lục:
1. Xây dựng hệ thống thử nghiệm
Đang cập nhật...

2. Các liên kết và nguồn tham khảo:
- XBMC: http://xbmc.org/
- nVidia: http://www.nvidia.com
- AMD: http://www.amd.com
- PXEBootInstall - Debian: https://wiki.debian.org/PXEBootInstall
- PXELINUX - SysLinux: http://www.syslinux.org/wiki/index.php/PXELINUX
- Howto - Diskless Ubuntu: https://help.ubuntu.com/community/DisklessUbuntuHowto
- LinuxQuestions.org - Diskless Workstation: http://wiki.linuxquestions.org/wiki/Diskless_Workstation


Trả lời
Send thread to a friend
Send thread to a friend
Send thread to a friend
Send thread to a friend
xtdv
Điều hành cao cấp
Bài viết: 504
5 Likes
   
#3
Thứ ba, 27/08/2013, 14:10 (Bài viết được chỉnh sửa lần cuối vào Thứ ba, 11/11/2014, 12:10 bởi xtdv. Lý do sửa: Cập nhật. )
Một vài hình ảnh quá trình khởi động và chạy hệ thống:





Trả lời
Send thread to a friend
Send thread to a friend
Send thread to a friend
Send thread to a friend
xtdv
Điều hành cao cấp
Bài viết: 504
5 Likes
   
#4
Thứ hai, 01/12/2014, 18:13
Bạn nào dùng thiết bị Android có thể tải phần mềm dưới đây để điều khiển đầu phát:
https://play.google.com/store/apps/details?id=org.xbmc.android.remote&hl=en


Trả lời
Send thread to a friend
Send thread to a friend
Send thread to a friend
Send thread to a friend



Những người đang xem chủ đề này:   1 khách


  •  Trở lên trên
  •  Liên hệ
  •   XTDV Group
  • Bản thu gọn (Lưu trữ)
© Rush Crafted with ❤ by iAndrew
Chạy trên nền tảng MyBB, © 2002-2021 MyBB Group.
Chế độ thứ tự
Chế độ đề tài
Xem phiên bản để in
Theo dõi đề tài này
Thêm bình chọn
Send thread to a friend