logo   
한국어 Select Language
FF 포럼
포럼지기에게 한 마디
공지사항
뉴스 EZ보드 통합 메뉴얼
FA-VUS 개발환경 !강추! 타켓보드 부팅-HyperTerminal 타켓보드 부팅-Tutty 타켓보드 부팅-minicom Windows환경-타겟 Linux 구동 Linux환경-타겟 Linux 구동 개발 시스템 구축 유형 페도라 설치 CentOS 설치 크로스 컴파일러 설치 TFTP 환경 구축 NFS 파일 시스템 구축 삼바 서버 구축 부트로더 부트로더 쓰기 커널 이미지 제작 및 설치 램디스크 이미지 제작 및 설치
임베디드 제품 사용기 오늘의 영어 휴게실 Appliance
강좌 & 팁
강좌 & 팁 EZ-보드 그래픽 & 멀티미디어 네트워크 프로그래밍 디바이스 드라이버 ImJa 솔루션 임베디드 FLEX 안드로이드 iOS 개발 FAIDE 하드웨어 C/C++ go언어 GNU C 레퍼런스 메뉴얼 ARM 루아 응용 프로젝트 이클립스 지그비 개발자 노트 권장도서 FPGA
VIVADO DSP HSIO Logic Zynq
함수설명
C 라이브러리 함수 커널 API 그래픽 라이브러리 - gxLib
자료실
자료실 FALINUX SDK ARM PC-V210 S3C6410
G100-S3C6410 S100-S3C6410 C221-S3C6410 N200-S3C6410 EZ-S3C6410
S5PV210
G100-S5PV210 S100-S5PV210 N200-S5PV210 C221-S5PV210
EZ-S3C2440 EZ-PXA270 EZ-X5 EZ-S2410 Auto Package
도와주세요
FAQ 도와주세요

  • 회원 가입
  • 아이디/비밀번호 찾기
 
  1. 포럼지기에게 한 마디

  2. 뉴스

  3. EZ보드 통합 메뉴얼

    • FA-VUS 개발환경 !강추!

    • 타켓보드 부팅-HyperTerminal

    • 타켓보드 부팅-Tutty

    • 타켓보드 부팅-minicom

    • Windows환경-타겟 Linux 구동

    • Linux환경-타겟 Linux 구동

    • 개발 시스템 구축 유형

    • 페도라 설치

    • CentOS 설치

    • 크로스 컴파일러 설치

    • TFTP 환경 구축

    • NFS 파일 시스템 구축

    • 삼바 서버 구축

    • 부트로더

    • 부트로더 쓰기

    • 커널 이미지 제작 및 설치

    • 램디스크 이미지 제작 및 설치

  4. 임베디드 제품 사용기

  5. 오늘의 영어

  6. 휴게실

  7. Appliance


최근 글

  • 요즘은 vmware 말고 ...
  • [docker] buildx 를 ...
  • buildroot 사용 관련
  • GPIO 제어 방법 문의 [1]
  • 임베디드 리눅스 개발...
  • make wandboard_quad ...
  • LCD 초기화 코드 좀 ... [1]
  • 임베디드 리눅스 커널...
  • numpy,scipy 를 arm-l...
  • 임베디드 공부법 [4]

최근 댓글

  • 오래 전에 해결법을 터득해서 ...
  • 비트 코인으로 작업하는 것은 ...
  • 10년차 임베 엔지니어 입니다. ...
  • 임베디드쪽이라면 SOC 쪽 displ...
  • 그렇군요 제가 질문이 잘못됬었...
  • 취준생으로서 포트폴리오를 만...
  • 제가 현재 취업준비생입니다. ...
  • 에프에이리눅스 보드는 아래 링...
  • EZ 보드를 위한 메뉴얼입니다. 본 메뉴얼은 EZ보드 전체에 해당하는 공통 내용입니다.
  • PDF 파일도 준비했습니다. 메뉴얼 전체를 인쇄하시려면 PDF파일을 다운로드하십시오.
  • 최근 통합 메뉴얼 버전: 3.3.2

삼바 서버 구축

삼바 서버를 이용하는 이유
삼바 설정
방법 1: X Window에서 직접 설정
방법 2: SWAT를 이용한 삼바 설정
방법 3: 삼바 환경 파일 직접 수정
삼바 실행
MS윈도우에서 연결하기

삼바 서버를 이용하는 이유

개발 호스트에 tftp를 설치하면 타겟보드에서 부트로더를 이용하여 커널 이미지나 램디스크 이미지를 타겟 보드로 전송할 수 있습니다. 또한 tftp를 명령을 이용해서 개발 호스트에 있는 파일을 타겟보드로 전송할 수 있습니다. 그러나 부트로더에서 사용할 수 있다는 장점이 있으나 일반적으로 개발 호스트에 있는 파일을 타겟보드에서 이용하기에는 불편합니다.

또한 개발용 호스트에 nfs 서버를 이용하면 앞서 말씀드린 tfpt의 단점을 보안하고 타겟보드에서 호스트의 디렉토리를 마치 자신의 디렉토리로 마운트하여 사용할 수 있어서 복사할 필요없이 개발 호스트의 파일을 사용할 수 있습니다.

이렇게 tftp를 이용하면 부트로더를 이용하여 파일을 전송할 수 있고, nfs를 이용하면 평상 시에 개발 호스트의 공유 디렉토리를 사용할 수 있습니다. 그러나 리눅스가 개발을 위한 컴파일러와 프로그램 소스 및 관련 라이브러리 등의 공유 자원을 제공하고 실제 에디터를 이용한 개발을 Microsoft Windows(이하 MS윈도우)에서 진행하기 위해서는 타겟보드가 nfs를 이용하여 개발 호스트의 공유영역을 사용하듯이, MS 윈도우도 개발 호스트의 공유 영역을 사용할 방법이 있어야 겠습니다.

이렇게 MS윈도우나 기타 다른 플랫폼의 호스트에게 자원을 공유해 주는 서버가 삼바 서버이며, 개발 호스트가 삼바 서버를 운영하면 MS윈도우는 네트워크 드라이브로 연결할 수 있고, 개발자는 리눅스 호스트의 공유 디렉토리를 마치 자신의 MS윈도우의 드라이브로 사용할 수 있어서 개발하기가 용이해 집니다.

삼바 설정

삼바를 설정하는데에는 3가지 방법이 있습니다.

  1. X Window에서 설정하는 방법
    개발 호스트를 직접 사용할 수 있다면 제일 간단하고 편안한 방법입니다.
  2. SWAT를 이용하는 방법
    개발 호스트가 멀리 있어서 직접 사용할 수 없을 때 원격으로 설치하는 방법으로 웹을 이용합니다.
  3. 직접 samba 환경 파일을 수정하는 방법
    개발 호스트가 멀리 있어서 직접 사용할 수 없을 때, 텔넷을 이용하여 VI에디터 등을 이용하여 환경파일의 내용을 직접 수정하는 방법입니다.

설정하는 방법이 3가지가 있습니다만 저자의 입장으로는 1번과 3번 사용을 권하고 싶습니다. 2번의 SWAT같은 경우 최근 리눅스 배포본에 따라서 설치되지 않는 경우가 있어서 http://us4.samba.org 에서 직접 파일을 내려 받아 설치해야 하며, 웹 서버를 이용해야 하므로 웹 서버를 설치해야 합니다.

방법 1: X Window에서 직접 설정

개발 호스트를 직접 사용할 수 있고 X 윈도우가 설치되어 있다면 간편한 방법을 설정할 수 있습니다. 아래의 설명은 CentOS5에서의 화면 캡쳐입니다. [시스템 메뉴>>관리>>서버설정>>Samba]를 선택합니다.

[삼바 서버 설정] 윈도우가 출력됩니다. 제일 먼저 삼바의 공유 영역을 사용할 사용자를 등록합니다.

삼바 유저를 추가하기 위해 [사용자 추가] 버튼을 클릭합니다.

사용자 정보를 입력합니다. 이때 MS윈도우의 아이디와 암호를 입력하시면 이후에 삼바 공유 디렉토리를 이용할 때 로그인 과정이 없어서 편리합니다.

사용자가 추가되었습니다. [확인] 버튼을 클릭합니다.

새로 추가한 삼바 사용자에게 제공할 공유 디렉토리를 지정하기 위하여 [공유 추가] 버튼을 클릭합니다.

공유할 디렉토리와 공유 이름을 입력하고 사용자를 지정하기 위힌 [접근] 탭을 선택합니다.

새로 추가한 사용자를 선택해 줍니다.

[확인]버튼을 클릭하시면 새로운 공유 정보가 아래와 같이 등록됩니다.

방법 2: SWAT를 이용한 삼바 설정

SWAT(Samba Web Administration Tool)은 리모트로 삼바를 쉽게 설정하기 위한 툴로 웹 서버를 통한 웹브라우저로 설정합니다. 또한 SWAT가 실행되는 시스템에 있는 smb.conf 파일에 액세스를 제공하는 inetd에서 실행되도록 디자인된 CGI 스크립팅 어플리케이션입니다.

  • SWAT 설치

Fedora Core 5 이상부터는 SWAT를 포함하지 않기 때문에 samba 홈페이지에서 swat 툴을 다운 받아서 설치해야 합니다. 또한 Fedora Core 버전에 따라 제공되는 swat 버전이 틀릴 수 있다.

다운로드 : http://us4.samba.org/samba/ftp/Binary_Packages/Fedora/RPMS/i386/core/

설치 예제에 사용된 Fedora Core 6에 해당하는 버전은 아래와 같습니다.

samba-3.0.24-3.gc2.i386.rpm
samba-client-3.0.24-3.gc2.i386.rpm
samba-common-3.0.24-3.gc2.i386.rpm
samba-doc-3.0.24-3.gc2.i386.rpm
samba-swat-3.0.24-3.gc2.i386.rpm

다운 받은 swat 관련 파일들을 순서대로 설치합니다.

]# rpm -Uvh -nodeps -force samba-3.0.24-3.gc2.i386.rpm
]# rpm -Uvh -nodeps -force samba-client-3.0.24-3.gc2.i386.rpm
]# rpm -Uvh -nodeps -force samba-common-3.0.24-3.gc2.i386.rpm
]# rpm -Uvh -nodeps -force samba-doc-3.0.24-3.gc2.i386.rpm
]# rpm -Uvh -nodeps -force samba-swat-3.0.24-3.gc2.i386.rpm

패키지 설치시 *.tdb 파일이 없다는 경우, common 과 client 설치시 samba-3.0.24-3.gc2.i386.rpm 파일을 재 설치하면 됩니다.

  • SWAT 환경 설정

/etc/xinetd.d/swat 파일을 다음과 같이 변경합니다.

# vi /etc/xinetd.d/swat

[ 수정 전 ]

# default: off
# description: SWT is the Samba Web Admin Tool. Use swat \
#              to configure your Samba server. To use SWAT, \
#              connect to port 901 with your favorite web browser.
service swat
{
disable = yes            // no 로 변경합니다. port = 901 socket_type = stream wait = no only_from = 127.0.0.1 user = root server = /usr/sbin/swat log_on_failure += /usr/sbin/swat per_source = 11 }

[ 수정 전 ]

# default: off
# description: SWT is the Samba Web Admin Tool. Use swat \
#              to configure your Samba server. To use SWAT, \
#              connect to port 901 with your favorite web browser.
service swat
{
disable = no            // no 로 변경했습니다. port = 901 socket_type = stream wait = no only_from = 127.0.0.1 user = root server = /usr/sbin/swat log_on_failure += /usr/sbin/swat per_source = 11 }

위와 같이 수정하였다면 xinet 데몬을 재실행을 한다.

]# /etc/init.d/xinetd restart
xinetd 를 정지 중:                                         [실패]
xinetd (을)를 시작 중:                                     [  OK  ]
]# 
  • MS윈도우에서 설정

리눅스 서버에 SWAT를 띄우기 위한 환경 설정을 모두 마쳤다면 원래의 목적인 윈도즈에서 인터넷 익스플로러(이하 IE)를 이용하여 SWAT를 실행시킵니다. IE를 실행시키고 주소 창에 다음을 입력합니다.

http:// [해당IP]:901 예) http://192.168.10.20:901

SWAT는 901 포트를 이용하여 통신하므로 뒤에 ":901"을 추가했습니다.

여기서 사용하는 모든 예제는 위의 IP 설정을 바탕으로 설명하겠습니다. 각자의 환경에 맞게 수정하여 사용하면 되겠습니다.

네트워크 암호 입력이라는 창이 뜨면 사용자 이름과 암호를 입력합니다. 정상적으로 로그인이 되면 다음과 같은 SWAT 화면이 뜹니다.

GLOBALS 설정하기

위의 버튼을 클릭하여 화면이 나타나면 다음의 그림과 같이 설정합니다.

workgroup에 윈도우즈 네트웍에서 사용할 작업그룹 이름을 입력합니다. Server string에 입력하는 내용은 네트웍 환경에서 설명 필드에 나타납니다. 모든 설정을 하였으면 상단의 [Commit Changes] 버튼을 눌러 저장해야 합니다.

SHARES 설정하기

위의 버튼을 클릭하여 화면이 나타나면 다음의 그림과 같이 설정합니다.

위의 화면에서 [Create Share]에 root 라고 입력하고, 버튼을 클릭하면 아래와 같은 화면이 다시 나타납니다. 아래의 화면에서 Advanced View 버튼을 클릭하면 새로운 화면이 나타납니다.

Advanced View 버튼 클릭 화면에서 다음의 그림에 나타난 부분과 같이 수정을 한 후, 화면 상단의 Commit Changes를 클릭하여 수정된 내용이 저장되도록 합니다.

Basic View를 누르면 다음과 같은 화면이 다시 나타납니다.


STATUS

위의 버튼을 클릭하여 화면이 나타나면 다음의 그림과 같이 설정합니다.

모든 설정을 하였다면 삼바관련 데몬을 다시 실행 시켜야 합니다. 위의 화면에서 Restart smbd, Restart nmbd 버튼을 차례로 클릭하여 데몬을 재실행 시킵니다.

여기서 데몬을 재실행 시켰을 때 다음과 같이 나타나지 않으면 데몬이 제대로 실행 되지 않은 것입니다.

smbd: running
nmbd: running

 

방법 3: 삼바 환경 파일 직접 수정

  • 삼바 유저 등록

삼바를 사용할 유저를 등록합니다.

]$ su -?        // root 계정으로 로그인 합니다. 또는 root 로 로그인 하십시오. 
암호:?          // root 암호를 입력합니다.
]# smbpasswd -a jwjw?       // 삼바를 사용할 유저를 등록합니다.
New SMB password:           // 암호를 등록합니다.
Retype new SMB password:    // 암호 확인을 위해 다시 입력합니다.
  • 삼바 환경 설정

이제 삼바 유저에 공유할 정보를 삼바 환경 파일을 직접 수정해서 등록하겠습니다. 삼바 환경 설정 파일은 /etc/samba/smb.conf 이므로 직접 파일을 열어 아래의 내용을 참고하여 수정하여 주십시오.

[global]
workgroup = workgroup                        # 윈도우 네트워크 환경의 작업 그룹 이름을 입력했습니다.
dos charset = CP949
unix charset = CP949
load printers = yes
printing = lpmg
server string = jwCentOS                     # 윈도우 탐색기에 출력할 컴퓨터 이름입니다.
printcap name = /etc/printcap
cups options = raw
log file = /var/log/samba/%m.log
max log size = 50
security = USER                                # 사용자 계정으로 설정합니다. 여기서 설명은 생략합니다.
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
dns proxy = no
idmap uid = 16777216-33554431
idmap gid = 16777216-33554431
template shell = /bin/false
password server = None
guest ok = no
winbind use default domain = no

[jwjw]                                    # jwjw 유저에 대한 삼바 공유 폴더 설정입니다.
comment = jwjw samba           # 탐색기에서 설명 컬럼에 출력할 내용입니다.
path = /home/jwjw/prjs           # jwjw 가 사용할 리눅스의 공유 폴더 경로입니다.
writeable = yes
public = no
create mask = 0644                 # 윈도우나 다른 시스템에서 파일을 생성했다면 기폰 파일 모드는 0644
directory mode = 0755            # 윈도우나 다른 시스템에서 디렉토리를 생성했다면 기폰 모드는 0755

[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
printable = yes

삼바 실행

삼바 환경을 설정햇으므로 삼바를 실행 시켜야 합니다. 삼바 서버의 실행 파일은 /etc/init.d/smb 입니다.

]# /etc/init.d/smb restart
MB 서비스를 종료 중:                                       [  오류  ]
NMB 서비스를 종료 중:                                      [  오류  ]
SMB서비스를 시작 중:                                       [  OK  ]
NMB서비스를 시작 중:                                       [  OK  ]
]#     

삼바가 실행되었습니다. 이렇게 /etc/init.d/smb를 직접 호출하여 실행할 수 있습니다만 ntsysv를 이용하여 부팅할 때 마다 자동으로 실행하도록 설정해 두면 편리합니다.

]# ntsysv

smb 서비스를 선택한 후 [확인]을 선택합니다.

MS윈도우에서 연결하기

이렇게 삼바 환경을 설정하고 서버를 구동 시키고 탐새기에서 네트워크를 검색해 보면, 아래와 같이 삼바 서버의 공유 폴더가 검색이되고 유저에 할당된 공유 폴더에 접근할 수 있습니다.

이제 MS윈도우도 삼바의 공유 폴더를 이용하여 리눅스의 자원을 사용할 수 있게 되었습니다. 이 공유 폴더를 이용하여 MS윈도우에서 애용했던 에디터를 이용하여 리눅스 안에 프로그램을 작성할 수 있으며 필요 파일을 복사하거나 받을 수 있습니다.

 

부탁드립니다. ^^
  • 글을 작성하시려면 회원으로 가입하시고 로그인 하셔야 합니다.
  • 회원 가입은 주민등록번호가 필요 없으며, 메일 주소만 있으면 간단하게 가입하실 수 있습니다.
  • 본 포럼에 등록된 모든 글의 저작권은 작성하신 분께 있으며, 저작자의 허락 없이 다른 곳에 펌이나 도용하시면 안 됩니다.
  • 또한, 전자우편 수집 프로그램이나 그 밖의 기술적 장치를 이용하여 무단으로 이메일 주소 및 자료 수집되는 것을 거부하며,
  • 이를 위반 시 정보통신망 법에 의해 형사 처벌됨을 유념하시기 바랍니다.
  • FF 포럼
  • 강좌 & 팁
  • 함수설명
  • 자료실
  • 도와주세요