보물창고/Programming2017.04.05 23:30





CentOs sudo 권한 설정 방법



CentOS에서 sudo 권한 설정 방법을 캡쳐하여 정리합니다




1. root user에서 /etc/sudoers 파일의 실행 권한을 변경합니다

   - chmod u+w /etc/sudoers



2. /etc/sudoers파일을 편집합니다

   - vi /etc/sudoers



3. sudo 권한을 적을 위치를 찾습니다



4. sudo 권한을 줄 user를 추가합니다

   - hadoop ALL=(ALL) NOPASSWD:ALL



5. vi 텍스트 편집을 저장합니다



6. /etc/sudoers파일의 실행 권한을 변경합니다

  - chmod u-w /etc/sudoers



7. sudo 권한을 준 User로 변경 후 sudo 실행이 되는지 확인합니다




신고





Posted by 파란물
보물창고/Big Data2012.11.25 11:46








HDInsight Previews 설치기 (윈도우에 하둡 설치)








첫번째 설치 환경

VirtualBox 4.2.4

한글 윈도우 서버 2012 64bit 

HDInsight Previews


- 설치 확인중... (hadoop 폴더 안만들어지고.. 등등)

실행안되고 설치안되는 여러가지 문제 발생

몇가지 문제를 해결했으나 계속 발생되는 문제들을 지식부족과 인터넷에 관련 내용 부족으로 해결하지 못하고 정체중...




두번째 설치 환경

VirtualBox 4.2.4

한글 윈도우 서버 2008R2 64bit

HDinsight Previews


설치 확인중... 

(위와 같은 문제)







세번째 설치 환경

VirtualBox 4.2.4

영문 윈도우 서버 2012 64bit 

HDInsight Previews


- 하둡 설치 성공


121221 추가 -

HDInsight 10월 버전 (1.0.0.0)

12월 3일 버전(0.2.0.0)

12월 13일 버전 (0.3.0.0) 모두 한글에서 설치가 되지 않습니다

일본어 중국어권 운영체제에서도 문제가 있는 듯합니다


영어가 아닌 운영체제에서 설치 방법으로

아래 MS에서 댓글 달아주신 방법이 있다고 하니 참고하세요


0.3.0.0 버전을 영문 윈도우 서버 2012에 설치시 Dashboard 까지 설치가 잘 되고 페이지도 잘 열리는 것을 확인 했습니다

그 외에 기본적인 하둡 기능과 sqoop을 테스트 했으며 문제 없이 정상 작동 합니다



12월 12일 30일 추가 -

한글 윈도우에 HDInsight 설치기 입니다 http://paranwater.tistory.com/367












윈도우용 하둡 hdinsight 다운로드 링크

http://www.microsoft.com/en-us/download/details.aspx?id=35397


신고





Posted by 파란물
보물창고/Programming2011.07.13 03:19






윈도우7운영체제에 VMware 7.0.1 버전에 우분투 10.10 이 설치되어 있는 환경 입니다

VMware에 설치되어 있는 우분투 리눅스 운영 체제에서 숫자만 받는 파이썬 서버가 돌고 이 서버 아이피 주소를 외부에서 접근하는 방법 입니다





일단 VMware설정 입니다
VMware에 기본값으로 리눅스를 설치하면 네트워크가 NAT로 설정되어 설치가 됩니다 
저는 외부에서 접근하기 위해 브릿지 설정으로 네트워크를 하나더 만들었습니다
원래 있던 NAT네트웍 설정을 지우지 않고
Add...를 클릭해서 네트워크를 bridged로 하나더 추가합니다
위 스샷은 Network Adapter 2로 네트워크가 추가 완료된 모습입니다

vaware의 네트워크 설정에 대한 더 자세한 설명 보기

 


 


 
VMware 설정에서 네트워크가 추가되면 리눅스가 바로 알아챕니다
오른쪽 위에 위아래 화살표 아이콘을 클릭하면 새로 추가된 Auto eth1이 보이고 이걸 선택해서 리눅스의 네트웍을 변경합니다


 

 
이제 리눅스에서 ifconfig 명령어로 eth1에 할당된 아이피 주소를 확인합니다
(저는 공유기를 사용중이여서 외부에서 이 아이피를 접근하는데는 문제가 조금 될수 있습니다 고려해 주세요) 



 

 

from socket import *

def getNumber():

    HOST = '192.168.0.11'

    PORT = 30000

    sock = socket(AF_INET, SOCK_STREAM)

    sock.bind((HOST,PORT))

    sock.listen(1)

    conn, addr = sock.accept()

    sock.close()

    return conn.recv(32)

 
 
파이썬 서버 코딩 부분 입니다
위에서 확인된 아이피 주소를 여기에 적어서 서버를 돌립니다


 


윈도우 설정이 있어야 합니다
제어판\네트워크 및 인터넷\네트워크 연결 에서
VMnet8 의 속성을 확인합니다
여기서 VMware Bridge Protocol의 체크박스를 체크한후 확인을 누릅니다
(참고한 블로그 http://clansim.tistory.com/117



 
 

import java.io.*;

import java.net.*;

public class client {

        public static void main(String[] args) throws IOException

        {

               try {

                       // 실행시에 호스트 이름과 해당 포트를 명시해야 .     

                       // 인자로부터 호스트 이름과 포트번호를 얻어냄

                       //String host = "1.1.1.3";

                       String host = "192.168.0.11";

                       int port = Integer.parseInt("30000");

                       System.out.println(host + " : " + port);

 

                       while(true){

                              // 소켓 클래스 객체를 생성, 생성시 해당 서버와 접속을 시도함.

                              Socket s = new Socket(host, port);

 

                              // OutputStreamReader 클래스를 이용하여, Writer 얻어냄.

                              PrintWriter toServer =

                                      new PrintWriter(new OutputStreamWriter(s.getOutputStream()));

                              // 키보드에서 데이터를 읽어내기 위한 Reader 생성     

                              BufferedReader fromUser =

                                      new BufferedReader(new InputStreamReader(System.in));

 

                              // 화면으로 데이터를 출력하기 위한 Writer 생성

                              final PrintWriter toUser =

                                      new PrintWriter(new OutputStreamWriter(System.out));

 

                              // 현재, 연결된 정보를 화면에 표시

                              toUser.println("Connected to " + s.getInetAddress() + ":"+ s.getPort());

                              toUser.flush();

 

                              // 사용자로부터 데이터의 입력을 받고, 이를 서버로 보낸다.

                              String line;

                              line = fromUser.readLine();

                              toServer.println(line);

                              toServer.flush();

                              // 소켓 접속을 끊는다.

                              s.close();

                              toUser.println("Connection closed by client.");

                              toUser.flush();

                       }

               } catch (Exception e) {

                       System.err.println(e);

               }

        }

}



윈도우에서 접속한 자바 클라이언트 소스 입니다
원본은 네이버 지식인인지 블로그인지에서 따왔습니다;





 이렇게 설정하면 이제 윈도우에서 VMware 리눅스에 아이피 주소로 접근 가능합니다

 


신고





Posted by 파란물






크게 3가지로
서버를 실행한후
마스터 run
슬래이브 run 으로 진행 됩니다




CAN_TCP_Server를 클릭합니다




콘솔창이 뜬것을 확인합니다
바로 써버가 실행 중임을 확인할 수 있습니다



이제 베레미즈를 실행합니다

베레미즈 프로그램에서 File -> Open 클릭

Beremiz/beremiz/tests/canopen_master를 엽니다

베레미즈를 하나더 열어서 슬래이브도 프로젝트도 열어줍니다
Beremiz/beremiz/tests\canopen_slave

만약 프로젝트를 끝까지 실행 했는데 결과물이 안보인다면 베레미즈를 관리자 권한으로 실행을 하면 될수도 있습니다
그래도 안되면 컴퓨터를 재부팅하고 다시 처음부터 하는 방법으로도 해결 가능합니다





master부터
Build -> connect -> Transger -> run을 순서대로 눌러줍니다

CAN_TCP_Server에 접속한것을 확인할 수 있습니다

slave도 같은방식으로
Build -> connect -> Transger -> run을 순서대로 눌러줍니다




두개가 접속된 걸 확인할수 있습니다








베레미즈의 왼쪽 창에서 Instances탭을 눌러 +버튼을 끝가지 누르면 위와 같이 실행되고 있는 모습을 볼수 있습니다


CAN통신을 대신해 TCP서버가 중간 열할을 해주는 예제 입니다

간단한 코드 설명을 하자면

처음 마스터에 있는 ADD FB가 1dmf 받고 PLC_IN을 받아 더한값을 PLC_OUT으로 슬레이브로 값을 보냅니다
이후 슬래이브는 마스터가 보낸 값을 invar로 받아 ADD FB로 1을 더한후 다시 outvar로 값을보내 마스터로 보냅니다



CAN 통신 내용은 공부를 더 한후 정리해서 올려보도록 하겠습니다
일단은 Topology에서 Objdictedit - MasterGenerated를 통해 CAN 통신 설정을 할 수 있습니다


저작자 표시 비영리 변경 금지
신고





Posted by 파란물

티스토리 툴바