Action Coin
 


[Windows] 윈도우 서비스 제거하기

윈도우 서비스 제거하기

#요즘에는 프로그램을 설치하는게 겁이난다. 뭐 하나 설치만 하고 나면 기존에 잘 동작하던 프로그램들도 앙탈을 부리기 일쑤기 때문에, 그런일을 몇번 겪고 나니 툴 하나 테스트 하는것도 쉽지가 않다.

#얼마전 오라클을 설치하고 나서 문제가 있어 삭제를 했는데 서비스에 오라클 관련 서비스가 계속 떠 있는것이 보였다.제거가 안된것이다. 수동으로 서비스를 제거하기로 맘먹고 방법을 찾아보기로 했다. “네이버에게 물어봐야지” 맨날 네이버에 대한 불만을 이야기 하면서도 이럴때는 참 간사하다. 잉 근데 찾을수가 없었다. 몇군데를 뒤지다가 결국 찾은것은 윈도우 도움말이었다. (윈도우 도움말을 써보긴 이번이 처음이다. ^^)

#도스명령어 중에 sc 라는 명령어가 있다. 이 명령어를 이용하면 콤맨드라인 상에서 서비스를 시작/정지/삭제 하는것이 모두 가능하다.

sc delete 서비스명

이렇게 간단할수가. 그런데 문제가 생겼다. 서비스명에 공백이 있는것이다. 에러가 났다. 명령어 옵션을 찾아보다가 getKeyName이라는 옵션을 발견했다.

sc getKeyName “서비스명”

sc delete 키명

먼저 getKeyName으로 키명을 찾아서 그 키명을 활용하니 삭제가 됐다. 근데 갑자기 드는 생각이 서비스명에 공백이 있으면 그냥 서비스명에 “”를 붙여서 하면 되지 않을까 ? 해보니 잘 된다.

sc delete “서비스명”

알고나니 참 간단한데 모를때는 이걸 도무지 어떻게 지워야 하는지 난감한게 서비스인거 같다. GUI가 주는 편리함에 익숙해 지다보니 점점 바보가 되는듯 하다.

Posted by incree

2014/08/13 03:03 2014/08/13 03:03
,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/353

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

[MySQL] explain type의 빠른 순서

system 
const 
eq_ref 
ref 
ref_or_null 
index_merge 
unique_subquery 
index_subquery 
range 
index 
ALL

Posted by incree

2014/08/13 03:00 2014/08/13 03:00
,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/352

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

[Windows] 디렉토리 삭제

디렉터리를 지웁니다.

RMDIR [/S] [/Q] [드라이브:]경로
RD [/S] [/Q] [드라이브:]경로

    /S      지정된 디렉터리 자체와, 그 안의 모든 디렉터리 및 파일을 지웁니다.
            디렉터리 트리를 지우는데 사용합니다.

    /Q      조용한 모드로, /S로 디렉터리 트리를 지우는데 문제가 없으면 다시
            묻지 않습니다.

Posted by incree

2014/08/13 02:59 2014/08/13 02:59
, , ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/351

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

[Linux] 특정 프로세스 상태 확인하기

cat /proc/processID/status
메모리 사용량등의 정보를 확인할 수 있다.
[root@03a69d7f-472d-496d-82e6-7d8c839364eb ~]# cat /proc/2138/status
Name:   
State:  S (sleeping)
Tgid:   1118
Pid:    1118
PPid:   959
TracerPid:      0
Uid:    27      27      27      27
Gid:    27      27      27      27
Utrace: 0
FDSize: 256
Groups: 27
VmPeak:  1347552 kB
VmSize:  1302332 kB
VmLck:         0 kB
VmHWM:    169312 kB
VmRSS:     42100 kB
VmData:  1287276 kB
VmStk:        88 kB
VmExe:      6788 kB
VmLib:      7252 kB
VmPTE:       560 kB
VmSwap:   181564 kB
Threads:        45
SigQ:   0/14841
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000087007
SigIgn: 0000000000001006
SigCgt: 00000001800066e9
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
CapBnd: ffffffffffffffff
Cpus_allowed:   3
Cpus_allowed_list:      0-1
Mems_allowed:   1
Mems_allowed_list:      0
voluntary_ctxt_switches:        1872385
nonvoluntary_ctxt_switches:     134
 
 

Posted by incree

2014/08/10 21:19 2014/08/10 21:19
, , ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/349

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

[Linux] root 계정의 ssh 원격접속 제한하기

/etc/ssh/sshd_config 에서 PermitRootLogin yes를 찾아서 PermitRootLogin no로 수정한 후

sshd demon을 재시작한다.

service sshd restart

Posted by incree

2014/08/07 02:14 2014/08/07 02:14
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/348

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

단기간에 너무 많은 api 호출을 한 경우에 limit가 걸리면

이 후 요청하는 모든 api 호출에 이 에러가 리턴되고, 30분동안 블럭된다.


해결 방법은 '다른 아이디를 이용하거나 30분 후에 다시 시도하면 된다' 라고 페이스북 개발자 페이지에 나온다.

https://developers.facebook.com/docs/reference/ads-api/api-rate-limiting


실제 리턴되는 에러 메시지
/**/ FB.__globalCallbacks.f1765e9214({"error":{"message":"(#17) User request limit reached","type":"OAuthException","code":17}});

Posted by incree

2014/07/28 17:42 2014/07/28 17:42
, , ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/346

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

Facebook 탭앱 관리를 Graph API를 사용해서 하고 있었는데,

잘되던 탭앱 custom_name, custom_image_url 수정이 어느날부터 갑자기 에러가 나기 시작했다.

에러는 다음과 같았다.

[error] => Array
(
[message] => (#210) Subject must be a page.
[type] => OAuthException
[code] => 210
)

해결은 파라미터에 추가로 access_token을 넘겨줘서 처리했다.

기존에는 따로 안 넘겨줘도 잘 작동했었는데, 왜 어느날 갑자기 바뀐걸까?

처음 개발하면서 테스트 해봤을때 access_token을 넘겨주나 안 넘겨주나 똑같이 잘 작동해서

curl시에 api에서 알아서 access_token을 추가해서 처리하는 줄 알았는데, 그게 아닌가보다

수정전
$postArray = array('custom_name' => $custom_name);
$fbObj->api('/' . $pageId. '/tabs/app_' . $tabappId, 'POST', $postArray);
===============>
수정후
$postArray = array('custom_name' => $custom_name, 'access_token' => $pageAccessToken);
$fbObj->api('/' . $pageId. '/tabs/app_' . $tabappId, 'POST', $postArray);

Posted by incree

2014/07/25 11:40 2014/07/25 11:40
, , , , ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/343

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

구글 캘린더 목록 가져오기

Google APIs Client Library for PHP download

<?php
require_once 'Google/Client.php';
require_once 'Google/Service/Calendar.php';

$client = new Google_Client(); 
$client->setClientId($client_id);
$client->setClientSecret($client_secret);
$client->setRedirectUri($redirect_uri);
$client->setAccessType('offline');
$client->setApprovalPrompt('force');
$client->setScopes(array('https://www.googleapis.com/auth/calendar.readonly', 'https://www.googleapis.com/auth/calendar'));

$cal = new Google_Service_Calendar($client);

$calList = $cal->calendarList->listCalendarList();
    $_SESSION['token'] = $client->getAccessToken();

    $items = $calList->getItems();
    $itemsLen = sizeof($items);

    for($i = 0; $i < $itemsLen; ++$i) {
        echo $items[$i]['id'], ' : ' . $items[$i]['summary'], '<br />';
    }
?>



$client_id = '<YOUR_CLIENT_ID>';
 $client_secret = '<YOUR_CLIENT_SECRET>';
 $redirect_uri = '<YOUR_REDIRECT_URI>';
/*
위 세 변수 값은 Google Developers Console에서 프로젝트 선택후
APIS & AUTH -> Credentials 에서 OAuth 의 Create New Client ID 클릭해서 생성하면 된다.
*/

사용자 삽입 이미지

Posted by incree

2014/07/07 15:02 2014/07/07 15:02
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/338

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

api 문서의 예제가 전부 옛날거라서

직접 라이브러리 분석해서 처리한 방법

정상적인 방법인지는 모르겠지만, 등록은 잘 된다.

구글 캘린더 일정 등록하기

Google APIs Client Library for PHP download

<?php
require_once 'Google/Client.php';
require_once 'Google/Service/Calendar.php';

$client = new Google_Client();
$client->setClientId($client_id);
$client->setClientSecret($client_secret);
$client->setRedirectUri($redirect_uri);
$client->setAccessType('offline');
$client->setApprovalPrompt('force');
$client->setScopes(array('https://www.googleapis.com/auth/calendar.readonly', 'https://www.googleapis.com/auth/calendar'));

$cal = new Google_Service_Calendar($client);

$calendarId = ''; //
$targetDate = '2014-07-07';
$tDate = new Google_Service_Calendar_EventDateTime();
$tDate->setDate($targetDate);
   
$body = new Google_Service_Calendar_Event();
$body->setSummary($cTitle);  // 일정 제목
$body->setStart($tDate); // 일정 시작
$body->setEnd($tDate); // 일정 종료
   
$cal->events->insert($calendarId, $body);
?>







$client_id = '<YOUR_CLIENT_ID>';
 $client_secret = '<YOUR_CLIENT_SECRET>';
 $redirect_uri = '<YOUR_REDIRECT_URI>';
/*
위 세 변수 값은 Google Developers Console에서 프로젝트 선택후
APIS & AUTH -> Credentials 에서 OAuth 의 Create New Client ID 클릭해서 생성하면 된다.
*/

사용자 삽입 이미지

Posted by incree

2014/07/07 14:54 2014/07/07 14:54
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/337

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

구글 캘린더가 처음 나왔을때 몇년 사용하다 아이폰 사면서 기본으로 제공되는 캘린더 앱을 사용했었는데,

요즘 다시 구글 캘린더를 사용하게 됐다.

구글 캘린더의 가장 아쉬운 점이 음력 일정을 입력할 수 없다는 건데,

이 부분은 api를 이용해서 구현해 놓은 곳이 있다.

http://googlelunar.cpueblo.com/

하지만 일정의 반복 설정등을 할 수 없어서 여전히 불편하기는 하다.

이 부분은 구글에서 제공해 주지 않으면 처리하기가 힘들지 않을까 싶다.

개인적으로 그 다음 있었으면 하는 기능이 D-day 기능인데,

이건 찾아봐도 구글 캘린더 기본 기능에도 없는 것 같고, 구현해 놓은것도 못 찾았다.

해서 그냥 만들기로 했다.

캘린더 API(https://developers.google.com/google-apps/calendar/?hl=ko)에 있는 라이브러리와 예제 소스가 전부 예전 버젼이라

구현하는데 좀 애를 먹긴 했지만, 완성하고 나니 제법 쓸만하다.

물론 귀찮아서 아주 기본적으로 딱 필요한 것만 구현했다.

피드백이 있다면....시간내서 기능을 보강할 수도....


사용은 여기로~~
구글 캘린더 D-day 등록하기(http://www.incree.com/gCalendar/)

사용자 삽입 이미지
완전 허접한 화면 스샷

Posted by incree

2014/07/07 14:49 2014/07/07 14:49
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/336

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

« Previous : 1 : 2 : 3 : 4 : 5 : 6 : 7 : 8 : ... 14 : Next »