늦은 밤, 친구가 갑자기 음악 좀 보내달라고 할 때

kirrie의 이미지

#1.
비슷한 음악을 좋아하는 친구놈이 하나 있습니다. 직장생활을 하는 놈이라 낮에 메신저에 있을때 말을 걸어도 대답을 하는 경우가 극히 드물고, 퇴근하고 나서 특별한 일이 없을때, 한 열시에서 열두시 사이에 가끔 말을 겁니다. 오늘은 뜬금없이 말을 걸어서 음악 파일 좀 보내달라는군요. 어찌어찌해서 하드에 파일이 하나도 없답니다.

#2.
곧 자야 할 놈이기 때문에 가장 빠르게 파일들을 녀석에게 보내주어야 합니다. 그래서 몇가지 방법들을 생각해서, 그 중에 구현에 시간이 걸리는 것은 제외하고, 가급적 준 컴맹인 녀석이 쉽게 파일을 다운로드 할 수 있는 방법을 택하기로 했습니다.

#2-1.
'메신저를 통해서 준다.'
저는 pidgin(gaim)을 사용해서 MSN에 접속해 있고, 녀석은 윈도우즈에서 MSN 메신저를 이용해서 접속중입니다. 하지만 제 경험상 (공유기를 통해서) 윈도우즈에서의 MSN 메신저끼리 파일 전송도 제대로 잘 해 본 적이 없습니다. 게다가 수많은 파일 가운데서 어떤걸 친구가 원하는지도 모르니까 말이죠. 요즘엔 MSN 메신저도 메신저가 마치 파일 공유를 위한 프로그램처럼 폴더 단위로 공유가 가능하다고 알고 있습니다만, 일단 그게 pidgin에서 지원하는지 아닌지 찾아봐야 하고, 지원한다면 또 어떻게 구현해야 하는지도 찾아봐야 하므로, 일단 제외하기로 했습니다. 그래서 결론적으로 메신저 공유는 No!

#2-2.
'ftp 서버를 통해 접근하게 한다.'
녀석이 제가 운용하는 서버에 홈페이지를 쿵짝쿵짝 만들어서 놀고 있기 때문에 전에 ftp 사용법은 단단히 가르쳐 두었거든요. 그래서 가능하다면 ftp를 통해 제 파일에 접근하도록 하는게 가장 좋은 선택일 수도 있었습니다. 하지만, 데스크탑에서 ftp 서버를 돌릴 일이 전혀 없었기에 아직 설치해두지도 않았고, 설치 한다면야 할 수도 있었겠지만 앞으로 또 언제 쓰게 될지도 모를 프로그램을 까는게 좀 그랬고, 두번째로 접근을 위한 계정을 알려주는 것도 일이었습니다. 이 경우에 adduser를 통해 새로운 계정을 생성하거나, anonymous 접근을 허용하거나, proftpd의 경우 mysql을 통해 인증을 하도록 할 수도 있지만... 모두가 다 맘에 들지 않았습니다. 일도 많아질 것 같고... 그래서 암튼 패스!

#2-3.
'apache를 통해 접근하게 한다.'
다행히 작업을 위해 apache는 항상 켜두고 있었거든요. 그래요! 이겁니다! 그래서 일단 virtualhost 가운데 default 셋팅을 새로 해서 (DocumentRoot를 음악 파일이 있는 디렉토리로 지정한 다음, <Directory...> 설정에서 Options Indexes를 추가해주었습니다.) 아파치를 재부팅하고 로컬에서 제대로 보이는지 확인해 보았습니다. 어랏? 접근 권한이 없다고 나오는군요. 문제가 뭘까.. 잠깐 생각해보니 음악 파일들은 vfat으로 마운트된 다른 하드디스크에 있다는데 생각이 미쳤습니다. 그리고 전에 언뜻 보니 권한이 소유자와 그룹에만 주어졌던 것도 기억나고.. 확인해보니 역시나 소유자는 root, 그룹은 plugdev로 되어 있으며 그 둘에만 모든 권한이 있었습니다.

sudo chmod +r musics/ -R
를 해주고 다시 아파치를 재부팅 해 봅니다. 그러나 여전히 접근 권한이 없다는 에러 메세지가 보입니다. 파일을 보니 권한이 변경되어 있지 않았습니다. 이상하군요.. 분명 root에서 권한을 변경했는데 말이죠. 친구는 슬슬 왜 안보내주냐고 닥달하기 시작합니다. 에라 모르겠다, plugdev그룹에 아파치 실행 계정인 www-data를 추가해주었습니다.
sudo vi /etc/group
...
..
 
plugdev:x:46:haldaemon,kirrie[,www-data] <-- 이렇게 추가해주었습니다.
아파치를 재시작하고 나니 정상적으로 파일들이 보입니다. 이제 공유기에서 포트포워딩을 통해 외부 포트 44243(외부 포트의 경우 임의로 지정해 준 것입니다. 일반적으로 80번 포트가 막혀 있을 경우 8080을 이용하지만, 제 경우는 8080도 막혀 있더군요.)를 192.168.0.2(제 컴퓨터가 공유기로부터 받아 온 내부 IP입니다.)의 80포트로 포워딩 하도록 설정하고, 친구에게 http://현재_ip:44243 주소를 알려주니 친구는 고마워라 하며 파일을 받아갑니다!

#3.
파일 전송 방법이야 이것 말고도 찾아보면 무궁무진하게 더 있겠지요. 아마 삼바(samba)를 이용할 수도 있었을 겁니다. 아니면 아예 제가 virtualbox를 통해 윈도우즈로 부팅한 뒤에 MSN 메신저나 네이트온 메신저를 켜서 시도해 볼 수도 있었겠구요. 하지만 제 머리로 급하게 생각해 낸 방법은 위의 것이 전부였고, 아무튼 잘 되었으니 다행이라고 생각합니다.

#4.
어떤 문제가 생겼을 때 그 문제를 해결하는 방법은 정말 많습니다. 하지만 가장 좋은 방법은 언제나 1. 내가 잘 알고 있고, 2. 가장 빠르게 해결할 수 있는 방법이 아닐까 합니다. 또, 항상 문제를 해결한 다음에는 문서로 남겨 두는 것이 좋겠지요.

#5.
제가 해결한 방법은 저에겐 최선이었지만, 여러분들에게는 최선이 아닐 수도 있습니다. 혹시 서로 다른 플랫폼에서 쉽게 파일을 전송할 수 있는 다른 방법이 있다면 알려주세요!

댓글

Raz의 이미지

"전송"이라고 할 수는 없겠지만,
Wine으로 폴더플러스를 이용합니다 ^^;
한쪽에서 업로드하고, 다른 한쪽에서 받아가는거죠.
ID/PW 공유하면 공짜로 할 수 있으니까요 ㅎ;
속도도 빨라서 괜찮더군요 ^-^
----------------------------------------------------
DELL XPS M1530
-Intel(R) Core(TM) 2 Duo Processor T7700
-4GB (2x2G) 667MHz Dual Channel DDR2 SDRAM
-NVIDIA(R) GeForce(R) 8600M GT
http://thegarage.tistory.com

'
----------------------------------------------------
DELL XPS M1530
-Intel(R) Core(TM) 2 Duo Processor T7700
-4GB (2x2G) 667MHz Dual Channel DDR2 SDRAM
-NVIDIA(R) GeForce(R) 8600M GT
http://thegarage.tistory.com

kirrie의 이미지

아, 넵. 다행히도 저희 둘 다 폴더플러스를 이용하니까 이 방법도 좋겠네요.
근데 분명히 전에는 와인에서 폴더플러스 클라이언트를 실행하면 검색이 안됐는데,
Raz님 글 보고 다시 설치해서 실행하니까 검색도 잘 되고 다운도 잘 되네요.. -_-;;
전엔 왜 안됐을까..
--->
데비안 & 우분투로 대동단결!

--->
데비안 & 우분투로 대동단결!

nike984의 이미지

멜로 한두곡만 보내세요
뭘 많이 보내요?

kirrie의 이미지

그냥요.
--->
데비안 & 우분투로 대동단결!

--->
데비안 & 우분투로 대동단결!

아르아의 이미지

다만 apache나 group관련 설정까지 고쳐야 하기때문에
초보자는 힘들것 같습니다.
저같은 초보자 입장에서 생각해본다면

친구분이 제공해주는 서버에 홈페이지를 운영중이라 하셨으니
서버에 ssh는 돌리고 계실것 같습니다.
ssh로 파일공유용 계정을 공유한 후,
filezilla같은 프로그램을 통해 sftp로 접속하면
쉽게 GUI인터페이스로 파일 공유를 할 수 있을것 같네요.
ssh서버만 있으면 되니
복잡하고 안정성도 떨어지는 ftp서버를 따로 운영할 필요없다는 장점도 있고요.

아파치로 공유하고 싶으면
홈페이지에 디렉토리를 만들어 놓은 후 filezilla로 업로드 하는 방법도 좋을것 같습니다.

kirrie의 이미지

빙고! sftp가 있었군요. 이 참에 관리하는 서버에서 ftp를 다 죽여놓아야겠습니다.
좋은 정보 감사합니다. ^^
--->
데비안 & 우분투로 대동단결!

--->
데비안 & 우분투로 대동단결!

7339989b62a014c4ce6e31b3540bc7b5f06455024f22753f6235c935e8e5의 이미지

Berryz WebShare 같은 소프트웨어가 리눅스 용으로 있으면 좋을 것 같네요.

kirrie의 이미지

네, 있었다면 그게 더 좋았을뻔 했네요.. ^^
이참에 한 번 만들어 볼까.. ;)
--->
데비안 & 우분투로 대동단결!

--->
데비안 & 우분투로 대동단결!

랜덤여신의 이미지

저는 웹셰어를 Wine으로 돌립니다. 잘 돌아갑니다.
----
블로그 / 위키 / 리눅스 스크린샷 갤러리

ajck의 이미지

FAT 파일 시스템은 디자인에서 부터 per file unix-style permission을 지원하지 않습니다. 보통 vfat으로 마운트 할 때 옵션으로 퍼미션을 정할 수 있게되어있거든요. 사실 chmod 하셨을 때 에러메시지가 안 뜬게 의아하게 생각되네요.. FAT 파일 시스템을 써본 적이 너무 오래되서 정확하게 어떤 식으로 처리가 되는 지는 가물가물하네요.

kirrie의 이미지

일반 사용자 권한으로 chmod를 하면 당연히 퍼미션 에러가 났었고,
루트로 하니까 에러는 나오지 않더라구요. 대신에 하드를 굉장히 긁어대는 소리는 났습니다.

그런데 현재 vfat으로 포맷된 하드가 utf8로 마운트 되어 있는데, 이걸 그냥
윈도우즈에 붙이면 어떻게 될까요? 한글은 다 안나온다던가.. 뭐 그런 문제가 생길까요?
--->
데비안 & 우분투로 대동단결!

--->
데비안 & 우분투로 대동단결!

M.W.Park의 이미지

음악 파일만 공유하실 목적 이라면 이런 것도 있는 거 같군요.
패키지 설명에는 mp3, ogg 형식이 지원된다고 나오네요.

~$ apt-cache search libapache-mod-mp3
libapache-mod-mp3 - turns Apache into a streaming audio server

-----
오늘 나의 취미는 끝없는, 끝없는 인내다. 1973 法頂

-----
오늘 의 취미는 끝없는, 끝없는 인내다. 1973 法頂

kirrie의 이미지

오.. 재밌는 모듈이네요. shoutcast/icecast를 지원한다고 하니 나중에 인터넷 방송같은거
할때 유용할 것 같습니다. ^^
--->
데비안 & 우분투로 대동단결!

--->
데비안 & 우분투로 대동단결!

kickme의 이미지

보유하고 계시는 음원이 많으시다면, http://en.jinzora.com/
php 기반 스트리밍 서버를 써보시는 것도 괜찮겠네요.

rootroot의 이미지

요즘 KDE가 상당히 편해져 공유하고 싶은 폴더를 파일공유 시키서 공유가 가능하더라고요.

친구가 음악파일좀 보내라고 버디 아이디 물어보길래

그냥 'http://현재사용중인 IP:8080/공유하고 싶은 폴더 이름' 이리로 접속해서 보내줬습니다.

속도는 저희집 인터넷 업로드 속도가 쪼금 느려서 쫌 기다렸습니다.

예전에는 FTP 서버 키고 난리?를 피웠지만 지금은 쉽게 공유할 수 있어서 편하네요.

----------------------
네이버 블로그 - http://blog.naver.com/toortoorop
메일 - rootroot2@gmail.com
last.fm - http://www.last.fm/user/roottoor
피카사 웹 엘범 - http://picasaweb.google.com/rootroot2

dragonkun의 이미지

아파치를 이용하시면 musicindex 모듈을 한 번 써보세요..
깔끔한 인터페이스에 스트리밍도 지원했던 걸로 기억합니다.
--------------------
Emerging the World!

Emerging the World!

문태준의 이미지

다음날 택배로 보낸다! 히히~ 진지한 이야기 나누는데 썰렁하게 하나요???

정말 급한거 아니라면 그렇게 급하게 살 필요가 없을듯...

---------------------------
문태준
http://tunelinux.pe.kr
http://database.sarang.net

---------------------------
문태준
http://groups.google.co.kr/group/sysadminstudy 시스템어드민 공부모임
http://tunelinux.pe.kr
http://database.sarang.net

송지석의 이미지

sudo chown o+r music -R

이렇게 하셔야 했을 듯합니다. :-)
아니려나요? ㅎ

With lots of love..
Daniel Jiseok Song

doodoo의 이미지

근데..가끔 웹서버 포트를 막아놓은 ISP가 있어요...제가 지금 ftp, web 다 막혀
있거든요...

그래서 파일질라를 통한 ssh 전송이 최선이어서 지금 그렇게 쓰고 있어요...

무한포옹의 이미지

냉무(검색하면 많이 나와요)
-------------------------------
인생 뭐 있음!

-------------------------------
== warning 대부분 틀린 얘기입니다 warning ===

doodoo의 이미지

nc 가 윈도용도 있어요?
몰랐네...!!??

나는오리의 이미지

"다음, 엠파스 등의 대용량 메일을 이용해서 보내고 잠을 잡니다."가 제가 볼땐 최선일것 같아요 :)

kirrie의 이미지

최근엔 다 때려치우고 픽짜를 쓰고 있습니다. http://www.piczza.com air 기반이라 플랫폼에 상관없이 다 사용할 수 있고 2기가까지는 무료입니다.
(개발자와는 아무 관계 없어용 ^^;;)
--->
데비안 & 우분투로 대동단결!

--->
데비안 & 우분투로 대동단결!

cjh의 이미지

http://www.getdropbox.com/ 도 있지요...

--
익스펙토 페트로눔

--
익스펙토 페트로눔

jsj3579의 이미지

무시한다

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.