본문 바로가기

IT/linux72

출력에 색깔 입히기 정리 및 결과, ansi color 출력에 색깔 입히기 정리 및 결과 일전 C언어 색깔 입히기 포스팅에 이어 일부가 아닌 전체적인 ansi color 코드와 출력을 알아보고자 한다. https://muabow.tistory.com/173 [C/C++] C언어 출력에 색깔 입히기 예제 C언어 출력에 색깔 입히기 - print color, ANSI color, 설명, 예제 C 언어로 개발을 하다 보면 출력이나 로그에 색깔을 써야 할 때가 있는데 간단하게 정의해 놓고 사용한다. 샘플 코드는 표와 같이 사 muabow.tistory.com 위 포스팅의 코드 확장이라고 봐주면 된다. 스크립트 ansi.sh 내용 ansi color는 shell 뿐만 아니라 C/C++ 및 리눅스의 모든 출력에서 사용이 가능하다. 아래 스크립트 내용과 밑에 결과 화면 .. 2022. 1. 17.
임베디드 리눅스 보안 이슈 정리 임베디드 리눅스 보안 이슈 정리 임베디드 리눅스 사용 제품 - 가전(공유기, NAS, CCTV 등), 영상/음향 기기(네트워크 기반 제품), 셋톱 Box 임베디드 리눅스를 사용하는 제품의 취약점 1. 보안을 고려하지 않은 설계 1) 많은 임베디드 제품은 보안을 고려하지 않은 채 만들어지고 있고, 일부 제품들은 텔넷(telnet), SSH 등 원격 포트를 열어두어 외부에서 접근이 가능한 실정. 2) 대부분의 제품들은 고정된 공장 초기 암호를 사용하고 있어 기본적인 취약점으로 작용. 3) 임베디드 리눅스는 모든 소스코드가 공개된 탓에 더 많은 악성코드가 나올 수 있음. 2. 사생활 침해 및 개인 정보 유출 1) 훔쳐보기/듣기 가능 (베이비 모니터, CCTV 등 Web cam) 2) 공유기의 DNS 주소 변경.. 2022. 1. 17.
linux coredump, core 파일 생성 방법, ulimit linux coredump, core 파일 생성 방법 리눅스 상에서 프로그래밍 작업 시 core 파일이 필요한 순간이 있다. C/C++ 프로그램 실행 중 segmentation fault 발생 시 core 파일을 만들어 디버그 작업을 해야 한다던가.. ulimit 명령어는 시스템 정보(pipe, memory, file size, core size, stack size, descriptor open 개수 등)를 보여주고 설정할 수 있는 명령어이다. 그럼 ulimit -a를 통해 시스템 정보를 살펴보자. muabow@muabow:~$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (.. 2022. 1. 16.
kernel panic, 커널패닉 시 재부팅 설정 kernel panic, 커널 패닉 시 재부팅 설정 시스템을 운영하다가 보다 나은 향상을 위해 커널 변수 설정을 변경하거나 혹은 하드웨어적인 문제, 사용하는 애플리케이션 충돌 등 기타 문제로 인해 패닉이 빈번하게 발생되는 경우가 있다. 분명한 건 발생원인 분석이 우선이겠지만 임시방편으로 사용하기 위해 커널 파라미터를 통해 패닉 발생 시 원하는 시간을 대기한 후 리부팅이 되는 방법을 알아보자. 커널 변수를 조정하기 위해서는 sysctl을 이용해 /proc/sys 리스트를 수정하면 된다. ※ 시스템에 따라서 sysctl.conf 구성이 다를 수 있다. vi /etc/sysctl.conf # Kernel sysctl configuration file for Red Hat Linux # # For binary .. 2022. 1. 15.
linux aplay PCM 파일 재생 예제 linux aplay PCM 파일 재생 예제 ALSA 에서 기본으로 제공되는 aplay 명령어를 이용하여 PCM파일을 재생해보자. 아래 예제를 살펴보면 알 수 있지만 대상을 어떻게 재생할지 ALSA parameter를 설정하는 과정과 같다. 즉 재생할 대상 파일이 어떻게 구성되어있든 상관 없이 설정한 옵션으로 동작하기 때문에 대상의 오디오 정보를 정확히 모른다면 당연하게도 소리가 원하는 대로 나오지 않을 것이다. 예제와 설명 -t raw : 타입이 raw, 즉 PCM 파일을 재생하겠단 의미한다. -c 2 : 2채널로 재생한다. 2채널은 Stereo 타입을 의미한다. -r 48000 : 샘플링레이트(sample rate)를 48Khz로 재생한다. -f S16_LE : Signed 16bits Little .. 2022. 1. 15.
linux serial 사용, 포트 설정, 상태 확인 linux serial 사용, 포트 설정, 상태 확인, minicom 1. 커널 메시지에서 사용가능한 시리얼 확인하기 dmesg | grep tty 2. 시리얼 포트 설정 상태 확인하기 stty -F [장치명] e.g.) stty -F /dev/ttyS0 3. 시리얼 포트 속도 변경 하기 stty [속도] < [장치명] e.g.) stty 115200 < /dev/ttyS0 4. 시리얼 장치 목록 확인 cat /proc/tty/driver/serial cat /proc/tty/driver/serial serinfo:1.0 driver revision: 0: uart:16550A port:000003F8 irq:4 tx:2599 rx:227 RTS|CTS|DTR|DSR 1: uart:16550A port:.. 2022. 1. 15.
grub installer, 부트로더 스크립트 예제 grub installer 이전 linux 와 windows 운영체제의 swap 이 필요한 환경이 있었다. 그때 작성한 부트로더 변경 스크립트이다. 이 것도 어디 고이 짱박혀 있던걸 가져온건데.. 예전에 난 뭐하던 사람이지?? 왜 하나도 모르겠지?? 분명 주석 스타일, 네이밍 스타일, 인덴트 억지로 맞추는 부분까지 내 스타일이 맞는데.. 날이 갈수록 멍청해지고 있는게 명백한 사실인듯 하다.. 혹시 쓸 일이 생길지 몰라 기록을 남겨둔다. grub config 파일 스크립트 파일 첨부 스크립트 내용 #!/bin/bash echo "Install grub boot loader" sudo -k /usr/bin/zenity --info \ --width=300 --height=50 --no-wrap \ --tim.. 2022. 1. 15.
linux TensorFlow 설치 방법 TensorFlow 설치 방법 전직장에서 딥러닝, 데이터마이닝 등 업무 기획을 위해 텐서플로우를 접할 기회가 있었다. 프로토타입의 구축과 개발 실무 부서로 전달하기 위해 설치 방법을 정리했었다. 파이선도 2.7 버전을 썼고 6~7년쯤 초기 상태이기 때문에 지금 쓰기엔 무리가 있지만 혹시 구기종을 위해 이전과 동일한 환경을 구축이 필요할지도 몰라 메모 겸 남겨둔다. * 즉 현재 실정에 사용하기 적절하지 않은 내용이다. 1. python 설치 : sudo apt-get install python-pip python-dev 2. TensorFlow 설치 : sudo pip install --upgrade http://storage.googleapis.com/tensorflow/linux/cpu/tensorfl.. 2022. 1. 15.