'전체 글'에 해당되는 글 89건

  1. 2023.10.16 rsync 간략 사용법 정리
  2. 2023.02.25 우분투 22.04 포트 포워드 (ubuntu 22.04 port forward)
  3. 2023.02.24 리눅스 IP 관리 명령 모음
  4. 2022.12.27 windows + php + mssql + sqlsrv connection Error

rsync 간략 사용법 정리

|

- rsync 옵션

 
  -r  : 하위 디렉토리까지 전송. 소유권, 그룹, 권한, 시간, 심볼릭링크를 유지하지 않음.
 
  -a  : 하위 디렉토리까지 전송. 소유권, 그룹, 권한, 시간, 심볼릭링크를 유지.
 
  -z  : 전송시 데이터 압축 사용.
 
  -b  : 동기화중 백업 실행.
 
  -h  : 출력 숫자를 표시.
 
  -n  : 전송테스트. 실제 전송전 테스트용.
 
  -e  : 외부 쉘프로그램을 이용함. 주로 원격전송시 ssh 등의 접속에 이용
 
  -progress : 전송 진행상태 표시.
 
  -v  : 전송 세부내역 표시.
 
  -q  : 전송시 출력을 최소화.
 
  -delete  : 소스 디렉토리에서 삭제된 내용은 대상 디렉토리에서도 삭제처리.
 
  -exclude  : 전송대상에서 제외할 파일이나 디렉토리.
 
  --max-size(최대크기), --bwlimit(대역폭)... 등도 있다.
 

 

- 사용법

 
  1. 기본
      # rsync  -avzh  /소스디렉토리   /대상디렉토리

  2. 소스디렉토리 삭제시 대상 디렉토리에서도 삭제
      # rsync  -avzh --delete  /소스디렉토리   /대상디렉토리

  3.1 대상제외
      # rsync  -avzh  --delete='제외할 파일이나 디렉토리' /소스디렉토리   /대상디렉토리
  3.1.1
      제외할 파일/디렉토리는 파일검색 표현식을 사용할수 있음 (예:*.jpg, abc*.*...)

  3.2 대상제외2
      # rsync  -avzh  --delete='제외대상1'  --delete='제외대상2' /소스디렉토리   /대상디렉토리

  3.3 대상제외3
      # rsync  -avzh  --delete={'제외대상1','제외대상2'} /소스디렉토리   /대상디렉토리

  3.4 대상제외4
      # rsync  -avzh  --delete-from='대상내용이 담긴 텍스트 파일' /소스디렉토리   /대상디렉토리
  3.4.1 대상내용이 담긴 텍스트 파일 구성
      aaa.txt
      *.jpg
      abc*.*

  4. ssh 이용해서 전송
      # rsync  -avzh  -e 'ssh -p 22' /소스디렉토리   계정ID@외부URI:/대상디렉토리

  5. 날짜변수지정
      # rsync  -avzh  /소스디렉토리  /대상디렉토리/$(date +%Y-%m-%d)
 
And

우분투 22.04 포트 포워드 (ubuntu 22.04 port forward)

|

ufw 사용중 port 포워드

# systemctl status ufw              //    => actvie
# ufw status                          //    => inactive
위의 ufw 상태가 우분투 기본이다.

먼저 /etc/sysctl.conf   파일에서
net.ipv4.ip_forward=1   // 주석해제한다.

 # vi /etc/sysctl.conf
net.ipv4.ip_forward=1   

아래 명령어로 포트 포워딩을 실행한다.
# iptables -t nat -A PREROUTING -p tcp --dport 8081 -j DNAT --to 211.213.24.71:8081   //전체 인터페이스 포트포워딩
# iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 8081 -j DNAT --to 211.213.24.71:8081  //eth0 만 포트포워딩
동일 IP에서 포트를 전환할땐 DNAT 대신 REDIRECT 를 해준다.

#iptables -t nat -A POSTROUTING -o eth0 -j MASQUERAD

설정된 내용을 확인하려면
# iptables -t nat -L --line-numbers

설정 내용을 삭제하려면 위의 명령어에서 출력된 라인 번호를 통해 아래의 명령을 준다.
# iptables -t nat -D PREROUTING 8

And

리눅스 IP 관리 명령 모음

|

 

@ ifconfig

ifconfig eth0 up //eth0 활성화
ifconfig eth0 down  //eth0 비활성화
ifconfig eth0 10.10.1.1 // ip변경
ifconfig eth0 netmast 255.255.255.0  //넷마스크 변경
ifconfig eth0 broadcast 10.10.0.255  //broadcast 변경
ifconfig eth0 10.10.1.1 netmast 255.255.255.0 broadcast 10.10.0.255  //동시 명령
ifconfig eth0:0 10.10.1.1  가상 인터페이스 설정

 

@ ip

ip addr show  //network 정보 조회
ip addr add 10.10.1.1/24 dev eth0 // ip등록
ip addr del 10.10.1.1/24 dev eth0 // ip삭제
ip link set eth0 up  //eth0 활성화
ip link set eth0 down //eth0 비활성화
ip route show  //라우터 정보 확인
ip route add default via 10.10.1.254 //게이트웨이 설정
ip route del default via 10.10.1.254 //게이트웨이 삭제
ip route add 10.10.1.0/24 via 10.10.1.1 dev eth0 //라우팅정보 등록
ip route del 10.20.1.0/24 //라우팅정보 삭제
 

@ ifup / ifdown

ifup eth0  //eth0 활성화
ifdown eth0  //eth0 비활성화
 

@ ethtool

ethtool -i eth0  //nic 카드 드라이버 정보
ethtool eth0  //nic 카드 설정/동작 정보
ethtool -s eth0 speed 1000 duplex full  //nic 카드 속도/동작방식 세팅
ethtool -s eth0 speed 100 duplex half autoneg off //nic 카드 속도/동작방식 세팅 #2
And

windows + php + mssql + sqlsrv connection Error

|

====================================================================================

Array (
    [0] => Array (
        [0] => IM006,
        [SQLSTATE] => IM006,
        [1] => 0,
        [code] => 0,
        [2] => [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed
    ),
    [1] => Array (
        [0] => 01000,
        [SQLSTATE] => 01000,
        [1] => 5701,
        [code] => 5701,
        [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Changed database context to 'database'
    )
    [2] => Array (
        [0] => 01000,
        [SQLSTATE] => 01000,
        [1] => 5703,
        [code] => 5703,
        [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Changed language setting to us_english.,
    )
)

 

Array
(
    [0] => Array
        (
            [0] => IM006
            [SQLSTATE] => IM006
            [1] => 0
            [code] => 0
            [2] => [Microsoft][ODBC 드라이버 관리자] 드라이버의 SQLSetConnectAttr을 실패했습니다.
            [message] => [Microsoft][ODBC 드라이버 관리자] 드라이버의 SQLSetConnectAttr을 실패했습니다.
        )

    [1] => Array
        (
            [0] => 01000
            [SQLSTATE] => 01000
            [1] => 5701
            [code] => 5701
            [2] => [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]데이터베이스 컨텍스트가 'database'(으)로 변경되었습니다.
            [message] => [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]데이터베이스 컨텍스트가 'database'(으)로 변경되었습니다.
        )

    [2] => Array
        (
            [0] => 01000
            [SQLSTATE] => 01000
            [1] => 5703
            [code] => 5703
            [2] => [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]언어 설정이 한국어(으)로 변경되었습니다.
            [message] => [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]언어 설정이 한국어(으)로 변경되었습니다.
        )
)

==================================================================================

위와같은 에러는
php 설정시 서버의 ODBC 버전과  sqlsrv의 dll 버전이 맞지 않아서 발생한다.

php 설정시
pdo_sqlsrv.dll, sqlsrv.dll 을 제대로 적용되었음에도  php가 설치된 윈도우의 ODBC 버전 맞지 않다면 위와같은 에러를 볼수있다.

해결 방법은 2가지.
1. ODBC 버전을 올리던지
    https://learn.microsoft.com/ko-kr/sql/connect/odbc/download-odbc-driver-for-sql-server?view=sql-server-ver16

2. DLL 버전을 낮추던지...
    https://pecl.php.net/package/sqlsrv
    https://pecl.php.net/package/pdo_sqlsrv

뭘 낮추든 뭘 높이든 맞추면 된다.

호환성은 아래를 참고하면 될까??
https://learn.microsoft.com/ko-kr/sql/connect/php/microsoft-php-drivers-for-sql-server-support-matrix?view=sql-server-ver16

And
prev | 1 | 2 | 3 | 4 | ··· | 23 | next