퍼포스 서버 p4d 설치 및 실행 (Perforce Server install)
2023. 3. 28. 23:28ㆍ코딩/Perfoce
퍼포스 서버 설치 및 실행 (Perforce Server install)
실행하고자 하는 폴더에서 bin 폴더 생성 후, bin 폴더에 p4d.exe 파일 넣기
리눅스 퍼포스 서버 p4d 실행 방법
[ -d bin ] || mkdir bin
[ -d var ] || mkdir var
if [ ! -f bin/p4d ]; then
wget -O bin/p4d ftp://ftp.perforce.com/perforce/r20.1/bin.linux26x86_64/p4d
chmod 700 bin/p4d
fi
if [ ! -d data ]; then
mkdir data
./cli_p4d.sh -r data -L var/log -J var/journal -xi $*
fi
./cli_p4d.sh -r data -L var/log -J var/journal $*
리눅스에서 퍼포스(P4D) 서버를 실행하기 위한 스크립트에 대한 설명입니다. 한 줄씩 설명드리겠습니다.
- [ -d bin ] || mkdir bin
- 이 명령은 bin 디렉터리가 존재하는지 확인합니다. 만약 없다면 mkdir bin 명령을 통해 bin 디렉터리를 생성합니다.
- [ -d var ] || mkdir var
- var 디렉터리의 존재 여부를 확인하고, 없을 경우 var 디렉터리를 생성합니다.
- if [ ! -f bin/p4d ]; then
- bin/p4d 파일의 존재 여부를 확인합니다. 파일이 없다면 이하 명령을 수행합니다.
- wget -O bin/p4d ftp://ftp.perforce.com/perforce/r20.1/bin.linux26x86_64/p4d
- Perforce 서버에서 P4D 실행 파일을 다운로드하여 bin/p4d에 저장합니다.
- chmod 700 bin/p4d
- 다운로드한 bin/p4d 파일에 실행 권한을 부여합니다. 700 권한은 파일 소유자에게 읽기, 쓰기, 실행 권한을 모두 부여합니다.
- if [ ! -d data ]; then
- data 디렉터리의 존재 여부를 확인합니다. 없다면 다음 명령을 실행합니다.
- mkdir data
- data 디렉터리를 생성합니다.
- ./cli_p4d.sh -r data -L var/log -J var/journal -xi $*
- Perforce 데이터베이스를 초기화하는 스크립트를 실행합니다. 여기서 -r data는 데이터베이스 루트를 지정, -L var/log는 로그 파일 위치를 지정, -J var/journal는 저널 파일 위치를 지정합니다. -xi 옵션은 데이터베이스를 초기화하라는 명령입니다. $*는 스크립트에 전달된 모든 추가 인수를 포함합니다.
- ./cli_p4d.sh -r data -L var/log -J var/journal $*
- Perforce 서버를 실행하는 스크립트입니다. 위에서 설명한 옵션들과 마찬가지로, 데이터베이스 루트, 로그 파일 위치, 저널 파일 위치를 지정합니다. $*는 이 스크립트에 전달된 모든 추가 인수를 포함합니다.
이 스크립트는 필요한 디렉터리를 생성하고, P4D 실행 파일을 설치한 뒤, 데이터베이스를 초기화하고 서버를 실행합니다.
윈도우 퍼포스 서버 p4d 실행 방법
@echo off
IF NOT EXIST %~dp0bin mkdir %~dp0bin
IF NOT EXIST %~dp0var mkdir %~dp0var
IF NOT EXIST %~dp0data mkdir %~dp0data
IF NOT EXIST %~dp0bin\p4d.exe powershell Invoke-WebRequest ftp://ftp.perforce.com/perforce/r16.2/bin.ntx64/p4d.exe -OutFile %~dp0bin\p4d.exe
IF NOT EXIST %~dp0data\db.* %~dp0bin\p4d.exe -r %~dp0data -L %~dp0var\log -J %~dp0var\journal -p 1666 -xi
%~dp0bin\p4d.exe -r %~dp0data -L %~dp0var\log -J %~dp0var\journal -p 1666
해당 커맨드 실행
윈도우 환경에서 퍼포스(P4D) 서버를 실행하기 위한 배치 파일에 대해 한 줄씩 설명해 드리겠습니다.
- @echo off
- 배치 파일을 실행할 때 명령어 출력을 비활성화하여, 사용자에게 명령어가 보이지 않게 합니다.
- IF NOT EXIST %~dp0bin mkdir %~dp0bin
- 배치 파일이 위치한 디렉터리(%~dp0)에 bin 폴더가 존재하지 않을 경우, 해당 위치에 bin 디렉터리를 생성합니다.
- IF NOT EXIST %~dp0var mkdir %~dp0var
- 배치 파일이 위치한 디렉터리에 var 폴더가 없다면 var 디렉터리를 생성합니다.
- IF NOT EXIST %~dp0data mkdir %~dp0data
- 배치 파일이 위치한 디렉터리에 data 폴더가 없다면 data 디렉터리를 생성합니다.
- IF NOT EXIST %~dp0bin\p4d.exe powershell Invoke-WebRequest ftp://ftp.perforce.com/perforce/r16.2/bin.ntx64/p4d.exe -OutFile %~dp0bin\p4d.exe
- bin 디렉터리에 p4d.exe 파일이 존재하지 않을 경우, PowerShell을 사용하여 Perforce 웹 서버에서 p4d.exe 파일을 다운로드하고 bin 폴더 안에 저장합니다.
- IF NOT EXIST %~dp0data\db.* %~dp0bin\p4d.exe -r %~dp0data -L %~dp0var\log -J %~dp0var\journal -p 1666 -xi
- data 디렉터리에 데이터베이스 파일(db.*)이 존재하지 않을 경우, p4d.exe를 실행하여 데이터베이스를 초기화합니다. 여기서 -r %~dp0data는 데이터베이스 루트를 지정하고, -L %~dp0var\log는 로그 파일 위치를, -J %~dp0var\journal은 저널 파일 위치를 지정합니다. -p 1666은 Perforce 서버의 포트 번호를 지정하고, -xi는 데이터베이스 초기화 명령을 의미합니다.
- %~dp0bin\p4d.exe -r %~dp0data -L %~dp0var\log -J %~dp0var\journal -p 1666
- Perforce 서버를 실행합니다. 위에서 설명한 옵션들과 마찬가지로, 데이터베이스 루트, 로그 파일 위치, 저널 파일 위치를 지정하고 포트 번호 1666에서 서비스를 시작합니다.
이 스크립트는 필요한 디렉터리를 생성하고, 실행 파일을 설치한 후, 데이터베이스를 초기화하고 Perforce 서버를 실행하는 과정을 자동화합니다.
'코딩 > Perfoce' 카테고리의 다른 글
퍼포스 머지 후 전체 히스토리 보기 (P4V: Perforce All History) (0) | 2023.03.29 |
---|---|
p4transfer 이스케이핑 버그 (p4transfer escaping bug) (0) | 2023.03.29 |
퍼포스 p4ignore 간헐적으로 동작 안 할 때, 에러, 오류 (perforce p4ignore encoding error) (0) | 2023.03.29 |
퍼포스 에러 : non-stream client (Perforce non-stream client No files to submit error) (0) | 2023.03.28 |
퍼포스 소개 및 기초 설명 (Perforce Overview) (0) | 2023.03.28 |