<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>머찐아빠</title>
    <link>https://gubok.tistory.com/</link>
    <description>It's a Really Turning Point~</description>
    <language>ko</language>
    <pubDate>Wed, 15 Apr 2026 05:39:23 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>대단한넘</managingEditor>
    <image>
      <title>머찐아빠</title>
      <url>https://t1.daumcdn.net/cfile/tistory/126F283C4D357C7729</url>
      <link>https://gubok.tistory.com</link>
    </image>
    <item>
      <title>알리 후방카메라 DIY 교체(feat. LF쏘나타)</title>
      <link>https://gubok.tistory.com/519</link>
      <description>&lt;p data-ke-size=&quot;size18&quot;&gt;2016년식 쏘나타에 설치된 후방카메라. 사제카메라여서 그런지 어느순간 화면이 뿌옇게 변해버렸습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;유튜브등에서 소개된대로 카메라 겉 렌즈를 컴파운드로 닦아보기도 했지만, 렌즈표면의 이물질이 아닌, 내부 노후로 인한 증상이라 판단하고 교체하기로 결정했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;1년전에 네비게이션 교체때 함께 교체했으면 추가공임 지출이 덜했을텐데, 좀 아쉽습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;검색해보니 카메라 + 공임까지 대략 10만원정도 하는것으로 보여 망설여졌습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그러다가 카메라만 교체하는것이라서 직접 DIY해보기로 했고, 설치과정에서 혹시라도 카메라가 망가지는것을 감안해서 알리발 후방카메라로 진행해보기로 했습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;GreenYi 170 Deg 모델로 가격은 구입가격은 12,500원&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://a.aliexpress.com/_oDd6Zjp&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://a.aliexpress.com/_oDd6Zjp&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1746521533419&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;₩16,254 | GreenYi 170 Deg Starlight Night Vision Sony/CCD Fisheye 렌즈 자동차 차량 모니터 용 역방향 백업 후&quot; data-og-description=&quot;₩16,254 | GreenYi 170 Deg Starlight Night Vision Sony/CCD Fisheye 렌즈 자동차 차량 모니터 용 역방향 백업 후면보기 카메라 Android DVD&quot; data-og-host=&quot;star.aliexpress.com&quot; data-og-source-url=&quot;https://a.aliexpress.com/_oDd6Zjp&quot; data-og-url=&quot;http://star.aliexpress.com/share/share.htm?aff_fcid=c70278dbeb564e11978f62c805a3f37e-1746521521669-01677-_oDd6Zjp&amp;amp;tt=MG&amp;amp;redirectUrl=https%3A%2F%2Fwww.aliexpress.com%2Fitem%2F1005005907369644.html%3FbusinessType%3DProductDetail%26shareId%3D6000282196285%26srcSns%3Dsns_KakaoTalk%26spreadType%3DsocialShare%26bizType%3DProductDetail%26social_params%3D6000282196285&amp;amp;aff_fsk=_oDd6Zjp&amp;amp;aff_platform=default&amp;amp;sk=_oDd6Zjp&amp;amp;aff_trace_key=c70278dbeb564e11978f62c805a3f37e-1746521521669-01677-_oDd6Zjp&amp;amp;shareId=6000282196285&amp;amp;businessType=ProductDetail&amp;amp;platform=AE&amp;amp;terminal_id=06d97c3f66e84d708635d9c3994b18c0&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cwcDAR/hyYRofwwRq/kWk52PGdvRw61CCeInYMT1/img.jpg?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600,https://scrap.kakaocdn.net/dn/0kWDO/hyYM1sKqEU/Ktl3D3bIcenQ6MkgKkHG3k/img.jpg?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600&quot;&gt;&lt;a href=&quot;https://a.aliexpress.com/_oDd6Zjp&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://a.aliexpress.com/_oDd6Zjp&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cwcDAR/hyYRofwwRq/kWk52PGdvRw61CCeInYMT1/img.jpg?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600,https://scrap.kakaocdn.net/dn/0kWDO/hyYM1sKqEU/Ktl3D3bIcenQ6MkgKkHG3k/img.jpg?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;₩16,254 | GreenYi 170 Deg Starlight Night Vision Sony/CCD Fisheye 렌즈 자동차 차량 모니터 용 역방향 백업 후&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;₩16,254 | GreenYi 170 Deg Starlight Night Vision Sony/CCD Fisheye 렌즈 자동차 차량 모니터 용 역방향 백업 후면보기 카메라 Android DVD&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;star.aliexpress.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_09.jpg&quot; data-origin-width=&quot;1597&quot; data-origin-height=&quot;1139&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wz3cM/btsNLUxrRlk/cdMgGkOMx4XKeMIR2G0Fv0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wz3cM/btsNLUxrRlk/cdMgGkOMx4XKeMIR2G0Fv0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wz3cM/btsNLUxrRlk/cdMgGkOMx4XKeMIR2G0Fv0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fwz3cM%2FbtsNLUxrRlk%2FcdMgGkOMx4XKeMIR2G0Fv0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;710&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_09.jpg&quot; data-origin-width=&quot;1597&quot; data-origin-height=&quot;1139&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_13.jpg&quot; data-origin-width=&quot;1689&quot; data-origin-height=&quot;1559&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/u6wV6/btsNKX2NrGn/D3xYo6fUdiLl8WMOZHEJyK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/u6wV6/btsNKX2NrGn/D3xYo6fUdiLl8WMOZHEJyK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/u6wV6/btsNKX2NrGn/D3xYo6fUdiLl8WMOZHEJyK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fu6wV6%2FbtsNKX2NrGn%2FD3xYo6fUdiLl8WMOZHEJyK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;710&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_13.jpg&quot; data-origin-width=&quot;1689&quot; data-origin-height=&quot;1559&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;주말마다 비가와서 쉽게 작업을 하지 못하다가 드뎌 작업시작했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;1. 1차시도&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;트렁크 커버 탈거하여 기존 후방카메라는 배선을 살펴보고 다시 원복했습니다. 케이블 구조가 달랐습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;네비게이션과 카메라 모듈 연결이 사진처럼 3선으로 되어 있네요. 10여년전 모델이어서 그런듯.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_07.jpg&quot; data-origin-width=&quot;1689&quot; data-origin-height=&quot;1030&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c28Lz5/btsNJTzZqKz/aarXPkauv1D1SS7ljWirl0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c28Lz5/btsNJTzZqKz/aarXPkauv1D1SS7ljWirl0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c28Lz5/btsNJTzZqKz/aarXPkauv1D1SS7ljWirl0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc28Lz5%2FbtsNJTzZqKz%2FaarXPkauv1D1SS7ljWirl0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;710&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_07.jpg&quot; data-origin-width=&quot;1689&quot; data-origin-height=&quot;1030&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;알리에서 구입한 후방카메라와 검색한 모듈은 아래처럼 원형으로 4구형태인데... 고민스럽습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_01.jpg&quot; data-origin-width=&quot;1689&quot; data-origin-height=&quot;910&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b5D0jE/btsNLnmwJ3k/A7TtmzPOMcf2JBHIc94Qyk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b5D0jE/btsNLnmwJ3k/A7TtmzPOMcf2JBHIc94Qyk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b5D0jE/btsNLnmwJ3k/A7TtmzPOMcf2JBHIc94Qyk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb5D0jE%2FbtsNLnmwJ3k%2FA7TtmzPOMcf2JBHIc94Qyk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;710&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_01.jpg&quot; data-origin-width=&quot;1689&quot; data-origin-height=&quot;910&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;심지어 기존 배선에서 후진등으로 연결된 (+)배선도 찾을수 없습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;2. 2차시도&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;3선 후방카메라 배선연결로 검색하다가 비슷한 고민을 하다가 시행착오를 겪은, 결국은 카메라 하나 망가뜨리고나서 업자를 불러서 교체를 완료했다는 블로그를 발견하여 해당블로그대로 따라해 보기로 하고 2번째 탈거 작업.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;a href=&quot;https://playweb.tistory.com/entry/%EB%9F%B0%EC%A6%88-%ED%9B%84%EB%B0%A9%EC%B9%B4%EB%A9%94%EB%9D%BC-%EC%88%98%EB%A6%AC3%ED%95%80-%EC%BB%A4%EB%84%A5%ED%84%B0-%E2%86%924%ED%95%80-%EC%BB%A4%EB%84%A5%ED%84%B0-%EB%B3%80%ED%99%98&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;참고한 블로그 글 바로가기&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;배선 시도하는 과정에서 안쪽에 숨어있는 (+) 배선을 발견했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그런데 방향이 완전 달라서 또 고민하다가 원복했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;기존 배선의 전원 연결방향과 구입한 후방카메라의 전원연결 방향이 반대로 되어 있는 형태여서 무턱대로 작업할수 없었고, 시간도 늦어져 다음을 기약...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Old_배선.png&quot; data-origin-width=&quot;1413&quot; data-origin-height=&quot;921&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c5aiIJ/btsNLueMjkZ/Js0ZHrSrXL1hNNrjYD9mfk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c5aiIJ/btsNLueMjkZ/Js0ZHrSrXL1hNNrjYD9mfk/img.png&quot; data-alt=&quot;기존 후방카메라 배선&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c5aiIJ/btsNLueMjkZ/Js0ZHrSrXL1hNNrjYD9mfk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc5aiIJ%2FbtsNLueMjkZ%2FJs0ZHrSrXL1hNNrjYD9mfk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;326&quot; data-filename=&quot;Old_배선.png&quot; data-origin-width=&quot;1413&quot; data-origin-height=&quot;921&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;기존 후방카메라 배선&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;New_배선.png&quot; data-origin-width=&quot;1498&quot; data-origin-height=&quot;926&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n45dA/btsNKznxABa/uSV7kOBywQI3YdCRT5Z6aK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n45dA/btsNKznxABa/uSV7kOBywQI3YdCRT5Z6aK/img.png&quot; data-alt=&quot;새로 구매한 후방카메라 배선&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n45dA/btsNKznxABa/uSV7kOBywQI3YdCRT5Z6aK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn45dA%2FbtsNKznxABa%2FuSV7kOBywQI3YdCRT5Z6aK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;309&quot; data-filename=&quot;New_배선.png&quot; data-origin-width=&quot;1498&quot; data-origin-height=&quot;926&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;새로 구매한 후방카메라 배선&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;3. 3차시도&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이렇게 저렇게 검색하고 찾아본 결론은&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;- 네비게이션쪽과 카메라쪽 모두 최소 3개의 배선이 필요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;- 변환모듈은 최대한 살려서 해당 변환모듈을 통해 전원 및 영상이 통과되도록 유지해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;- &lt;b&gt;기존 케이블 연결선 중에서 카메라쪽으로 가는 3선 중 Red는 버리고, Yellow, Black 2개만 신규제품용 네비게이션 연결선 2선과 연결하는것으로 결정.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이라고 결론내고 배선을 깠는데,&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;알리 구매한 배선은 중 네비게이션 연결용 배선 색이 Red, Black, Yellow 가 아닌 White, Brown이어서 또 고민하게 되었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;영상 케이블을 분해해서 흰색이 영상의 + 선임을 알게되어 노란색과 연결하면 된다는것을 알게되었습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163.jpg&quot; data-origin-width=&quot;823&quot; data-origin-height=&quot;782&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cgdjfx/btsNKh1MYWJ/bcmxy86pXS6uTYKVp6SRyk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cgdjfx/btsNKh1MYWJ/bcmxy86pXS6uTYKVp6SRyk/img.png&quot; data-alt=&quot;알리 후방카메라 영상선 내부&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cgdjfx/btsNKh1MYWJ/bcmxy86pXS6uTYKVp6SRyk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcgdjfx%2FbtsNKh1MYWJ%2Fbcmxy86pXS6uTYKVp6SRyk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;380&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163.jpg&quot; data-origin-width=&quot;823&quot; data-origin-height=&quot;782&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;알리 후방카메라 영상선 내부&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_02.jpg&quot; data-origin-width=&quot;1689&quot; data-origin-height=&quot;1287&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pk5zm/btsNMxPop1Y/M1QMYmREbYcFmvLiTx24T0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pk5zm/btsNMxPop1Y/M1QMYmREbYcFmvLiTx24T0/img.png&quot; data-alt=&quot;기존 카메라로 가는 3개중 Red(전원)만 제외하고 연결&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pk5zm/btsNMxPop1Y/M1QMYmREbYcFmvLiTx24T0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fpk5zm%2FbtsNMxPop1Y%2FM1QMYmREbYcFmvLiTx24T0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;710&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_02.jpg&quot; data-origin-width=&quot;1689&quot; data-origin-height=&quot;1287&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;기존 카메라로 가는 3개중 Red(전원)만 제외하고 연결&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_05.jpg&quot; data-origin-width=&quot;1233&quot; data-origin-height=&quot;1173&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bLyJ4j/btsNKeYg1q1/xXW4QO9JsXNHkJUPKyodZ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bLyJ4j/btsNKeYg1q1/xXW4QO9JsXNHkJUPKyodZ1/img.png&quot; data-alt=&quot;기존 전원과 동일하게 신규 후방카메라도 전원을 공급&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bLyJ4j/btsNKeYg1q1/xXW4QO9JsXNHkJUPKyodZ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbLyJ4j%2FbtsNKeYg1q1%2FxXW4QO9JsXNHkJUPKyodZ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;225&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_05.jpg&quot; data-origin-width=&quot;1233&quot; data-origin-height=&quot;1173&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;기존 전원과 동일하게 신규 후방카메라도 전원을 공급&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_08.jpg&quot; data-origin-width=&quot;1675&quot; data-origin-height=&quot;1289&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ccLMH7/btsNLqjiW4b/OtpanXittH6yAcTg2KGy5k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ccLMH7/btsNLqjiW4b/OtpanXittH6yAcTg2KGy5k/img.png&quot; data-alt=&quot;선명한 후방의 모습이 잘 나옴&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ccLMH7/btsNLqjiW4b/OtpanXittH6yAcTg2KGy5k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FccLMH7%2FbtsNLqjiW4b%2FOtpanXittH6yAcTg2KGy5k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;888&quot; data-filename=&quot;edited_KakaoTalk_20250505_003358163_08.jpg&quot; data-origin-width=&quot;1675&quot; data-origin-height=&quot;1289&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;선명한 후방의 모습이 잘 나옴&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;최종 배선도의 모습은 아래와 같습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;최종배선도.png&quot; data-origin-width=&quot;1215&quot; data-origin-height=&quot;463&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kTgGU/btsNMCC6oMC/WFvfG7XBRsMEtAmwGldXBK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kTgGU/btsNMCC6oMC/WFvfG7XBRsMEtAmwGldXBK/img.png&quot; data-alt=&quot;영상선과 전원선만 잘 확인&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kTgGU/btsNMCC6oMC/WFvfG7XBRsMEtAmwGldXBK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkTgGU%2FbtsNMCC6oMC%2FWFvfG7XBRsMEtAmwGldXBK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;229&quot; data-filename=&quot;최종배선도.png&quot; data-origin-width=&quot;1215&quot; data-origin-height=&quot;463&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;영상선과 전원선만 잘 확인&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;중간에 더 헷갈렸던 것은 새로 구매한 카메라에 동봉된 배선이 이러한 모습이어서 였습니다. 도대체 저 잘린 전원선은 어떻게 하라는건지... 찾아보면 Trigger선이라고 나오는데, 제대로 된 설명이 없어서 고민을 더 했던것 같습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;만약 처음부터 저 선을 사용해서 네비게이션까지 연결해야 하는 상황(신규 배선까지 모두 해야하는 상황)이라면 한쪽 전원선도 후진등에, 나머지 한쪽은 네비게이션 전원쪽에 연결해 줘야 하는것으로 보입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;하지만 카메라만 교체하는 경우에는 필요없어지게 되는 선입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20250507_000950167.jpg&quot; data-origin-width=&quot;1689&quot; data-origin-height=&quot;812&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bEuXhu/btsNL1J9bOR/IQWqoPEAJDqNiyMmyzqfJ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bEuXhu/btsNL1J9bOR/IQWqoPEAJDqNiyMmyzqfJ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bEuXhu/btsNL1J9bOR/IQWqoPEAJDqNiyMmyzqfJ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbEuXhu%2FbtsNL1J9bOR%2FIQWqoPEAJDqNiyMmyzqfJ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;710&quot; data-filename=&quot;edited_KakaoTalk_20250507_000950167.jpg&quot; data-origin-width=&quot;1689&quot; data-origin-height=&quot;812&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;알고나면 간단하고, 별것도 아닌데, 처음 시도하는 상황이기도 하고, 무엇보다도 혹시 작업하다가 그나마 흐리게라도 나오던 카메라마져 망가뜨리면 어쩌나 하는 생각때문에 더 조심스럽게 접근하다보니 시간도 많이 걸린것 같습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그래도 카메라도 망가뜨리지 않으면서 공임비까지 절약했으니 도전해볼만한 DIY 인듯 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;저처럼 비슷한 상황에서 후방카메라 DIY하시는 분들에게 조금이나마 도움이 되었으면 좋겠습니다.&lt;/p&gt;</description>
      <category>Interesting</category>
      <category>3선</category>
      <category>4선</category>
      <category>diy</category>
      <category>네비게이션</category>
      <category>알리</category>
      <category>후방카메라</category>
      <category>후방카메라 배선도</category>
      <author>대단한넘</author>
      <guid isPermaLink="true">https://gubok.tistory.com/519</guid>
      <comments>https://gubok.tistory.com/519#entry519comment</comments>
      <pubDate>Wed, 7 May 2025 00:18:57 +0900</pubDate>
    </item>
    <item>
      <title>LG세탁기 + 삼성건조기 2단 직렬 셀프설치( 순정 키트 )</title>
      <link>https://gubok.tistory.com/518</link>
      <description>&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;1. 환경&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; - 세탁기 : LG세탁기&lt;s&gt; 12KG&lt;/s&gt;&amp;nbsp; 14KG였음&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; - 건조기 : 삼성건조기 9KG&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; - 당연한 얘기지만 건조기보다 세탁기가 커야 한다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;2. 준비물&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; - 삼성건조기용 스태킹 키트 ( SKK-TKW, 11번가 구매, 가격 3만원~ 4만원 ) / &lt;b&gt;건조기 모델별로 다름&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; - 드릴, 드라이버, 철판을 자를수 있는 도구(쇠톱 또는 그라인더)&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;3. 설치하게된 계기&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; - 이사하면서 세탁실이 좁아 세탁기와 건조기를 나란히 놓고 사용하기가 너무 불편해서 관련내용 찾아봄&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; - 회사가 다르면 스태킹키트가 맞지 않아, 직렬설치용 앵글을 구매하라고 하지만 좌우공간 확보가 되지 않고, 모양도 보기좋지 않음, 더군다나 가격도 10만원내외로 만만치 않음&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; - 우연히 유튜브를 보게되면서 세탁기위에 건조기를 고정만 시키면 된다는 정보를 얻게됨.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;4. 설치과정&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; - &lt;b&gt;&lt;u&gt;건조기 모델에 맞는 스태킹 키트를 구입&lt;/u&gt;&lt;/b&gt;한다. ( &lt;b&gt;세탁기 모델이 아님&lt;/b&gt; )&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 이유는 안전을 위해 건조기 다리를 고정시켜야 하는데, 이게 모델마다 다리의 좌우, 앞뒤폭이 다름. 특히 좌우폭에 맞게 홈이 파져있어 규격에 맞지 않으면 건조기가 고정이 되지 않음.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- 아래는 주문한스태킹 키트사진&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20241004_130329432.jpg&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;843&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kFGzH/btsNKoTPd1E/7jJTiTdHEUzkQkt226gFRK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kFGzH/btsNKoTPd1E/7jJTiTdHEUzkQkt226gFRK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kFGzH/btsNKoTPd1E/7jJTiTdHEUzkQkt226gFRK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkFGzH%2FbtsNKoTPd1E%2F7jJTiTdHEUzkQkt226gFRK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;654&quot; height=&quot;1163&quot; data-filename=&quot;edited_KakaoTalk_20241004_130329432.jpg&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;843&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_20241004_130329432_01.jpg&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;1613&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8t6xH/btsJUiJJtOp/zH7bzXKZqrVBonPUobCMS0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8t6xH/btsJUiJJtOp/zH7bzXKZqrVBonPUobCMS0/img.jpg&quot; data-alt=&quot;제품 구성은 위와 같다. 설명서가 없어 당황스러움&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8t6xH/btsJUiJJtOp/zH7bzXKZqrVBonPUobCMS0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8t6xH%2FbtsJUiJJtOp%2FzH7bzXKZqrVBonPUobCMS0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;651&quot; height=&quot;1158&quot; data-filename=&quot;KakaoTalk_20241004_130329432_01.jpg&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;1613&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;제품 구성은 위와 같다. 설명서가 없어 당황스러움&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주문하고 1주일만에 받은것 같다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쇼핑몰 배송이 아닌 삼성전자 직배송제품이다. 아마도 자가설치가 아닌 설치기사가 설치가 수반되는 경우가 많아서 그런것으로 보임.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;박스에 비해 구성품에 별거 없다. 다만, 설명서가 없어 좀 당황스럽다. 어느 글을 보니 위험한 과정이라 전문설치기사가 설치하는 조건으로 판매한다는 얘기 있는데, 이제 품은 그런거 없이 배송되었다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;상단과 하단에 2개씩 있는 'ㄱ'자 모양의 철판으로 세탁기와 키트를 연결한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세탁기의 용량 및 모델에 따라 선택해서 설치하면 되는데, 같은 삼성제품끼리 맞도록 철판길이와 나사구멍이 뚫어져 있어 이를 가공해야만 한다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20241004_130329432_02.jpg&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;1105&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pMmqe/btsNKwdke52/9Ck1kcnxrpakGJooekNB7K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pMmqe/btsNKwdke52/9Ck1kcnxrpakGJooekNB7K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pMmqe/btsNKwdke52/9Ck1kcnxrpakGJooekNB7K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpMmqe%2FbtsNKwdke52%2F9Ck1kcnxrpakGJooekNB7K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;702&quot; height=&quot;1248&quot; data-filename=&quot;edited_KakaoTalk_20241004_130329432_02.jpg&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;1105&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;짧은 B 모델로는 어떻게 할수가 없어 우측의 A모델로 설치하기로 하고 재단을 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세탁기 뒷면을 보면 구멍이 여러개 있는데, 플라스틱으로 막아놓은 움푹들어간 구멍에만 맞도록 재단하면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;( 아래 스티커 위치 ^^)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양쪽의 구멍을 모두 맞출 필요가 없다. 이거 맞추려고 무지 힘들게 고생했는데...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제 동봉된 나사의 갯수를 확인하고서야 알았다. 두꺼운 나사가 4개가 아닌 2개만 들어있다. ㅎㅎㅎ&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20241004_130329432_03.jpg&quot; data-origin-width=&quot;1613&quot; data-origin-height=&quot;907&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bllPAW/btsJUMjkaaW/gUdhMpX7pdXOxMooOcbrW1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bllPAW/btsJUMjkaaW/gUdhMpX7pdXOxMooOcbrW1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bllPAW/btsJUMjkaaW/gUdhMpX7pdXOxMooOcbrW1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbllPAW%2FbtsJUMjkaaW%2FgUdhMpX7pdXOxMooOcbrW1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;789&quot; height=&quot;444&quot; data-filename=&quot;edited_KakaoTalk_20241004_130329432_03.jpg&quot; data-origin-width=&quot;1613&quot; data-origin-height=&quot;907&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_20241004_130329432_04.jpg&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;1613&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bTtZ7S/btsJUpII3ph/f2sclUjKhnLSO9e8OKxUYK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bTtZ7S/btsJUpII3ph/f2sclUjKhnLSO9e8OKxUYK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bTtZ7S/btsJUpII3ph/f2sclUjKhnLSO9e8OKxUYK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbTtZ7S%2FbtsJUpII3ph%2Ff2sclUjKhnLSO9e8OKxUYK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;647&quot; height=&quot;1151&quot; data-filename=&quot;KakaoTalk_20241004_130329432_04.jpg&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;1613&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_20241004_130329432_06.jpg&quot; data-origin-width=&quot;1613&quot; data-origin-height=&quot;907&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/CLyk8/btsJUX53NBw/njrtEgqcckMqLaeRJLGvAk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/CLyk8/btsJUX53NBw/njrtEgqcckMqLaeRJLGvAk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/CLyk8/btsJUX53NBw/njrtEgqcckMqLaeRJLGvAk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCLyk8%2FbtsJUX53NBw%2FnjrtEgqcckMqLaeRJLGvAk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;737&quot; height=&quot;414&quot; data-filename=&quot;KakaoTalk_20241004_130329432_06.jpg&quot; data-origin-width=&quot;1613&quot; data-origin-height=&quot;907&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연결 철판을 키트 좌우 잘 맞춰서 연결하고, 세탁기 위에 올린다.&amp;nbsp; 2개만 연결하면 약할까 싶지만 꽤 짱짱하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게다가&amp;nbsp;앞쪽은 양면스티커로 고정되도록 되어있어 웬만한 힘으로는 움직이지 않게 되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나사로 조이기 전에 양면스티커를 살짝만 벗겨놓고 아래처럼 접어놓으면 작업이 수월하다. 다 떼버리면 양면테이프가 세탁기에 붙어버려서 위치 조정하기가 쉽지 않기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나사로 조인 후에 접힌부분 잡아당기면 됨.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_20241004_130329432_05.jpg&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;1613&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cXuRVW/btsJVNBzXoQ/a2adSFKii4p4LCwIhBs2Z1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cXuRVW/btsJVNBzXoQ/a2adSFKii4p4LCwIhBs2Z1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cXuRVW/btsJVNBzXoQ/a2adSFKii4p4LCwIhBs2Z1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcXuRVW%2FbtsJVNBzXoQ%2Fa2adSFKii4p4LCwIhBs2Z1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;800&quot; height=&quot;1423&quot; data-filename=&quot;KakaoTalk_20241004_130329432_05.jpg&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;1613&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 힘쓸일만 남았다. 생각보다 무겁지 않다. 9kg이라서 그런가?&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;남자 2명이면 거뜬히 들어올릴수 있고, 건조기 뒷다리부분만 스태킹키트 홈에 맞추고 뒤로 조심스럽게 밀면 된다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞쪽은 마감재로 마무리하고 작은 나사로 마무리하면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 완성된 모습이다. 공간도 절약하고 깔끔하게 작업되어 뿌듯함. ( 와이프한테 칭찬받음 ㅎㅎㅎ )&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_KakaoTalk_20241004_130329432_07.jpg&quot; data-origin-width=&quot;644&quot; data-origin-height=&quot;1122&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cmOwWo/btsNMBYuiY6/yMEx8Ay84XLiLGin0OMdrK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cmOwWo/btsNMBYuiY6/yMEx8Ay84XLiLGin0OMdrK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cmOwWo/btsNMBYuiY6/yMEx8Ay84XLiLGin0OMdrK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcmOwWo%2FbtsNMBYuiY6%2FyMEx8Ay84XLiLGin0OMdrK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;798&quot; height=&quot;1419&quot; data-filename=&quot;edited_KakaoTalk_20241004_130329432_07.jpg&quot; data-origin-width=&quot;644&quot; data-origin-height=&quot;1122&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>잡다구리</category>
      <category>2단설치</category>
      <category>LG세탁기</category>
      <category>건조기</category>
      <category>삼성건조기</category>
      <category>셀프</category>
      <category>순정</category>
      <category>순정키트</category>
      <category>스태킹키트</category>
      <category>엘지세탁기</category>
      <category>직렬설치</category>
      <author>대단한넘</author>
      <guid isPermaLink="true">https://gubok.tistory.com/518</guid>
      <comments>https://gubok.tistory.com/518#entry518comment</comments>
      <pubDate>Fri, 4 Oct 2024 14:07:02 +0900</pubDate>
    </item>
    <item>
      <title>AWS 에 WordPress로 홈페이지 구축하기</title>
      <link>https://gubok.tistory.com/517</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;간단한 홈페이지를 구축할 상황이 발생했다. (웹디자이너가 있다면 비교적 간단하게 처리할수 있겠지만, 그렇지 못한 상황이다. )&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네이버에 &quot;홈페이지 제작&quot; 검색해보면 호스팅비용 포함해서 100~200만원의 비용으로 홈페이지를 구축해주는 회사들이 많다. 연락해서 문의해본 결과 대부분의 저비용 홈페이지 구축은&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;&amp;nbsp;- 온라인으로만 진행하는데, 웹사이트를 통해서 맘에드는 템플릿 선택한 후 &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;&amp;nbsp;- 그에 맞는 컨텐츠(내용과 관련 이미지)는 메일등으로 전달하면 &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;&amp;nbsp;- 내용에 맞게 구성해 준다. 이미지가 없다면 라이선스 없는 적당한 이미지는 알아서 해줌.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;&amp;nbsp;-&amp;nbsp;&lt;/span&gt;나중에 서비스가 종료되어도 결과물 백업은 안됨&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저렴한건 알겠는데, 왠지 제작과정에서 커뮤니케이션이 원할하지 않으면 원하는 모양으로 단기간에 홈페이지를 구축하는게 가능할까? 싶어 고민하는 중에 &lt;span style=&quot;letter-spacing: 0px;&quot;&gt;지인의 소개로 알게된 SW제품이&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&quot;워드프레스와&amp;nbsp; 부트스트랩&quot; 이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;IT업계에 있다보니 처음듣는 이름은 아니었으나 사용해볼 일이 없어 관심을 두지 않았던 제품이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;검색을 통해 둘의 장단점을 간단히 비교하고 워드프레스로 테스트해보기로 결정.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존에 Moodle 테스트하려고 Azure에 만들어두었던 가상서버 활용해서 바로 설치해봄. ( Moodle 환경도 LAMP 였음).&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이틀정도 만져본 테스트 결과물로 내부 OK 승인. 이후 AWS환경으로 운영환경 구축 진행.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(현재는 Azure보다는 AWS가 금액적으로 저렴함.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1. AWS는 Azure보다 어렵구나.&lt;/b&gt; ( 아니 복잡하구나. 아니 linux와 windows 의 차이랄까? )&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존 프로젝트하면서 만들었던 AWS 개발환경 초기화하면서 요금발생 없애려고 Default VPC까지 전부 삭제해놓은 상황이라, Custom VPC부터 시작하다보니 조금은 어렵다고 느껴졌을수도.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;순서는 대략 다음과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;a. VPC 생성&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;b. subnet 생성&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;c. internet gateway 생성 &lt;br /&gt;( subnet을 Public, Private으로 나누지 않고 하나만 생성하다보니 외부와 연결할 외부용 Internet Gateway가 필수)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;d. 이후 EC2 생성&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;e. Elastic IP 생성하여 연결&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2. LAMP 환경 구성&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;OS는 Amazon Linux.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CentOS가 익숙했지만 더이상 업데이트되지 않는듯 하고, 또 AWS에서는 CentOS기반으로 Amazon Linux를 제공하기 때문에 굳이 CentOS를 사용하지 않아도 된다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2.1 Apache2.x설치 및 SSL 구성&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2.2 Amazon Linux에 PHP7.x 설치하기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2.3 MariaDB설치하기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;3. WordPress 설치 &amp;amp; 세팅&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;gt;&amp;gt; wordpress 간단 사용법 : &lt;a href=&quot;https://www.youtube.com/watch?v=DbQTHmc15KQ&quot;&gt;https://www.youtube.com/watch?v=DbQTHmc15KQ&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;테마설치시 ftp정보 물어보는 경우 대처 :&amp;nbsp; &lt;a href=&quot;https://shary1012.tistory.com/256&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://shary1012.tistory.com/256&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;테마설치시 directory 생성오류가 나오는 경우 :&amp;nbsp; chown -R apache.apache wp/&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;테마선택 : astra,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Astra 옵션 &amp;gt; 가져오기 plugin 설치, 설치완료 후 &lt;span style=&quot;letter-spacing: 0px;&quot;&gt;PageBuilder 선택( Elementor 선택 )&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;데모사이트 템플릿에서 : digital agency 선택 &amp;amp; 설치&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;4. WordPress 보안강화&lt;/b&gt; (wp-admin 분리 및 접근통제)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;5. 멀티사이트를 통한 영문홈페이지 추가 구축&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- gmail smtp api 플러그인 적용&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- multi site 구조변경 이후 gmail api 먹통 이후 재 설정&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- 영문, 국문 gmail api 사용하려면 각각 프로젝트를 만들서 진행해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- wordpress에서 키를 삭제하고 다시 진행해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;600&quot; data-origin-height=&quot;466&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ctIekx/btrBcdciuJX/ijKSRkdNYDYjygXQ6cuwD0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ctIekx/btrBcdciuJX/ijKSRkdNYDYjygXQ6cuwD0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ctIekx/btrBcdciuJX/ijKSRkdNYDYjygXQ6cuwD0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FctIekx%2FbtrBcdciuJX%2FijKSRkdNYDYjygXQ6cuwD0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;466&quot; data-origin-width=&quot;600&quot; data-origin-height=&quot;466&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Delete Access Key 이후 설정을 다시 세팅, 이후 Grant Permission 버튼이 활성화 됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(To be continue...)&lt;/p&gt;</description>
      <category>개발노트</category>
      <category>AWS</category>
      <author>대단한넘</author>
      <guid isPermaLink="true">https://gubok.tistory.com/517</guid>
      <comments>https://gubok.tistory.com/517#entry517comment</comments>
      <pubDate>Wed, 4 May 2022 10:43:47 +0900</pubDate>
    </item>
    <item>
      <title>오픈소스 LMS (Moodle)설치(MS Azure)</title>
      <link>https://gubok.tistory.com/516</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;moodle이라는 오픈소스 LMS를 MS Azure Cloud에 설치합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;docker-compose를 통해서 간단히 설치하는 방법도 있었지만 직접 APM형태로 설치&amp;amp;세팅하였습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;참고 설치 매뉴얼(한글)&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;https://techexpert.tips/ko/moodle-ko/%EC%9A%B0%EB%B6%84%ED%88%AC-%EB%A6%AC%EB%88%85%EC%8A%A4%EC%97%90-%EB%AC%B4%EB%93%A4-%EC%84%A4%EC%B9%98/&quot;&gt;https://techexpert.tips/ko/moodle-ko/%EC%9A%B0%EB%B6%84%ED%88%AC-%EB%A6%AC%EB%88%85%EC%8A%A4%EC%97%90-%EB%AC%B4%EB%93%A4-%EC%84%A4%EC%B9%98/&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;I. MS Azure 인프라 설치&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. Azure 리소스그룹 생성&lt;br /&gt;&amp;nbsp;&amp;gt; 그룹명 : lms-vnet-rg&lt;br /&gt;&amp;nbsp;&amp;gt; : 10.2.0.0/22&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 가상네트워크(lms-vnet), subnet (subnet1, subnet2) 생성( DB, Web분리예정)&lt;br /&gt;&amp;nbsp;&amp;gt; lms-vnet : 10.2.0.0/22&lt;br /&gt;&amp;nbsp;&amp;gt; subnet1 : 10.2.1.0/24 (Web Server)&lt;br /&gt;&amp;nbsp;&amp;gt; subnet2 : 10.2.2.0/24 (DB 영역)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 가상머신 생성&lt;br /&gt;&amp;nbsp;&amp;gt; OS : CentOS7.8-free&lt;br /&gt;&amp;nbsp;&amp;gt; WEB : 2vcpu, 4GiB 메모리 / DB : 4vcpu, 16GiB 메모리&lt;br /&gt;&amp;nbsp;&amp;gt; 위치 : 한국 중부&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;II. moodle 소스 설치를 위한 APM 설치&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;1. Database 설치(MariaDB)&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1641800121804&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;//MariaDB용 yum repository를 업데이트한다.
sudo vi /etc/yum.repos.d/MariaDB.repo

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64/
gpgkey = https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck = 1

//mariadb, mariadb-server를 설치
sudo yum install mariadb mariadb-server -y 

//설치된 mariadb를 실행
sudo systemctl start mariadb

//Character-set 설정 (MariaDB 10.3기준)
sudo vi /etc/my.cnf.d/mysql-clients.cnf 

[mysql]
default-character-set=utf8mb4
..
[mysqldump]
default-character-set=utf8mb4
..


sudo vi /etc/my.cnf.d/server.cnf

[server]
init-connect='SET NAMES utf8mb4'
lower_case_table_name=1
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

# this is only for the mysqld standalone daemon
[mysqld]
default_storage_engine=innodb

//moodle용 Database와 사용자를 추가한다.(권한포함)
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

//Create a user/password combination with appropriate permissions for the database. For example (MySQL again):
MariaDB [(none)]&amp;gt; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodleuser'@'localhost' IDENTIFIED BY 'moodleuser123!';
Query OK, 0 rows affected (0.003 sec)

//web-server접속용 권한
MariaDB [(none)]&amp;gt; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodleuser'@'10.2.1.0/255.255.255.0' IDENTIFIED BY 'moodleuser123!';
Query OK, 0 rows affected (0.005 sec)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;2. ==== LMS Moodle 설치를 위한 Apache, PHP설치 ====&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1641799519676&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;1). yum update ( 옵션 ) 
  sudo yum update -y

2). Apache 설치 

 sudo yum install httpd -y

 2.1) openssl, mod_ssl 설치 ( rpm -qa|grep OOO 으로 확인해서 설치되었다면 pass )

 sudo yum install mod_ssl -y 

 /etc/httpd/modules 아래에 mod_ssl.so 생성확인 

 2.2) ssl.conf 수정 및 인증서 복사 
  2.2.1 인증서 파일 복사하여 위치시킴.
  2.2.2 httpd.conf 를 수정하여 Rewrite 설정 (http -&amp;gt; https ) 

3). SELinux 해제 
    \&amp;gt; sudo vi /etc/selinux/config

    SELINUX=disabled 로 변경후 재부팅 
    임시로 적용 : sudo setenforce 0 

4). php 모듈 설치 

sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm 

sudo yum-config-manager --enable remi-php73
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd php-xml php-pear php-pdo libapache2-mod-php php-mbstring php-xmlrpc php-zip php-bcmath php-ldap php-pspell php-curl php-intl php-soap -y 

5). 아파치 재시작 및 php 적용사항 확인 
  sudo systemctl restart httpd

  sudo vi /var/www/html/phpinfo.php

&amp;lt;?php
phpinfo()
?&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 소스 다운로드 및 설치 진행&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최신버전 : &lt;a href=&quot;https://download.moodle.org/releases/latest/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://download.moodle.org/releases/latest/&lt;/a&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1641799621099&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;1). 소스 다운로드(최신버전은 별도 확인)
version3.8
 wget https://download.moodle.org/stable38/moodle-latest-38.tgz

version3.11
 wget https://download.moodle.org/download.php/stable311/moodle-3.11.4.tgz

2). 압축을 해제 
sudo tar -zxvf moodle-latest-38.tgz

해제된 소스를 Apache Document Root로 이동한다. 
cp /downloads/moodle /var/www/html/ -R&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 접근권한 및 설정 변경&lt;/p&gt;
&lt;pre id=&quot;code_1641800271316&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;3). 웹서버에게 moodle 디렉토리 소유권을 부여하고 접근권한을 변경한다.

 sudo chown apache.apache /var/www/html/moodle -R
 sudo chmod 0755 /var/www/html/moodle -R

4). Moodle 데이터 업로드 디렉토리를 생성 후 접근권한을 변경한다. 
  (SELinux가 해제되어 있지 않으면 설치시 오류가 발생한다.)

 sudo mkdir /var/www/moodledata
 sudo chown apache /var/www/moodledata -R

 sudo chmod 0777 /var/www/moodledata -R

5). http://domain.com/moodle/ 로 접속하면 설치가 진행된다.
   앞서 설치된 DB 접속정보를 입력하여 설치를 마무리 한다.
   설치후 변경은 config.php정보를 수정한다.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. Google smtp 연동사용&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회원가입, 수강신청등의 이유로 메일연동이 필요하다. smtp를 구글메일로 사용하기 위한 &lt;span style=&quot;background-color: #ffffff;&quot;&gt;일반적인 설정.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;설정시 AWS에 설치된 타시스템에서는 정상적으로 작동했는데, MS Azure에서는 미작동한다. 이유가?&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;PHP Mail 테스트로도 발송이 안되고 아래와 같이 오류가 발생함.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;아래 오류를 획득하기 위해서 /etc/php.ini에서 error log 출력을 위한 설정을 변경해야한다. (별도구글링 )&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1641800431494&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;오류
2021-11-23 11:06:40     SERVER -&amp;gt; CLIENT: 534-5.7.14 &amp;lt;https://accounts.google.com/signin/continue?sarp=1&amp;amp;scc=1&amp;amp;plt=AKgnsbv
                                          534-5.7.14 5flh2VmuG9Rpp1NcnLIkbChbKw0FMwuzjkRkz76Ka-FP7xOgVcUXwDM6sJkX2MWXNeLeI
                                          534-5.7.14 i0CgTViB6ZJK5jAW0tSA1NpT5CZNSXumtvLT_qzu2YMrun2Cacr1yNcLDOQHImm7&amp;gt;
                                          534-5.7.14 Please log in via your web browser and then try again.
                                          534-5.7.14  Learn more at
                                          534 5.7.14  https://support.google.com/mail/answer/78754 t66sm11915990pfd.150 - gsmtp
2021-11-23 11:06:40     SMTP ERROR: Password command failed: 534-5.7.14 &amp;lt;https://accounts.google.com/signin/continue?sarp=1&amp;amp;scc=1&amp;amp;plt=AKgnsbv
                                          534-5.7.14 5flh2VmuG9Rpp1NcnLIkbChbKw0FMwuzjkRkz76Ka-FP7xOgVcUXwDM6sJkX2MWXNeLeI
                                          534-5.7.14 i0CgTViB6ZJK5jAW0tSA1NpT5CZNSXumtvLT_qzu2YMrun2Cacr1yNcLDOQHImm7&amp;gt;
                                          534-5.7.14 Please log in via your web browser and then try again.
                                          534-5.7.14  Learn more at
                                          534 5.7.14  https://support.google.com/mail/answer/78754 t66sm11915990pfd.150 - gsmtp
2021-11-23 11:06:40     SMTP Error: Could not authenticate.
2021-11-23 11:06:40     CLIENT -&amp;gt; SERVER: QUIT
2021-11-23 11:06:40     SERVER -&amp;gt; CLIENT: 221 2.0.0 closing connection t66sm11915990pfd.150 - gsmtp
2021-11-23 11:06:40     SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
Mailer Error: SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해결방법은 아래와 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용하려고 하는 gmail계정의 보안/인증에서 &lt;b&gt;2단계인증 후 앱 비밀번호 생성&lt;/b&gt;해서 해당정보를 설정해줘야한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요약&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 앱 비밀번호 생성시 앱을 선택하고자 할때 &lt;b&gt;기타(맞춤이름)를 선택&lt;/b&gt;한다.&lt;br /&gt;2. &lt;b&gt;Smtp Client&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;로 명시하고 생성을 클릭&lt;br /&gt;3. 생성된 비밀번호를 복사하여 사용자 Password 에 넣는다.&lt;br /&gt;&amp;nbsp; &amp;nbsp;계정정보는 기존정보를 그대로 넣거나 넣지않아도 정상 작동된다.&lt;/p&gt;</description>
      <category>Interesting</category>
      <category>LMS</category>
      <category>Moodle</category>
      <category>무들</category>
      <category>오픈소스LMS</category>
      <author>대단한넘</author>
      <guid isPermaLink="true">https://gubok.tistory.com/516</guid>
      <comments>https://gubok.tistory.com/516#entry516comment</comments>
      <pubDate>Mon, 10 Jan 2022 16:43:47 +0900</pubDate>
    </item>
    <item>
      <title>오픈소스 회의실예약시스템(booked) 설치</title>
      <link>https://gubok.tistory.com/515</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;하나의 회의공간을 서로다른 회사가 사용하는데, 예약시스템으로 관리할 필요가 생겼다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예약시스템 관리하는 오픈소스를 찾아보았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회의내용등이 외부로 공개되는것을 원치 않아 내부에서만 사용하는 설치형태 기준으로 찾아보기로 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(구글캘린더 응용등은 배제)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. Coworkers - 친숙한 java 기반의 회의실(자원) 예약시스템, 설치를 해봤으나 기능이 좀 미비하고, 중간에 오류가 발생함(아마도 설정이나 소스를 제대로 확인하지 못해서 발생한게 아닌가 싶다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. Booked - PHP로 개발된 예약시스템. 문서화 및 설치가이드가 잘되어 있는듯하여 이 제품으로 선택&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- 공식사이트 - &lt;a href=&quot;https://www.bookedscheduler.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://www.bookedscheduler.com/&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp;( 초기에는 사이트에서 다운로드를 지원했으나 3.0버전업 이후에 지원하지 않음. )&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- github에서 구버전(2.8.5) 다운로드 진행 : &lt;a href=&quot;https://github.com/effgarces/BookedScheduler&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://github.com/effgarces/BookedScheduler&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- 공식포럼 : &lt;a href=&quot;https://forums.bookedscheduler.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://forums.bookedscheduler.com/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- 설치가이드 : 소스를 다운받으면 installation.md5에 영문으로 친절하게 가이드되어 있음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후 어느순간 유료화 정책으로 변경되면서 소스다운로드가 사라졌다. 완전히 사라진건 아니고 숨겨졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 github를 통해서 다운로드 해야한다. (22.05.01 updated)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://github.com/effgarces/BookedScheduler&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://github.com/effgarces/BookedScheduler&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치유형 : AWS EC2 개설해서 DB(MariaDB), Apache2.x로 직접 설치&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치순서 : 일반적인 APM설치의 과정을 거친다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. MySQL(MariaDB)설치&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. Apache 설치&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. PHP설치&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. 방화벽 오픈&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. DB설치&lt;/p&gt;
&lt;pre id=&quot;code_1641796693294&quot; class=&quot;sql&quot; data-ke-language=&quot;sql&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;CREATE DATABASE `booked`;
CREATE USER 'booked_user'@'localhost' identified by 'PASSWORD';
CREATE USER 'booked_user'@'127.0.0.1' identified by 'PASSWORD';

GRANT ALL on booked.* to 'booked_user'@'localhost';
GRANT ALL on booked.* to 'booked_user'@'127.0.0.1';

SET foreign_key_checks = 0;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. Apache 설치&lt;/p&gt;
&lt;pre id=&quot;code_1641796763118&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt; //apache 설치
 \&amp;gt; sudo yum install -y httpd
...
 //apache 시작
 \&amp;gt; sudo systemctl start httpd

 //리부팅시 자동실행
 \&amp;gt; sudo systemctl enable httpd&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. PHP 및 모듈 설치&lt;/p&gt;
&lt;pre id=&quot;code_1641796835535&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;///////////// PHP7 설치 /////////////
sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm 

sudo yum-config-manager --enable remi-php73
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd php-xml php-pear php-pdo

sudo systemctl restart httpd

sudo vi /var/www/html/phpinfo.php

&amp;lt;?php
phpinfo()
?&amp;gt;

브라우져에서 http://SERVER-ADDRESS/phpinfo.php로 확인&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. 방화벽 해제&lt;/p&gt;
&lt;pre id=&quot;code_1641798330982&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;\&amp;gt; sudo vi /etc/selinux/config

SELINUX=disabled 로 변경.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5. 소스 배포 및 권한변경&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특별한 이유가 없다면 /var/www/html에 배포한다.&lt;/p&gt;
&lt;pre id=&quot;code_1641798599197&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo chown -R apache:apache /var/www/html

//tpl, tpl_c는 아래와 같이 권한을 변경
//설치과정에서 권한오류가 발생한다면 777변경 후 설치완료 후 755로 변경한다.
sudo chmod 755 tpl
sudo chmod 755 tpl_c&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6. 설치스크립트 진행&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;http://SERVER-ADDRESS/Web/install/ 페이지에서 설치 진행&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Interesting</category>
      <category>APM</category>
      <category>booked</category>
      <category>php</category>
      <category>예약시스템</category>
      <category>오픈소스 예약시스템</category>
      <author>대단한넘</author>
      <guid isPermaLink="true">https://gubok.tistory.com/515</guid>
      <comments>https://gubok.tistory.com/515#entry515comment</comments>
      <pubDate>Mon, 10 Jan 2022 16:15:28 +0900</pubDate>
    </item>
    <item>
      <title>갤럭시 이온에 SK hynix Gold P31 M.2 NVME 500GB 추가</title>
      <link>https://gubok.tistory.com/514</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;사용하던 갤럭시 이온 노트북(NT950XCJ)의 기존 512GB SSD 용량이 부족해서 SSD를 추가하게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어떤 모델로 구매할까 생각하다 얼마전 우연히 기사를 통해 알게된 SK Hynix SSD Gold P31 nvme 로 결정.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아무망설임 없이 최저가 구매 결제 완료.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 가격비교사이트에서 SSD M.2 nvme의 를 찾아보다가 nvme가 여러개의 모델, 정확하게는 폼팩터가 존재한다느 사실을 알고나서 급 고민.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;M.2(2260), M.2(2280), M.2(22110)&amp;nbsp; 뭔 차이일까?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;당연히 일단 M.2 nvme는 노트북에서 당연히 호환히 될꺼라고 생각하고 고민 1도 없이 결제한것이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;420&quot; data-origin-height=&quot;123&quot; data-filename=&quot;sk_p31_gold.png&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/v2Z17/btrjR62XTOP/69sgAEwM5v8RlkD0K4QKw0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/v2Z17/btrjR62XTOP/69sgAEwM5v8RlkD0K4QKw0/img.png&quot; data-alt=&quot;SK hynix Gold P31 NVMe M.2(2280)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/v2Z17/btrjR62XTOP/69sgAEwM5v8RlkD0K4QKw0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fv2Z17%2FbtrjR62XTOP%2F69sgAEwM5v8RlkD0K4QKw0%2Fimg.png&quot; data-origin-width=&quot;420&quot; data-origin-height=&quot;123&quot; data-filename=&quot;sk_p31_gold.png&quot; data-ke-mobilestyle=&quot;widthOrigin&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;SK hynix Gold P31 NVMe M.2(2280)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결론은 M.2(2280)이 가장 일반적인 모델이라는것. 2280에서 앞의 22는 ssd 폭이 22mm라는거고 80은 길이가 80mm라는 거란다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왠만한 노트북은 대부분 M.2(2280)이면 사이즈 문제는 없단다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 안심하고 혹시 초기모델에 대한 호환성여부와 관련 기사를 검색.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LG그램에서 일부 문제가 있었다는 기사가 검색됨. 21년 3월.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;삼성노트북인데, 괜히 SK hynix꺼 샀나하는 생각도 들어서 구매업체 Q&amp;amp;A에 확인문의.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;돌아온 답은 (예상했던대로) &quot;노트북제조사 삼성이나 SSD 제조사(SK hynix)에 문의해보라&quot; 는 별 도움안되는 내용의 답변만 받았다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음날 물건 받고 바로 설치해보니 아무문제 없이 설치 끝.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;SK hynix SSD도 이제 호환성문제는 대부분 해결된게 아닌가 하는 생각과 함께 결론은 삼성 갤럭시 이온1과 호환성 전혀 문제 없는것으로 결론.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Interesting</category>
      <category>SK hynix Gold P31 NVMe</category>
      <category>ssd</category>
      <category>개럭시 이온1</category>
      <category>호환성</category>
      <author>대단한넘</author>
      <guid isPermaLink="true">https://gubok.tistory.com/514</guid>
      <comments>https://gubok.tistory.com/514#entry514comment</comments>
      <pubDate>Thu, 4 Nov 2021 23:01:05 +0900</pubDate>
    </item>
    <item>
      <title>java.sql.SQLException: Access denied for user 'user'@'192.168.0.1' (using password: YES) 오류의 종류</title>
      <link>https://gubok.tistory.com/513</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;결론 : 버전에 맞지 않는 jdbc driver 를 사용하는 경우 위와 같은 오류메시지가 발생할수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;메시지의 내용이 좀 엉뚱맞아서 한참을 헤맸다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더 이상한것은 URL IP 끝자리가 100번인데, 1까지만 나오는점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;상황&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이전에 사용하던 DB커넥션 테스트소스를 새로운 mysql db로의 접속테스트 시도하려는데, 위 제목과 같은 오류메시지가 발생.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;dbeaver에서도 잘 되고, myslq server에 들어가서 상태를 체크해봐도 이상없는데...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;pom.xml의 jdbc driver 버전을 올려주었더니 바로 OK ㅠ.ㅠ;;;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 이게 왠만큼 버전차이가 발생하면 이상이 없는듯하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;구 소스에서 사용하던 드라이버 버전이 mysql 5.1.9 버전이었고, 접속하려는 DB의 버전은 8.0.x였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;드라이버 버전을 5.1.49버전에서 멀쩡하게 돌아가는것으로 보아 해당 버전사이에 어떠한 업데이트가 있었던듯하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가급적이면 접속하려는 서버의 버전과 맞춰서 사용하자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발노트/iBatis/myBatis</category>
      <category>JDBC Driver</category>
      <category>mybatis</category>
      <category>mysql</category>
      <author>대단한넘</author>
      <guid isPermaLink="true">https://gubok.tistory.com/513</guid>
      <comments>https://gubok.tistory.com/513#entry513comment</comments>
      <pubDate>Tue, 31 Aug 2021 18:52:02 +0900</pubDate>
    </item>
    <item>
      <title>SpringBoot에서 과거 web.xml 의 listener 처리</title>
      <link>https://gubok.tistory.com/512</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;기존 Spring MVC 프로젝트에서 filemonitoring 처리시 사용했던 코드를 SpringBoot로 변경해야할 상황이 되어 찾아보니 아래와 같이 간단히 해결되었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존 web.xml의 listener 처리&lt;/p&gt;
&lt;pre id=&quot;code_1628155146956&quot; class=&quot;cs&quot; data-ke-language=&quot;cs&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;listener&amp;gt;
    &amp;lt;listener-class&amp;gt;com.test.base.monitor.FileMonitoringListener&amp;lt;/listener-class&amp;gt;
&amp;lt;/listener&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;SpringBoot에는 web.xml설정이 없는 관계로 기존 web.xml 에서 처리하던 listener는 아래와 같이 처리합니다.&lt;/p&gt;
&lt;pre id=&quot;code_1628155408020&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;@Component
public class CustomListener implements ApplicationListener&amp;lt;ApplicationStartedEvent&amp;gt; {

	private final static Logger log = LoggerFactory.getLogger(CustomListener.class);

	@Value(&quot;${monitoring.file-root}&quot;) 
	private String monitoringFileRoot;
	
	@Override
	public void onApplicationEvent(ApplicationStartedEvent applicationStartedEvent) {
		
		log.info(&quot;=======================&quot;);
		log.info(&quot;CustomListener Started...&quot;);
		log.info(&quot;=======================&quot;);
        
        //--- 이하 생략 ...
    }
    
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발노트/Spring</category>
      <category>ApplicationListener</category>
      <category>listener</category>
      <category>springboot</category>
      <author>대단한넘</author>
      <guid isPermaLink="true">https://gubok.tistory.com/512</guid>
      <comments>https://gubok.tistory.com/512#entry512comment</comments>
      <pubDate>Thu, 5 Aug 2021 18:24:57 +0900</pubDate>
    </item>
    <item>
      <title>VirtualBox 네트워크 안될때 팁</title>
      <link>https://gubok.tistory.com/511</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;도커 및 쿠버네틱스 구성을 위해 사용하던 노트북에 Oracle Virtualbox를 설치했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;집과 회사에서 사용하는 상황이라 WiFi는 DHCP로 사용중이구요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데, 가끔씩 VirtualBox에서 인터넷이 안됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 VirtualBox 구성시 이더넷 네트웤 공유기능을 이용하여 사용중.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-origin-width=&quot;1006&quot; data-origin-height=&quot;386&quot; data-filename=&quot;VirtualBoxNetwork공유.png&quot; width=&quot;709&quot; height=&quot;272&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cMjDLi/btq7SEvmrgM/J3KBM68K813fB7A0DPhhb1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cMjDLi/btq7SEvmrgM/J3KBM68K813fB7A0DPhhb1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cMjDLi/btq7SEvmrgM/J3KBM68K813fB7A0DPhhb1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcMjDLi%2Fbtq7SEvmrgM%2FJ3KBM68K813fB7A0DPhhb1%2Fimg.png&quot; data-origin-width=&quot;1006&quot; data-origin-height=&quot;386&quot; data-filename=&quot;VirtualBoxNetwork공유.png&quot; width=&quot;709&quot; height=&quot;272&quot; data-ke-mobilestyle=&quot;widthOrigin&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이래저래 만지다가 발견한 팁.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. VirtualBox의 속성 &amp;gt; 공유탭에서 공유를 한번더 체크해줍니다. ( 당연히 에러납니다. )&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-origin-width=&quot;652&quot; data-origin-height=&quot;673&quot; data-filename=&quot;VirtualBox공유체크.png&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/O4xqV/btq7PMax1YR/EPtRDRIxK85azuxjBAPL01/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/O4xqV/btq7PMax1YR/EPtRDRIxK85azuxjBAPL01/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/O4xqV/btq7PMax1YR/EPtRDRIxK85azuxjBAPL01/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FO4xqV%2Fbtq7PMax1YR%2FEPtRDRIxK85azuxjBAPL01%2Fimg.png&quot; data-origin-width=&quot;652&quot; data-origin-height=&quot;673&quot; data-filename=&quot;VirtualBox공유체크.png&quot; data-ke-mobilestyle=&quot;widthOrigin&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;당연히 에러나지만 확인을 클릭합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-origin-width=&quot;517&quot; data-origin-height=&quot;238&quot; data-filename=&quot;VirtualBox공유체크_결과.png&quot; width=&quot;465&quot; height=&quot;214&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/KbMEy/btq7PNAvGzr/z2mtwQdKCCCIUyCHZMkKtk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/KbMEy/btq7PNAvGzr/z2mtwQdKCCCIUyCHZMkKtk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/KbMEy/btq7PNAvGzr/z2mtwQdKCCCIUyCHZMkKtk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKbMEy%2Fbtq7PNAvGzr%2Fz2mtwQdKCCCIUyCHZMkKtk%2Fimg.png&quot; data-origin-width=&quot;517&quot; data-origin-height=&quot;238&quot; data-filename=&quot;VirtualBox공유체크_결과.png&quot; width=&quot;465&quot; height=&quot;214&quot; data-ke-mobilestyle=&quot;widthOrigin&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 다시 WiFi 속성 &amp;gt; 공유를 클릭하여 공유를 다시 클릭합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연결할 네트워크가 여러개 나오는데, VirtualBox Host-Only Network를 선택 후 확인을 클릭합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-origin-width=&quot;526&quot; data-origin-height=&quot;667&quot; data-filename=&quot;WIFI공유.png&quot; width=&quot;438&quot; height=&quot;555&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bFIu93/btq7Qbm9WGb/H4ukDcRzb2dcm4FuTfgruk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bFIu93/btq7Qbm9WGb/H4ukDcRzb2dcm4FuTfgruk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bFIu93/btq7Qbm9WGb/H4ukDcRzb2dcm4FuTfgruk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbFIu93%2Fbtq7Qbm9WGb%2FH4ukDcRzb2dcm4FuTfgruk%2Fimg.png&quot; data-origin-width=&quot;526&quot; data-origin-height=&quot;667&quot; data-filename=&quot;WIFI공유.png&quot; width=&quot;438&quot; height=&quot;555&quot; data-ke-mobilestyle=&quot;widthOrigin&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런식으로 하면 VirtualBox내 가상서버에서도 다시 인터넷이 가능해 집니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아마도 위의 과정을 거치면서 네트워크 공유기능이 초기화/재활성화 되는듯 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이상 간단한 팁이었습니다.&lt;/p&gt;</description>
      <category>Interesting</category>
      <category>VirtualBox</category>
      <category>VirtualBox인터넷</category>
      <category>네트워크 공유</category>
      <author>대단한넘</author>
      <guid isPermaLink="true">https://gubok.tistory.com/511</guid>
      <comments>https://gubok.tistory.com/511#entry511comment</comments>
      <pubDate>Tue, 22 Jun 2021 13:42:02 +0900</pubDate>
    </item>
    <item>
      <title>apache poi를 이용한 엑셀생성시 몇가지 옵션 정리(XSSF중심 예제)</title>
      <link>https://gubok.tistory.com/510</link>
      <description>&lt;p&gt;사용하면서 정리한 몇가지 옵션이다.&lt;/p&gt;
&lt;p&gt;주로 사용자가 다운로드받은 엑셀의 프린트출력을 바로 할수 있도록 하기 위한 내용 중심이다.&lt;/p&gt;
&lt;p&gt;HSSF보다는 최근의 excel은 대부분 xlsx를 사용하므로 XSSF를 사용.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1619602382457&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;/*
 * POI Library 용어 정리
	HSSF : 엑셀 파일을 다루는데 사용 (엑셀 97 이후~)
	XSSF : 엑셀 2007 이후의 xlsx 파일을 다루는데 사용
	HPSF : 오피스 파일의 문서요약 정보를 다루는데 사용
	HWPF : 워드 파일을 다루는데 사용
	HSLF : 파워포인트 파일을 다루는데 사용
	HDGF : 비지오 파일을 다루는데 사용
	HPBF : 퍼블리셔 파일을 다루는데 사용
	HSMF : 아웃룻의 *.msg 파일을 다루는데 사용
	DDF : 아웃룩의 이미지 파일을 다루는데 사용
 */
package com.test.util;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Calendar;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HeaderFooter;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.CellType;
import org.apache.poi.ss.usermodel.FillPatternType;
import org.apache.poi.ss.usermodel.Font;
import org.apache.poi.ss.usermodel.Footer;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFCellStyle;
import org.apache.poi.xssf.usermodel.XSSFPrintSetup;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;


/**
 *
 *  상세내용 엑셀 변환용 
 * 1. 타이틀은 회색, 페이지별로 반복
 * 2. 좌우여백 : 0.5 inch
 * 3. 페이지 레이아웃 : 가로는 1페이지로, 세로는 자동으로
 * 4. font size : 10, 타이틀은 11
 * 5. footer 중앙에 페이지번호 추가
 * 6. footer 좌우에 내용추가
 * 7. Horizontal center 정렬
 * 8. 각 컬럼사이즈는 고정으로 처리 (내용에 따라 일부 변경 필요)
 * 9. cell 정렬은 Vertical은 Center
 * 10. Cell내용은 줄바뀜 제거 ( wordWrap )
 */
@SpringBootTest
public class TestWriteExcel {

	@Test
	public void mainTest() {
		TestWriteExcel rww = new TestWriteExcel();

		try {

			rww.createExcel();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	void createExcel() {

		XSSFWorkbook xlsxWB = new XSSFWorkbook();

		// Sheet 이름 설정하기
		XSSFSheet sheet1 = xlsxWB.createSheet(&quot;202103_상세내역&quot;);
		sheet1.setFitToPage(true);
		sheet1.setAutobreaks(true);
			
//		double leftMarginInches = sheet.getMargin(Sheet.LeftMargin);
		sheet1.setMargin(Sheet.LeftMargin, 0.5 /* inches */ );
		sheet1.setMargin(Sheet.RightMargin, 0.5 /* inches */ );
		sheet1.setRepeatingRows(CellRangeAddress.valueOf(&quot;1&quot;));
		
//		Header header = sheet1.getHeader();
		
		//page 번호 추가
		Footer footer = sheet1.getFooter();
        footer.setCenter( HeaderFooter.page() + &quot;/&quot; + HeaderFooter.numPages() );  
        footer.setLeft(&quot;회사명or 프로젝트명&quot;);
        footer.setRight(&quot;202103_상세내역&quot;);
		       
		
		XSSFPrintSetup ps = sheet1.getPrintSetup();
		ps.setPaperSize(XSSFPrintSetup.A4_PAPERSIZE);
		
		//확대/축소비율
//		ps.setScale((short)90); // 아래옵션이 있다면 설정 필요없음.
		ps.setFitWidth((short)1);  //가로는 1페이지에
		ps.setFitHeight((short)0); //세로는 자동으로
		
		sheet1.setHorizontallyCenter(true); //출력시 가로정렬 Center로
		
		// 컬럼의 너비 설정
//		sheet1.autoSizeColumn(1); // 행 번호
		
		//타이틀 Cell 스타일
		XSSFCellStyle cellStyle = xlsxWB.createCellStyle();
		cellStyle.setBorderBottom(BorderStyle.THIN);
		cellStyle.setBorderTop(BorderStyle.THIN);
		cellStyle.setBorderRight(BorderStyle.THIN);
		cellStyle.setBorderLeft(BorderStyle.THIN);

		//타이틀 Cell 색상
		cellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex()); // 밝은 Grey
		cellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); 
		
		cellStyle.setWrapText(true); //줄바뀜처리
		cellStyle.setAlignment(HorizontalAlignment.CENTER);  //가로정렬
		cellStyle.setVerticalAlignment(VerticalAlignment.CENTER); //세로정렬


		//내용 Cell 스타일
		XSSFCellStyle cellStyle2 = xlsxWB.createCellStyle();
		cellStyle.setVerticalAlignment(VerticalAlignment.CENTER); //세로정렬
		
		cellStyle2.setBorderBottom(BorderStyle.THIN);
		cellStyle2.setBorderTop(BorderStyle.THIN);
		cellStyle2.setBorderRight(BorderStyle.THIN);
		cellStyle2.setBorderLeft(BorderStyle.THIN);
		
        //내용은 크기에 따른 줄 바꿈 필요없음.(Default)
		//cellStyle2.setWrapText(true);
		Font font = xlsxWB.createFont();
		font.setFontHeightInPoints((short) 10);
		cellStyle2.setFont(font);
		

		XSSFRow row = null;
		XSSFCell cell = null;
		String[] titles = {
				&quot;학교명&quot;, 
				&quot;ID&quot;,
				&quot;이름&quot;,
				&quot;등록일시&quot;,
				&quot;출석\n일시&quot;,
				&quot;비고&quot;,
				&quot;검사명&quot;,
				&quot;담당자&quot;
				};
		
		int i = 0;
		
        //각 컬럼별 사이즈 지정
		sheet1.setColumnWidth(i++, 3300);//
		sheet1.setColumnWidth(i++, 1700);//
		sheet1.setColumnWidth(i++, 2500);// 이름
		sheet1.setColumnWidth(i++, 3200);// 등록일시
		sheet1.setColumnWidth(i++, 3200);// 출석일시
		sheet1.setColumnWidth(i++, 3000);// 비고
		sheet1.setColumnWidth(i++, 3000);// 검사명
		sheet1.setColumnWidth(i++, 2200);// 담당자

		// 첫 행 만들기
		row = sheet1.createRow(0);
		
		int j=0;
		for (String string : titles) {			
			cell = row.createCell(j++);
			cell.setCellValue(string);
			cell.setCellStyle(cellStyle);
		}		

		String[] cellValues = {
				&quot;데이터제목&quot;, 
				&quot;A234567890&quot;,
				&quot;홍길동입니다&quot;,
				&quot;2020-12-23 14:55&quot;,
				&quot;2020-12-25 14:55&quot;,
				&quot;Test&quot;,
				&quot;신장, 몸무게&quot;,
				&quot;김선생&quot;
				};
		
		CellType[] cellTypes = {
				CellType.STRING,
				CellType.STRING,
				CellType.STRING,
				CellType.STRING,
				CellType.STRING,
				CellType.STRING,
				CellType.STRING,
				CellType.STRING
		};
		
        //100개의 Row를 테스트로 입력하여 페이지 넘어가는 것 확인
		for(int l=1;l&amp;lt;100;l++) {
			// 두번째 행부터 내용입력됨
			row = sheet1.createRow(l);
			
			for (int k=0;k &amp;lt; cellValues.length;k++) {
				
				String string = cellValues[k];
				cell = row.createCell(k);
				cell.setCellValue(string);
				cell.setCellStyle(cellStyle2);
				cell.setCellType(cellTypes[k]);
			}			
		}
	
		// 파일저장
		String filename = &quot;sample_&quot; + Calendar.getInstance().getTimeInMillis() + &quot;.xlsx&quot;;
		try {
			File xlsFile = new File(&quot;d:\\&quot; + filename);
			FileOutputStream fileOut = new FileOutputStream(xlsFile);
			xlsxWB.write(fileOut);
			
			System.out.println(filename + &quot; is created&quot;);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}
&lt;/code&gt;&lt;/pre&gt;</description>
      <category>개발노트</category>
      <category>1장으로 출력</category>
      <category>Apache POI</category>
      <category>poi</category>
      <category>poi 좌우여백</category>
      <category>XSSF</category>
      <category>엑셀출력</category>
      <author>대단한넘</author>
      <guid isPermaLink="true">https://gubok.tistory.com/510</guid>
      <comments>https://gubok.tistory.com/510#entry510comment</comments>
      <pubDate>Wed, 28 Apr 2021 18:35:39 +0900</pubDate>
    </item>
  </channel>
</rss>