컨텐츠 영역
돌아 오라 돌아오라 모두들 돌아오시라.. 읽어보고 도움좀 주시라..
2015.03.09 14:54
젠투에서 삼성 갤럭시 폰 s3 를 인식시키기 위해 정보를 찻더중
wiki에 올라온것이 있어서 나름정리를 해본뒤 인스톨 해보려한다.
젠투의 커널을 3.18. 5 버전으로 업그래이드 한후....
이전의 커널에서 신경쓰지 않던 갤럭시폰을 인식시키고 싶어 졋다.
Usb 에서 다른 디바이스 저장장치를 인식하는것을 보면 (샏디스크의 메모리하드,usb 등)
멀티 usb 리더기가 재대로 작동하는것으로 판단되나.
갤럭시폰을 꼽으면 무반응이엇다.
인터넷을 찻아보니.
커널 의 옵션중 file systems 항목의
FUSE support 를 활성화 하고
mtp 옵션역시 건드려 주어야한다는 포스팅이 올라왓다.
make menuconfig 로 옵션을 불러 항목을 체크해보니 이미 모듈로 옵션이 처리되어 있엇음으로
커널안에 심는건 일단 보류 하고 아래의 항목들을 시도 해본뒤 인식이 안되면 커널자체에 심기로 하엿다.
개인적으로 make menuconfig 한뒤
메뉴가 떳을때 / 키를 눌러 찻기 명령을 내리고 Mtp 를 검색하게 하엿더니 네트웍파일시스템 에 관련하여 옵션이 있엇지만 완벽하게 매칭된 단어는 아니엿다.
아래의 것들을 시도 본뒤 인식이 안된다면 이부분을 활성화 한뒤 커널을 다시 컴파일 해보기로 햇다.
다음의 지원파일과 라이브러리도 필요하다.
sys-fs/mtpfs
media-libs/libmpt
configration 을 설명하면서
plugdev 를 id그룹에 추가 하랜다.
즉 root가 아닌경우 플러그dev 에 접근할수 없으니 유저 아이디를 그룹에 추가하라는 이야기인것으로 일단 받아 들엿다. root말고 보통은 kjkim 이란 아이디를 사용함으로
gpasswd
-a kjkim plugdev
이라고
명령을 내릴것이 지만
일단
아래는 원문을 고대로 카피해 놓앗다
..
혹시
이글을 읽는 용자들중 똑똑하신분은 내의도를 간파하시고
자신도
적절히
id
를
바꾸어넣어 주시기 바란다
.
root
#
emerge --ask mtpfs
Configuration
Your user needs to be in the "plugdev" group:
root
#
gpasswd -a YOUR_USER plugdev
Modify your /etc/fuse.conf:
FILE
/etc/fuse.conf
이외에 몇개의 유틸도 필요한듯하다.
Install 항목에는 다음의 파일을 가르키고 있다.
sys-fs/simple-mtpfs
와
그놈과 KDE 환경하에서 필요한 각각의 프로그램이름이 적혀있다.
우선 gnome 환경에선
플레그를 mtp 로 활성화 하고
gnome-base/gvfs 항목을 인스톨한다.
Kde 환경에선
kio-mtp 를 인스톨하라고 되어 있다.
Kde 는 별도의 세팅환경도 소개하고 있엇다.
root
#
echo
kde-misc/kio-mtp >> /etc/portage/package.accept_keywords
root
#
emerge
--ask kio-mtp
솔라리스와 리눅스 각각의 시스템하에서 아래의 항목도 인스톨 하라는 정보가 있엇다.
gMPT
media-sound/gmtp
볼륨에 관해 (어째서 소리에 관한 풀그램을 인스톨하는지 이해하지못하고 있다.)
xfce-extra/thunra-volman
가정을 몇가지 내려본다.
이제까지의 배포본들은 갤럭시폰에 연결이 되지 않아도
일단 device 의 존재를 알아차려 주는 행동은 햇엇다.
가령 usb 에 연결하면 최소한 알수없는 장치 정도로는 인식을 햇다.
물론 데이터를 교환 하지는 못햇고 인식불량 무한루프에 빠지기도 햇다.
현제의 젠투는 어떤 디바이스가 연결되었는지 조차도 알아차리지 못햇다.
즉 최소한의 반응이 없다. 완전 무반응이다. 그래서 일단은 커널수준에서 뭔가 부족한 부분이 있지 않을까 의심을 해보지만 모듈로딩은 auto 로 세팅되어 있고 pnp 인지기능은 모듈이 아닌 커널에 때려 박아 넣엇음으로 슬쩍 강행해보기로 한다.
제일먼저 인스톨을 권유한 파일항목의 이름이 fs 로 끝낫다.
일단이것이 파일시스템을 말하는 것이라고 가정하면 mtpfs를 이머징한뒤 어떤 반응을 기대할수도 있을지 모르겟다.
갤럭시폰의 file system은 탈옥버전이 아닌이상 vfat 인거로 기억하고있고 위의 것이 파일시스템이면 뭔가 부딛치지 않냐는 마음의 소리는 .. 그럼 프로토콜이겟지 뭐 하는기분으로 가비얍게 즈려 밟아주기로 햇다.
플레그는 debug , mad 두가지를 잡을수 있는데.
Mad 플러그는 mp3 메타데이터를 조종한다고 나와 있다.
디폴트 값은 X 로 표시되 있는 것으로 봐서 이것이 필수 적인것은 아닌듯..
해서 그냥 이머지 명령만 내리기로 하고 아래의 명령으로 일단 상태를 보기위해 실행햇다.
emerge -pv sys-fs/mtpfs
Calculating dependencies... done!
[ebuild N ] media-libs/libmtp-1.1.6-r1 USE="crypt -doc -examples -static-libs" 717 KiB
[ebuild N ] sys-fs/mtpfs-1.0 USE="-debug" 102 KiB
Total: 2 packages (2 new), Size of downloads: 819 KiB
위에 설명한 라이브러리가 기본으로 딸려 들어온다. 아마도 필수적인듯..
하지만 설명과는 달리 debug 플레그는 오히려 제거 하게 되어 있다. -debug
붉은색으로 나오는 플레그는 make.conf 에이미 설정되엇다는 메세지로 보고 굳이 안써도 됨으로
USE=”-debug” 를 명령행에 추가만 하기로 하고 아래처럼 명령을 내려본다.
Root linux # USE="-debug" emerge sys-fs/mtpfs
성공적으로 이머징이 끝나고 아래처럼 마운트를 실행하라는 에러가 나왓다.
* To mount your MTP device, issue:
* /usr/bin/mtpfs <mountpoint>
* To unmount your MTP device, issue:
* /usr/bin/fusermount -u <mountpoint>
일단 마운트를 시도 하기전에 검색으로 찻아본 정보중
plugdev 그룹에 포함시키기위해 아래의 환경변수를 만들어 주었다.
cat >> /etc/fuse.conf
user_allow_other
다음 마운트할 디랙토리(마운트포인터)를 만들엇다.
**만일 성공적으로 마운트가 된다면 fstab에 등록하여 다른 id로 접속해도 인식이 되게끔
처리해줄수도 있을것같다.**
mkdir ~/androidDevice
명령을 내리니
Unable to open ~/.mtpz-data for reading, MTPZ disabled
에러 메세지가 떳으나.
같이 보여주어야할 device 에러메세지는 나오지 않앗다.
찻아본 정보대로 라면 시도한 divice의 메세지 가 함께 떠서서 무었에대한 에러인지를 보여주어야 햇다.
곰곰히 생각해 보다 내 걸럭시 폰의 전원이 파워off 상태라는 것을 알앗다 -0-
재시도 아니..일단 usb에서 분리하여 다시끼워 리턴값이 들어 가면 어떻게 되는지
상황을 보기로 햇다.
Usb 를 연결햇지다. 예상 햇지만 무반응...
다시 위의 명령을 내려본다.
역시 디바이스가 잡히지않고 위에처럼 첫줄의 에러메세지만 보인다.
리붇을 해볼까
하다..
여지것 리눅스를 사용하면서 배운것은
리부팅이란 최악의 상황에서 할수있는 해괴한 짓거리 라는걸 배웟다.
windows의 옵션명령처럼 자리잡은 아무때나 하는것은 아니라는 이야기다.
대신 명령을 내려
환경변수를 읽어 보기로 햇다.
쓸모없는 짓이란걸인지하고 있지만 지푸라기 잡는 심정 이다.
evn-update
마찬가지..
무었이 빠졋나 읽어보던중..
plugdev 그룹에 현제 아이디를 포함하는 명령행을 빼먹은것을 찻앗다.
재시도
gpasswd -a kjkim plugdev
준뒤 반응이 똑같음..
혹시 모듈로 컴파일된 fue 커널 세팅문제일수도 있겟다싶어 일단
관련모듈을 찻아 강제로 올려보기로 햇다.
일단 남은 관련파일을 강행하고 고민해보로 햇다.
나의 시스템은 gnome extra 필수 파일몇개와 라이브러리를 깔고 그위에 cinnamon 2.4 를 덧씌웟음으로 그놈에 해당하는 풀그램을 이머징하려햇다.
아래의 에러가 떨어졋음으로
/etc/portage/pakage.accept_keyword 에 아래의 것을 블럭복사 한뒤
# 를 주고 나중을 위해 알아볼수 있게 추가햇다.
#갤럭시폰을 세팅하기위해 추가 20150310
=sys-fs/go-mtpfs-9999 **
# required by sys-fs/go-mtpfs-9999
# required by go-mtpfs (argument)
=dev-libs/go-fuse-0_p20140812-r1 ~amd64
#-------------------------------------------
명령을 내리니.. 파일이 깔리기 시작하는데..
아차..
정작 필요한 놈은 실패하고 라이브러리만 성공한뒤 멈춘다.
실패한 파일이름과 버전을 보니 9999 로 끝난다.
우 엉... 이건 혹시 정식 포타지 에서 지원하지 않고
rebild 라던지 오버래이 라던지 하는 스킬이 필요한거 아닌가 ?
아..좌절...난 아직 이스킬을 써먹을줄을 모른다. 며칠전 시도 햇다가
뭔가 좀 복잡하고 관련 설명도 부족해서 포기해 버렷었다. -0-
이제겨우 포타지 와 emerge 를 쓸때 팩키지 파일을 추가해 블럭과 버전 에러를 피하는 수준을 흉내 중인데....
아..아직은 공력이...주화 입마가..크흑 이건 넘사벽 이야.. -0-
댓글 2
-
사랑천사
2015.04.03 15:28
-
잉여양파
2015.04.13 14:55
흠.. 아마도 다른게 문제가 있지는 않을거구요.... 일단 자유게시판이기는 하지만.. 활성화 차원에서(?) 답글은 올려봅니다.
갤3을 인식시키는데에 관련된 순서를 먼저 살펴보는게 중요할것 같습니다.
1. 커널에서 plug된 device 를 udev(또는 system) 에서 인식을 시킨다
2. kernel 에 들어있지 않은 파일시스템의 경우 fuse 쪽으로 넘기고 fuse 는 스스로가 인식할 수 있는 module 을 찾는다
3. mount 를 시키는데 이때 mtpfs 파일시스템인 경우 해당되는 fuse module 이 설치되어있으면 그것을 이용해서 mount 를 진행한다.
일단 안드로이드 폰을 꼽으셔서 dmesg 에 폰이 꼽히는 메세지가 뜨는지를 보시고
fuse 자체를 테스트하고 싶으신거라면 ntfs-3g 를 설치하셔서 fuse 를 통해 NTFS 파일시스템이 자동으로 mount 가 되는지를 보셔야 할것 같습니다.
저는 gnome 3 - gentoo - systemd 입니다만.. 별다른 이상없이 mtpfs 가 자동으로 인식되는 상황이고 nautilus 에서 마우스로 더블클릭하면 해당되는 디바이스가 mount 되는 상황이거든요
(웬지 모르겠지만 libimobiledevice 는 잘 안되고 있지만... 큰 상관은 없겠죠)
일단 mtpfs 를 이용해서 console 에서 수동으로 mount 를 진행하신다면
사용하시는 desktop 환경의 vfs 또는 udev(systemd) 와의 연동이 정상적이지 않은 경우로 판단하시면 되곘습니다.
(물론 해결법이야 순서에 맞춰서 해당 프로그램들을 re-compile 하는게 되겠습니다만)
저는 gvfs 에서 필요한 부분을 담당해주고 있기 때문에
libmtp-1.1.6-r1
mtp 관련은 fuse 를 제외하면 이것 하나만 설치되어 있네요 :D
쉽지 않은걸 하고 계시네요.
여기에 다들 자주 오진 않으세요 요즘은.
Facebook 그룹도 있으니 오셔서 글을 올려 보시면 뭔가 답이 나올 지도 모르겠군요.
그리고...
usbutils 설치하셔어 lsusb는 해 보셨나요? 장비 자체가 일단 인식은 되는지 확인해 볼 필요가 있을 거 같아 보입니다.