Linux2009. 10. 14. 15:20
 CIFS: UNC Path does not begin with // or \\

execl("/bin/mount", "mount", "-t","cifs", resolv_urn, mount_point, "-o", option, NULL);

일단 resol_urn의 내용은
커맨드 라인상으로는

mount -t cifs //servernam/sharename 혹은
mount -t cifs "//servernam/share name" 혹은

으로 실행이 되는데, execl 에서

sprintf(resolv_urn, "\"//%s/%s\"", servername, sharename);
로 하니 위와 같은 에러가 난다.

곰곰히 생각해보니..

execl() 에서 인자로 넘기는 하나하나에는 공백이 들어가도 상관이 없다!!!
그게 무슨 말이냐면은, 공백까지 인식을 시키기 위해서 " "를 사용하는 것인데
execl() 자체에 들어가는 인자는 이러한 것을 인식한 것이기 때문에
굳이 \" \" 를 써가면서 문자열 내에 " "를 넣을 필요가 없는 것이다.

결론은
sprintf(resolv_urn, "//%s/%s", servername, sharename);
이런 식으로 urn을 입력해주면 상황끝!

'Linux' 카테고리의 다른 글

설치하지 않은 rpm에 포함된 파일의 내용 보기  (0) 2009.11.04
mount() 이용하기 - mount cifs using mount()  (2) 2009.10.22
gnash - GNU SWF player  (0) 2009.09.23
/ 는 root // 는?  (0) 2009.09.22
User Mode Linux - UML  (0) 2009.09.15
Posted by 구차니
Linux2009. 9. 23. 14:25

[링크 : http://www.gnashdev.org/]
[링크 : http://www.gnu.org/software/gnash/]
[링크 : http://en.wikipedia.org/wiki/Gnash]

Gnash is a GNU Flash movie player. Flash is an animation file format pioneered by Macromedia which continues to be supported by their successor company, Adobe. Flash has been extended to include audio and video content, and programs written in ActionScript, an ECMAScript-compatible language. Gnash is based on GameSWF, and supports most SWF v7 features and some SWF v8 and v9.


포팅기
[링크 : http://kelp.or.kr/korweblog/stories.php?story=08/02/12/8083653]


youtube 등의 포털에서 제공하는 swf 동영상은 무엇으로 플레이 할 수 있는지 모르겠따...





March 10, 2009

It has been a very long time since we last made a release and many did not think we would make one again but, back by popular demand, we are proud to announce a new release: FFmpeg 0.5. Check out the release notes and changelog.

It is codenamed "half-way to world domination A.K.A. the belligerent blue bike shed" to give an idea where we stand in the grand scheme of things and to commemorate the many fruitful discussions we had during its development.

This release includes a very extensive number of changes, but some of the highlights are:

  • Significant work to support at least decoding of all widespread mainstream proprietary codecs, such as:
    • decoders and encoders
      • ALAC
      • Flash Screen Video
      • WMAv2 decoder fixed, WMAv1/v2 encoder
    • decoders
      • Atrac3
      • MLP/TrueHD
      • On2 VP3 improvements and VP5/VP6 support
      • RealAudio Cooker and fixes for 14.4 and 28.8
      • RealVideo RV30/40
      • WMV3/WMV9/VC-1 and IntraX8 frame support for WMV2/VC-1

[링크 : http://ffmpeg.org/]

 비디오 종류
    * FLV1:Sorenson H.263
    * FLV4:On2 TrueMotion VP6

[링크 : http://ko.wikipedia.org/wiki/%ED%94%8C%EB%9E%98%EC%8B%9C_%EB%B9%84%EB%94%94%EC%98%A4]

'Linux' 카테고리의 다른 글

mount() 이용하기 - mount cifs using mount()  (2) 2009.10.22
execl()로 mount 실행하기 - samba  (2) 2009.10.14
/ 는 root // 는?  (0) 2009.09.22
User Mode Linux - UML  (0) 2009.09.15
Avahi daemon은 머하는 넘인고?  (0) 2009.09.14
Posted by 구차니
Linux2009. 9. 22. 17:15
[morpheuz@localhost /]$ cd /
[morpheuz@localhost /]$ cd //
[morpheuz@localhost //]$

make 를 실행하다가 경로중에 // 나 /// 가 들어가는 경우가 있어
오작동을 하면 어떡하나 하고 고민했는데 제대로 들어 가는 것 같긴하다(써글 삼바!)

아무튼, 검색을 하려고 해도 특수문자라서 무시당해 검색도 못하는 비운의 문자열이긴한데..
도대체 cd / 와 cd //의 차이는 멀까?
Posted by 구차니
Linux2009. 9. 15. 18:28
Unified Modeling Language 말고 리눅스에서도 UML이 있다 ㄱ-
일종의 colinux linux 버전 같기도 하고..

아무튼 한빛미디어의 홈페이지에서 간간히 걸려나오는데
페이지 제목은 "시스템 재해 복구 연습 해보기" 이다.
[발견 : http://network.hanb.co.kr/print.php?bi_id=267]
20100123 추가
-> 링크 변경 [링크 : http://www.hanb.co.kr/network/view.html?bi_id=267]

UML을 이용하면 리눅스 상에서 독립된 리눅스를 만들어서
임의로 시스템을 파괴하고 복구해볼수 있도록 되어 있는 듯 하다.

[링크 : http://user-mode-linux.sourceforge.net/]

Posted by 구차니
Linux2009. 9. 14. 16:08
간단하게 네트워크 공유 상태를 갱신해주는 녀석이라고 보면된다.
zeroconfig 라고도 하는데 음.. 아무튼 samba에서도 연관이 있으니, avahi 데몬은 켜주는게 쓰게 편할듯 하다.

[링크 : http://www.asianux.co.kr/support/updateView.php?no=1526]
[링크 : http://en.wikipedia.org/wiki/Avahi_%28software%29]
Posted by 구차니
Linux2009. 9. 11. 19:13
cat /proc/filesystems

proc 파일 시스템에
filesystems라는 파일에 사용가능한 FS-type이 있다고 한다.

]$ cat /proc/filesystems
nodev   sysfs
nodev   rootfs
nodev   bdev
nodev   proc
nodev   cpuset
nodev   binfmt_misc
nodev   debugfs
nodev   securityfs
nodev   sockfs
nodev   usbfs
nodev   pipefs
nodev   futexfs
nodev   tmpfs
nodev   inotifyfs
nodev   eventpollfs
nodev   devpts
        ext2
nodev   ramfs
        iso9660
nodev   mqueue
        ext3
nodev   rpc_pipefs
nodev   autofs
nodev   nfsd

위의 내용은 FC6 2.6.18-1.2796.fc6xen의 filesystem 내용이다.
음.. CIFS나 SMB가 없는데 어떻게 삼바를 마운트 하나 -ㅁ-?
[링크 : http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/system_programing/proc/GetSMSInfo]


아무튼, 그리고 저기의 nodev의 의미는 실제장치명을 필요로 하지 않는 녀석이라고 한다.
머.. mount시에 일반적으로
mount -o "타입" "장치명" "마운트될 위치"
으로 실행이 되는데, 굳이 장치명을 기술하지 않아도 되는 녀석이라는 의미이려나?
[링크 : http://kldp.org/node/92546]
Posted by 구차니
Linux2009. 9. 2. 17:59
$ man grep
       -v, --invert-match
              Invert the sense of matching, to select non-matching lines.

-v 옵션은 invert match로 문장을 포함하지 않는 줄을 출력해준다.


사용예 : 주석이 아닌 줄만 찾기
Posted by 구차니
Linux/Ubuntu2009. 9. 1. 09:34
apt-get은 네트워크 검색을 하기 때문에(물론 하드에서 받아 놓지만) 필요한 패키지를 검색할 수 있다.
물론 GUI 프론트 엔드인, Synaptic Package Manager로 해도 되지만, 리눅스의 기본은 콘솔아니겠는가!!! ㅋㅋㅋ

검색시에는 apt-cache 라는 명령어를 사용한다.
 $sudo apt-cache search "패키지 이름"

설치시에는 apt-get 이라는 명령이를 사용한다.
 $sudo apt-get install "패키지 이름"

[링크 : http://kldp.org/node/55227]

[링크 : http://linux.die.net/man/8/apt-get]
[링크 : http://linux.die.net/man/8/apt-cache]
Posted by 구차니
Linux/Ubuntu2009. 8. 31. 13:40
fedora용 패키지라서 그런지 rpm으로 나와있는데, 이녀석들을 설치하려고 하니
rpm: To install rpm packages on Debian systems, use alien. See README.Debian.
error: cannot open Packages index using db3 - No such file or directory (2)
error: cannot open Packages database in /var/lib/rpm
이런 에러를 발생시킨다.

일단 rpm을 위한 DB가 존재하지 않아서인데
이를 설치하기 위해서는
$ sudo mkdir /var/lib/rpm
$ sudo rpm --initdb
를 실행하고 나서 하면된다. --initdb 명령의 경우에는, 아무런 출력 메시지가 없었다.



아래와 같은 에러가 발생하면서 설치가 안된다면
error: can't create transaction lock on /var/lib/rpm/__db.000
sudo rpm 으로 실행하면 된다.

[링크 : http://kldp.org/node/53463]



alien 이라는 debian 프로그램은, rpm을 deb로 변환해준다고 한다.

[링크 : http://embraceubuntu.com/2005/09/23/installing-using-an-rpm-file/]

'Linux > Ubuntu' 카테고리의 다른 글

gnome panel에 온도 정보 넣기  (0) 2009.11.02
apt-cache 패키지 검색 하기  (0) 2009.09.01
ubuntu에서 compiz 돌리기  (2) 2009.06.02
우분투에는 iptable 대신 ufw가 있다!  (2) 2009.05.07
ubuntu에 cvs / svn 설치하기  (0) 2009.04.30
Posted by 구차니
Linux2009. 8. 21. 19:50
임베디드 시스템은 대개 모니터가 없기 때문에
시리얼 포트를 console로 사용한다.

그런 이유로, 시리얼 포트는 Terminal 모드로 열리게 되고,
그 시리얼 포트는 공용으로 사용하게 된다.

이러한 터미널 모드로 열린 녀석을 점유하기 위해서는 다른 녀석들의 프로세스를 죽이는 방법뿐이라는데..
상대는 셸과 커널이다... 죽이면 죽는다.. OTL
게다가 respawn 될테니 이길수가 없다...!!


아무튼 이러한 상황에서 /dev/ttyAS0 에서
프로그램을 실행하여 시리얼 입력을 받게 할경우,

원인은 모르겠지만 "\t\n\n" 을 먼저 보낸 후, 메시지를 보내야만 받는 현상이 있었다.
물론 100% 받는것도 아니고 대략 50~70% 정도의 응답을 하고, 프로그램적으로 하지 않고
손으로 직접입력하면 탭하나에 문자 하나 겨우 입력하는 수준이다. 그것도 타이밍을 맞추어야 겨우 하나 들어간다.


[링크 : http://linux.about.com/od/ttl_howto/a/hwtttl17t17.htm]
Posted by 구차니