Barg the Blog

You're looking at an article archive of Barg the Blog, all contents here are no longer updated.

Please update your bookmark to Grid.in.th.


Transmission, Clutch, Gear

Transmission ตั้งแต่เวอร์ชั่น 1.3 เป็นต้นมา เพิ่มฟีเจอร์สั่งงานผ่านหน้าเว็บ ถึงแม้มันจะหน้าตาเหมือนกันกับ Clutch เด๊ะๆ แต่เอาเข้าจริงแล้ว มันคือการเขียนใหม่หมด และเรียกใช้งาน JSON-RPC Interface ใหม่ที่ถูกเพิ่มมาในเวอร์ชั่นเดียวกัน โดยไม่ต้องผ่าน PHP เหมือนที่เคย

การติดตั้งบนลินุกซ์น่าจะเป็นไปได้ง่ายๆ เพียงแค่ลงแพคเกจ transmission-daemon (หรือ transmission-cli ใน Debian-based distro) แต่สำหรับในกรณีของ FreeBSD นั้น ตัวเว็บมันถูกแยกออกไปเป็นแพคเกจ transmission-web อีกต่อ ดังนั้นจึงต้องลงด้วยกันสองแพคเกจ

  1. /usr/ports/net-p2p/transmission-daemon
  2. /usr/ports/www/transmission-web

หลังจากลงเสร็จเรียบร้อย เนื่องจากว่า transmission-daemon นั้นไม่แถม init-script มาให้ จึงจำเป็นต้องเขียนเอง โชคดีที่บน FreeBSD นั้น การเขียน init-script ให้เป็นไปตามต้องการนั้นง่ายมาก ที่ผมเขียนไว้มีหน้าตาแบบนี้ (โยนลง /usr/local/etc/rc.d/transmission)

#!/bin/sh
#
# PROVIDE: transmission
# REQUIRE: DAEMON
#
# Add the following lines to /etc/rc.conf to run transmission:
#
#transmission_enable="YES"

. /etc/rc.subr

name="transmission"
rcvar=${name}_enable

load_rc_config ${name}

: ${transmission_enable="NO"}
: ${transmission_user="nobody"}
: ${transmission_args=""}

command=/usr/local/bin/transmission-daemon
command_args="-g /usr/local/etc/transmission $transmission_args"

run_rc_command "$1"

หลังจากนั้นก็ไป enable transmission ใน /etc/rc.conf ด้วยการเพิ่มบรรทัด transmission_enable="YES" พร้อมปรับแต่ง arguments อีกเล็กน้อยผ่านทาง transmission_args สำหรับ arguments ที่ใช้ได้ทั้งหมดก็เปิด man transmission-daemon เอา

อ้อ ก่อนหน้านั้นต้องทำการสร้างไดเรคทอรี่ /usr/local/etc/transmission ด้วย เอาไว้เก็บพวกข้อมูลเช่นพวกไฟล์ torrent ต่างๆ (น่าจะมีที่เก็บที่ดีกว่านี้นะ เช่นใน var?) แล้วก็เริ่มโหลดได้อย่างสบายใจ

Back