728x90
반응형

IT/개발 19

[ESXi] - 메모리 정보 확인

ESXi HOST 에 메모리를 증설하기에 앞서 기존에 장착되어 있는 메모리 정보를 확인하는 방법 smbiosDump | grep -A 24 'Memory Device' 용량, 갯수, 슬롯 위치, 속도 등의 정보 확인 가능 The ESXi Shell can be disabled by an administrative user. See the vSphere Security documentation for more information. [root@xxxxxxxx:~] smbiosDump | grep -A 24 'Memory Device' Memory Device: #4352 Location: "A1" Manufacturer: "00AD00B300AD" Serial: "2CB562F0" Asset Tag: "0..

IT/개발 2023.11.28

연결할 때 정의되지 않은 참조 문제를 해결하는 방법 __gcov_init

이제 C 코드 커버리지 연구를 진행하고 GCC 버전 4.4.6에서 다음 문제가 발생했습니다. 컴파일러 플래그 및 링커 옵션을 추가했거나 오류가 발생했습니다. CFLAGS = --coverageLDFLAGS := --coverageLOCAL_LDLIBS := --coverage undefined reference to '__gcov_init'" and "undefined reference to '__gcov_merge_add' 옵션이 추가되고 링크 오류가 발생했습니다.LOCAL_LDFLAGS := --coverage libgcov.a(_gcov.o): in function __gcov_set_sampling_rate: undefined reference to '__gcov_sampling_rate' lib..

IT/개발 2023.11.11

CentOS 1.1.1 / RHEL 7에 OpenSSL 7.x를 설치하는 방법

OpenSSL은 TLS(전송 계층 보안) 및 SSL(Secure Sockets Layer) 프로토콜과 서명, 암호화, 암호 해독 및 확인과 같은 기타 암호화 기능을 구현하기 위한 도구 및 라이브러리로 구성된 오픈 소스 소프트웨어 라이브러리입니다. 운영 체제 및 많은 응용 프로그램은 OpenSSL을 사용하여 인터넷을 통한 보안 통신을 제공합니다. CentOS 7 / RHEL 7 운영 체제에서 사용할 수있는 OpenSSL 버전은 약간 오래되었으며 일부 응용 프로그램은 최신 릴리스가 필요한 경우 컴파일 할 때 오류가 발생합니다. $ sudo yum -y install openssl openssl-devel $ openssl version OpenSSL 1.0.2k-fips 26 Jan 2017 출력에서 볼 수..

IT/개발 2023.11.11

gcc 컴파일 옵션 정리

=================================================================================================== [gcc 컴파일] 1) gcc 파일명(*.c) : Default로 out 파일이 생성된다. (ex a.out) 2) gcc -c 파일명(*.c) : 오브젝트 파일을 생성한다. 3) gcc -c 오브젝트_파일명(*.o) 파일명(*.c) gcc -o 실행파일명(*.out) 오브젝트_파일명(*.o) 4) gcc -o 실행파일 파일명(*.c) : 실행 파일을 만든다. (3번을 한줄로...) ==================================================================================..

IT/개발 2023.11.11

[소프트웨어 공학]gcov:테스트 커버리지 측정

gcov는 코드 커버리지를 측정하기 위해 사용하는 프로그램입니다. 코드 커버리지에 대한 내용은 여기서 간단하게 알 수 있습니다. gcov는 아래와 같은 것을 알려줍니다. - 각 라인의 코드가 얼마나 자주 실행되었는 지 - 정확히 어떤 라인의 코드가 실행되었는 지 - 특정 부분의 코드를 실행하는 데 얼마나 시간이 걸렸는 지(gprof와 함께) 위와 같은 정보를 활용하여 코드 커버리지를 측정할 수 있는데요, 구체적으로 gcov는 다음과 같이 사용할 수 있습니다. Gcov Usage Flow 1. gcc의 특정 flag와 함께 테스트하고자하는 프로그램을 컴파일 - -fprofile-arcs -ftest-coverage - .gcda , .gcno 파일 생성 2. 테스트하고자 하는 프로그램을 실행 - .gcda..

IT/개발 2023.11.11

make명렁어 사용법

1. make명렁어 사용법 1) make란? - 목적: 대규모 소프트웨어 생성을 위한 기본 도구이다. 즉 여러개의 소스들을 묶어서 한번에 컴파일해주며 소스모듈의 일부를 수정했을 때에도 전체적으로 일관성을 유지시켜 주기 위해 사용. -C dir Makefile을 계속 읽지 말고 우선은 dir로 이동하라는 것이다. 순환 make에 사용된다. -d Makefile을 수행하면서 각종 정보를 모조리 출력해 준다. (-debug) 출력량이 장난이 아님... 결과를 파일로 저장해서 읽어보면 make 의 동작을 대충 이해할 수 있다. -h (-help) 옵션에 관한 도움말을 출력한다. -f (-file) file 에 해당하는 파일을 Makefile로써 취급한다. -r 내장하고 있는 각종 규칙(Suffix rule 등)..

IT/개발 2023.11.11

-file.encoding의 역할

1. java, jsp 소스 파일내의 다국어 표시 java, jsp 소스 파일의 인코딩과 JVM 실행시 -Dfile.encoding이 일치하지일치하지 않으면 소스 파일내의 한글이 제대로 표시되지 않는다. 따라서 -Dfile.encoding값을 모든 경우에 무조건 EUC-KR로만 지정해서는 안된다. publicpublic class Tester { public static void main(String[] args) {{ String fileEncoding=System.getProperty("file.encoding"); System.out.println("file.encoding = "+fileEncoding);"+fileEncoding); String s="가나다"; System.out.println(..

IT/개발 2023.09.26

PHP의 지긋지긋한 오류 Parse error: syntax error, unexpected 해결방법

PHP 웹사이트의 제작이나, 어플리케이션 서버를 만들때 PHP와 더불어 Mysql 등 여러가지 부가 요소들을 넣어 API 등을 만들 수 있다. 그런데 제작하다보면 어느 언어든 똑같이 에러를 발견하게된다. 특히 PHP는 에러가 난 부분의 정확한 위치를 알려주지 않는다(...) 이를 해결하기 위한 몇가지 팁을 당신에게 준비하였다! Parse error: syntax error, unexpected 흔히 보는 요망한 에러이다. 문법이 틀렸을때 해당 메시지가 출력이되며, 대표적으로는 끝줄에 ;(세미콜론) 를 깜빡하는 경우이다. ;(세미콜론) 이 제대로 붙어있는지 한번 검사해보자. 또는 변수가 존재하지 않을 때 발생할 수 있다. $haha = "하하"; if($hah == "하하"){ //정답 ㅇㅇ! } 다음중 ..

IT/개발 2023.08.20

Syntax error: "(" unexpected

목차 chsh 명령어 기본쉘 확인 sh script.sh sh 명령어로 쉘스크립트를 실행했는데 Syntax error: "(" unexpected가 발생하는 경우가 있다. 이는 script.sh 첫 번째 줄에 #!/bin/bash를 적지 않아서 발생하는 에러이다. 이를 shebang이라고 한다. 하지만 shebang을 명시해도 동일한 에러가 발생하는 경우 아래 명령어를 실행해보자. ls -l /bin/sh /bin/sh가 dash를 바라보는 경우 sh 명령을 실행할 때 bash가 아닌 dash가 실행되서 그렇다. 참고로 Ubuntu는 기본 쉘이 dash라고 한다. chsh 명령어 sudo chsh -s /usr/bin/bash 위 명령어를 통해 기본쉘을 변경할 수 있다. 기본쉘 확인 echo $SHELL..

IT/개발 2023.08.20

[Java] Server IP와 Client IP를 조회하는 방법 A to Z(feat. virtualbox host-only network ip)

Scheduler 기능을 구현하면서 IP 관련해서 처리할 필요가 생겼다. 스케줄러 기능을 구현해놓고 따로 처리하지 않을 시에는, 개발 PC들과 서버 PC 모두에서 스케줄러가 동작해 중복으로 작업이 처리될 것이기 때문이다. 다른 방법도 있겠지만, 나는 일단 IP로 처리하기로 했다. 스케줄러 동작 시에 현재 PC의 IP를 조회하고, IP가 서버 IP라면 스케줄러 기능이 동작하도록 말이다. 문제는 처음에 생각을 잘못해서 IP 조회를 Client IP를 획득하는 방식으로 했다는 것인데, 이 경우 모두 Localhost IP로 받아와지기 때문에 동일하게 처리된다. 또 다른 문제는, Client IP를 획득하려면 HttpServletRequest 의 데이터가 필요한데, 스케줄러로 동작 시에는 요청 시 필요한 데이터..

IT/개발 2023.08.20
728x90
반응형