Solaris
솔라리스10 업데이트4 에서 삼바를 이용한 브라우징 활성화시키기
728x90
솔라리스 10 08/07 에서 기본적으로 제공되는 삼바 서비스는 오직 smb 데몬에만 접근을 제공합니다. 만약 머신에서 제공되는 공유 디렉토리에 접근 하길 원한다면 nmbd(1m) 대몬이 실행되고 있어야 합니다.
이 것은 따로 서비스를 추가 함으로써 가능합니다. 그러나 우리는 현존하는 삼바 서비스를 변경하여 두개의 데몬을 각각 삼바 서비스의 분리된 인스턴스로 제공하도록 할 것입니다.
현재 manifest 를 확인하기 위해서는 이것을 리파지토리로 부터 익스포트 해야 합니다.
참고: 기본 manifest 는 /var/svc/manifest/network/samba.xml 로 배포 되고 이것을 시작점으로 사용할 수 있습니다.
# svccfg export samba > samba.xml
이 파일이 우리가 작업할 파일입니다.
우리가 변경할 것은:
- 변경 후에 기본 인스턴스를 가지지 않을 것이기 때문에 그리고 두개의 인스턴스를 사용할 것이기 때문에(하나는 smb 그리고 하나는 nmb) 우리는 create_default_instance 와 single_instance 줄을 지울 것입니다.
- 현존하는 인스턴스의 시작 및 정지 메소드를 래핑(wrapping)할 것입니다.
- nmbd 데몬을 고유의 시작 및 정지 메소드와 함께 인스턴스로서 추가해야 합니다.
- nmbd 데몬의 멘페이지를 참고하는 문서 링크로 변경해야 합니다.
우리가 할 수 있는 또 다른 변경사항으로는:
- 설정 파일에 의존성을 추가합니다, 왜냐하면 데몬의 기본 종료 값인 nmbd(1m)는 smf 의 SMF_EXIT_ERR_CONFIG 코드 96 와 일치 하지 않기 때문입니다.
- 킬 메소드를 :kill 로 변경합니다. 그러므로써 모든 데몬은 서비스가 비활성화 되면 죽게 됩니다. 이 것은 새로운 새션뿐만 아니라 현존하는 세션에도 적용됩니다.
수정된 samba.xml
samba.xml
<?xml version='1.0'?> <!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'> <service_bundle type='manifest' name='export'> <service name='network/samba' type='service' version='0'> <!-- Remove the create_default_instance and single_instance lines --> <dependency name='net-loopback' grouping='require_any' restart_on='none' type='service'> <service_fmri value='svc:/network/loopback'/> </dependency> <dependency name='net-service' grouping='require_all' restart_on='none' type='service'> <service_fmri value='svc:/network/service'/> </dependency> <dependency name='net-physical' grouping='require_all' restart_on='none' type='service'> <service_fmri value='svc:/network/physical'/> </dependency> <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'> <service_fmri value='svc:/system/filesystem/local'/> </dependency> <!-- Add a dependancy for the config file --> <dependency name='config_data' grouping='require_all' restart_on='none' type='path'> <service_fmri value='file://localhost/etc/sfw/smb.conf'/> </dependency> <dependent name='samba_multi-user-server' restart_on='none' grouping='optional_all'> <service_fmri value='svc:/milestone/multi-user-server'/> </dependent> <!-- Move the smbd daemon startup methods into an instance. We'll call this instance smbd --> <instance name='smbd' enabled='false'> <exec_method name='start' type='method' exec='/usr/sfw/sbin/smbd -D' timeout_seconds='170'> <method_context/> </exec_method> <!-- change the stop method to kill all the daemons, including existing sessions --> <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60'> <method_context/> </exec_method> </instance> <!-- Add the nmbd instance --> <instance name='nmbd' enabled='false'> <exec_method name='start' type='method' exec='/usr/sfw/sbin/nmbd -D' timeout_seconds='170'> <method_context/> </exec_method> <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60'> <method_context/> </exec_method> </instance> <stability value='Unstable'/> <template> <common_name> <loctext xml:lang='C'>SMB file server</loctext> </common_name> <documentation> <manpage title='smbd' section='1m' manpath='/usr/sfw/man'/> <manpage title='nmbd' section='1m' manpath='/usr/sfw/man'/> <manpage title='smb.conf' section='4' manpath='/usr/sfw/man'/> </documentation> </template> </service> </service_bundle>
수정사항 반영하기
# svcadm disable samba # svccfg import samba.xml # svccfg delete svc:/network/samba:default # svcadm refresh samba:smbd # svcadm refresh samba:nmbd # svcadm enable samba:smbd # svcadm enable samba:nmbd
결과 확인하기
svcs 커맨드는 현재 실행중인 서비스를 확인할 수 있습니다. 그리고 nmblookup 커맨드는 머신이 브라우즈 그룹에 속해 있는지 확인 할 수 있습니다.
# svcs samba STATE STIME FMRI online 8:34:16 svc:/network/samba:smbd online 8:35:00 svc:/network/samba:nmbd # svcs -p samba STATE STIME FMRI online 8:34:16 svc:/network/samba:smbd 8:34:16 2038 smbd 8:34:16 2039 smbd online 8:35:00 svc:/network/samba:nmbd 8:35:00 2066 nmbd # /usr/sfw/bin/nmblookup SMBGROUP querying SMBGROUP on 192.168.1.255 192.168.1.138 SMBGROUP<00> 192.168.1.134 SMBGROUP<00> 192.168.1.2 SMBGROUP<00> 192.168.1.76 SMBGROUP<00> 192.168.1.1 SMBGROUP<00>
192.168.1.51 SMBGROUP<00>
이 글의 원본은 http://wikis.sun.com/display/BigAdmin/Enabling+Browsing+with+Samba+in+Solaris+10+Update+4
에서 보실 수 있습니다.
728x90
댓글