본문 바로가기

Programming/Windows10IoTCore

Windows 10 IoT Core의 FTP 서버 기능 활성화

반응형

Windows 10 IoT Core의 FTP 서버 기능은 기본적으로 비활성 상태입니다.

FTP 서버 기능 활성화로 간단한 FTP 접근이 가능해집니다.

다만 세부적인 설정 등이 어렵기 때문에 NAS 용도 등으로 사용은 어려울 것으로 보입니다.


1. FTP 서버 활성화

FTP 서버를 활성화하기 위해서는 먼저 파워쉘(PowerShell)을 통해 라즈베리파이에 연결해야 합니다.

2017/06/29 - [IT/Raspberry PI] - Windows 10 IoT Core에 PowerShell로 연결하기

연결이 완료된 후 아래 명령어를 입력하면 FTP 서버가 활성화됩니다.

start C:\Windows\System32\ftpd.exe

정상적으로 동작하는지 확인하려면 아래 명령어를 입력하면 됩니다.

tlist

프로세스 목록에서 ftpd.exe가 보이면 정상적인 동작 상태입니다.


2. FTP 서버 비활성화

FTP 서버 비활성화는 kill 명령어로 프로세스를 종료시키면 됩니다.

kill -processname ftpd*

프로세스가 종료되면 프로세스 목록에서 보이지 않습니다.


3. FTP 연결 확인

Windows 10에서 FTP 연결이 정상적으로 되는지 확인 가능합니다.

파일 탐색기에서 ftp://<장치주소> 형태로 입력하면 연결이 가능합니다.

<장치주소>에는 IP 주소나 디바이스 이름을 입력하면 연결됩니다.


4. 루트 디렉토리 변경

FTP 서버의 기본 루트 디렉토리는 C:\입니다.

FTP 서버를 실행할 때 원하는 절대 경로 입력을 추가해서 루트 디렉토리를 변경할 수 있습니다.

start C:\Windows\System32\ftpd.exe C:\Data\Users\administrator\Documents

다시 연결해보면 루트 디렉토리가 변경된 것을 확인할 수 있습니다.

부팅 이후에 특정 루트 디렉토리가 적용된 상태로 FTP 서버를 가동시키려면 다음과 같이 진행합니다.

Windows 10의 파일 탐색기에서 아래와 같이 라즈베리파이 파일에 접근합니다.

\\192.168.1.223\c$\Windows\System32

이름이 IoTStartupOnBoot.cmd 라는 파일을 찾아서 편집 메뉴를 실행합니다.

보안 경고 창이 뜨면 실행을 클릭합니다.

다음과 같은 내용을 추가합니다.

REM start FTP
if /i EXIST %SystemDrive%\Windows\System32\ftpd.exe (
  start ftpd.exe C:\Data\Users\administrator\Documents >nul 2>&1
)

이미 ftpd.exe 관련 내용이 있다면 명령문에 루트 디렉토리만 추가하면 됩니다.

내용을 추가하고 저장을 하면 부팅될 때 자동으로 FTP가 실행됩니다.


※ 권한 문제로 파일 저장이 되지 않을 때

만약 권한 문제로 인해 저장이 되지 않으면 아래와 같은 방법으로 해결이 가능합니다.

먼저 해당 파일의 마우스 오른쪽 클릭 메뉴에서 속성을 실행하고 보안 탭으로 이동합니다.

화면의 고급 버튼을 클릭하고 소유자 옆의 변경 버튼을 누릅니다.

입력창에 Administrator를 입력하고 이름 확인 버튼을 누르면 계정이 표시됩니다.

이름 확인을 누르고 정상적으로 이름이 검색되면 <디바이스 IP>\Administrator 형태로 변경됩니다.

확인을 눌러서 해당 창을 닫아주고 Administrator의 사용 권한을 추가합니다.

사용 권한 항목의 Administrator 계정을 더블클릭하고 모든 접근 권한을 추가합니다.

확인을 눌러서 모든 창을 닫아주면 권한이 적용되며 정상적으로 파일 저장이 됩니다.

반응형