cifs가 무엇인가?


안녕하세요.
고코더 입니다.


 1. 혹시 N드라이브를 사용하시나요? 저는 10년 넘게 사용중입니다. 뜬금없이 이 서비스를 설명하냐면 CIFS를 이용한 시스템이기 때문입니다.

 2. SMB가 확장된 버전이 바로 CIFS(Common Internet File System)입니다. 우리가 흔히 쓰는 윈도우의 파일이나 프린터를 공유하는 프로토콜이라고 할 수 있습니다. 이 프로토콜을 이용한 접속을 이용해 내 컴퓨터에 하드디스크처럼 사용이 가능합니다. 마치 USB를사용 하듯 속도가 빠르고 지연이 적습니다. 그리고 더 중요한 한가지는 폐쇄적이었던 SMB 프로토콜과 달리 규약을 정의하여 많은 유닉스 업체들이 참여하여 호환성을 끌어 올렸습니다. 


 3. 우리가 폴더를 공유하기 위해 윈도우에서 사용하는 공유 방식이 바로 CIFS 입니다.



마무리


- X/Open CAE Specification C209 공개된 IETF 인터넷 응용 표준이다.
- 윈도우 NT, 윈도우 시리즈, Workgroup for Windows 등의 클라이언트들을 지원합니다.
-  파일 공유 서비스, DNS 서비스, 인쇄, 메시지 등 다양한 기능을 수행합니다.


댓글을 달아 주세요


컴포저에 대해 알아봅시다.


안녕하세요.
고코더 입니다.


오늘은 컴포저라는 PHP 라이브러리에 대해 알아보려고 합니다. 라라벨을 사용하면 꼭 알아야하는 개념이고 요즘에 꼭 필요한 의존성 도구라서 다뤄봅니다.



컴포저라는 단어의 뜻?


단어 뜻이 참 익숙합니다. Composer라는 뜻은 작곡가와 작가를 말하는 단어입니다. 


그래서 그런지 공식 홈페이지 컴포저 사이트에 접속해보면 이렇게 마에스트로가 지휘 하는 모습이 나타납니다. 새로 고침할때마다 지휘자 머리색과 옷이 달라지는 센스를 확인 가능합니다. 



정체가 뭐야? 의존성 도구지


node.js에는 npm, 파이썬에는 pip, 루비에는 bundle이 있습니다. 이것들은 모두 의존성 도구 입니다. php에서도 대표적인 의존성 도구가 바로 이 composer입니다. 다른 언어와 마찮가지로 라이브러리를 선언해 현재 프로젝트에서 사용이 가능합니다. 

패지키지를 정의하고 의존하기위해  필요한 파일은 composer.json 라는 파일의 구조 예시입니다.
{
    "name":"gocoder",
    "description":"gocoder",
    "repositories":[
        {
            "type":"package",
            "package":{
                "name":"phpids/phpids",
                "version":"0.7",
                "dist":{
                    "url":"http://phpids.org/files/phpids-0.7.zip",
                    "type":"zip",
                    "reference":"0.7"
                }
            }
        }
}


호환성 있는 설치환경


php 5.3.2에서 사용이 가능합니다. 그리고 윈도우, 리눅스, Mac OS등에서도 사용이 가능합니다. 호환성이 뛰어나기 때문에 어느 운영체제에서도 사용할 수 있는 특징이 있습니다.




의존성 도구가 필요할까?


프로젝트를 하던중에 업로드 컴포넌트를 사용하였는데 1.0 버전을 사용했습니다.그리고 3년후에 고도화 프로젝트를 시작하던 중에 해당 시스템이 어떤 프로그램으로 최적화 하여 사용했는지 알수가 없습니다. 왜냐면 현재 그 컴포너트는 9.0까지 나왔습니다. 기록이 남아있지 않아 결국 이것 저것 버전을 설치해보다가 오류를 발생시킵니다.

만약 컴포저와 같은 의존성 도구가 있다면 json에 해당 모듈과 버전을 기록하게 되고 이것을 다른 서버로 이전하거나 분석할때 명확하게 버전을 명시 해놓습니다. 그러므로 긴 시간이 지나도 의존성 도구로 관리되는 프로그램은 생명주기가 빠릅니다. 그리고 다른 서버로 이동 할때도 알아서 필요한 버전의 도구들을 알아서 설치해주므로 유지보수에서도 많이 유리 합니다. 


마무리


간단하게 무엇인지 알아봤습니다.


댓글을 달아 주세요


XpressEngine3 theme, plugin 설치시 무한 로딩에서 빠져나오는 방법


안녕하세요.
고코더 입니다.


XE3에서 플러그인, 테마를 설치나 업데이트 할때 무한 로딩에 빠지는 경우가 있습니다. 무한로딩 상태를 해체하기 위한 방법을 소개합니다.

 1. 무한로딩에 빠져서 다른 업데이트가 되지 않고 있는 현재상황입니다. 30분 넘게 기다려도 답이 없네요.


 2. 그럴땐 FTP로 "/storage/app"을 찾습니다. 그리고 operations.json 이라는 파일이 생성되어 있는걸 삭제합니다.



 3. 겁먹지 말고 파일을 그저 삭제해주시면 됩니다. 업데이트시에 생겨나는 json 파일입니다.


 4. 그럼 이렇게 레이어 로딩 화면은 없어지고 무한 로딩은 해결 됩니다. 설치는 당연히 되지 않았을 확률이 높겠네요.


 5. 그리고 새로고침을 하면 이렇게 기존의 업데이트 메인 화면이 나타납니다. 설치를 중단하는 방법입니다.



마무리


무한 로딩이 자꾸 걸리네요.



댓글을 달아 주세요