리눅스서버 4 페이지
전체메뉴열기
검색열기
재테크양식
각종양식
PHP
AWS.클라우드
리눅스.서버
개발관련
양식.서식 파일
javascript
HTML
CSS
회원가입
로그인
재테크양식
각종양식
PHP
AWS.클라우드
리눅스.서버
개발관련
양식.서식 파일
javascript
HTML
CSS
사이트 내 전체검색
검색어 필수
검색
리눅스서버
전체 185건
4 페이지
[MySQL] vscode 툴 원격지의 디비서버 접속하기 ssh 터널링
간단하게 터널링 지원하는 확장툴을 설치 하면 됩니다.원격지 디비 서버의 MySQL을 직접 연결하는 것이 아니라 ssh2에 접속한 다음 그곳에서 로컬로 접속하는 방식을 말하는데 보통 터널을 뚥어 사용 한다고 합니다.여기선 힘들게 설정 하는것은 아니고 환경설정에서 접속하는 포트와 유저 비밀번호만 넣어 주면 되는데 아래와 같습니다.설정의 중요한 부분은 "SSH Tunnel"을 선택하면 리눅스 접속하는 환경설정이 보이는데 이곳에 아이디 비밀번호 접속포트 등을 입력해 주면 됩니다.테이블을 샘플로 하나 클릭해 조회를 해 보았습니다.
레이드 - RAID 10과 RAID 01의 차이
레이드 10과 01의 차이점에 대한 것입니다.결론부터 말하면 장애처리 할때의 차이가 크게 됩니다.이것을 알기 전에 먼저 RAID 1+0 인것을 보통 RAID 10이라고 합니다.그리고 앞에 1이 먼저 입니다. 그리고 1을 0으로 묶은 것입니다.그렇기 때문에 RAID 1과 RAID 0 을 알아야 합니다.* 레이드 0RAID 0은 여러개를 1개로 묶는 기능입니다.1TB 5개를 묶어 5TB를 만들 수 있습니다.* 레이드1RAID 1은 미러링 기능입니다. 즉, 백업이라 생각하셔도 되고 동일한 복사본을 만드는 것입니다. 이렇게 됩니다. 디스크 하나가 장애가 발생 했다고 생각해보시면 RAID 1은 그 1개에 해당하는 미러링…
[MySQL] 복제 1236 에러(Got fatal error 1236 from master)
결론부터 말하면 MySQL 마스터 슬레이브 설정되었을때 예기치 않게 서버가 죽거나 하였을때 주고 발생을 합니다.통상적으로 파일명 지정을 다음것으로 하면 해결이 됩니다.그리고 테이블 체크는 별도로 해보셔야 합니다.mysql> show slave status \G*************************** 1. row *************************** Slave_IO_State: M…
특정 파일 확장자만 백업 하는 스크립트(bash linux php backup)
배쉬쉘에서 사용하는 간단한 백업 스크립트 입니다.매일 스케줄러에 의해서 실행이 되면 일자로 디렉토리를 만들고 파일을 복사합니다.백엔드에서 중요한 확장자인것을 매일 백업 받아 관리가 필요할때 사용하면 좋습니다. #!/bin/sh # 숫자가 아닌것을 사용할 경우 언어 확인 DATE_DAY=`date +%d` DATEWEEK=`date +%u` HOSTNAME=`hostname -s` # DIR_SRC=/www/html/src DIR_DST=/files/backup/${DATE_DAY} # 특정 일자 지난것은 삭제 한다. &n…
[MySQL] 서버에서 읽기만 가능하게 설정 하기 read_only
마스터 슬레이브 구조에선 마스터에서만 쓰기 기능이 되고슬레이브에선 읽기 기능만 사용하는 형태로 많이 사용합니다.슬레이브에서 쓰기 기능이 있다면 마스터와의 데이터 차이 때문에 문제가 발생합니다.물론 데이터베이스를 지정해서 서로가 슬레이브 역활과 마스터 역활을 하게 설정 하기도 합니다.여기선 이런 부분은 아니고 마스터와 하위에 슬레이브가 여러대 있는 구조를 말합니다.아래와 같이 설정을 해주면 됩니다. 서버가 다시 시작해도 적용을 시키기 위해선 환경설정 파일에 명시를 해줘야 합니다./etc/my.cnfread_only = 1접속하…
어느나라 IP인지 알 수 있는 GeoIP 다운로드 받는곳
IP가 어느나라의 소유인지 알 수 있는 GeoIP CSV 데이터 입니다.예전엔 받을 수 있는곳이 좀 있었는데 유료로 변경되어 받을 수 없었는데 한곳 찾았습니다.IP 대역에 대한 국가를 알 수 있습니다.* GeoIP 다운로드 받는 곳파일 다운로드는 첨부된 링크에 들어가시면 됩니다.파일은 csv 형태로 받을 수 있으며IPV6에 대한 정보도 있습니다. 대부분 IPV4 입니다.* 프로그램으로 이 파일을 처리하는 방법은 대략 다음과 같습니다.- IPV4는 30만개가 넘습니다. IP는 대역으로 되어 있기 때문에 PHP로 처리하는 과정입니다.1) 시작과 끝 IP를 ip2long로 변환 하고 배열로 가지고 있습니다. 국가 코…
리눅스 사용되고 있는 CPU 정보 확인하는 방법
현재 사용중인 리눅스의 CPU 정보에 대한 것입니다.그런데 프로세스는 가상으로 돌리고 있는곳의 경우 정확히 믿을 수는 없습니다.자신의 서버라면 본인이 잘 알겠지요. 하지만 이 사이트 처럼AWS의 서버를 이용하거나 AWS가 아니더라도 가상환경의 서비스를 이용하는 경우라면 데디케이트 서비스 이냐아니냐에 따라 CPU의 갯수의 의미는 달라 집니다. 다만 이런것 확인하는것은 초기 조사할때 속도나 환경등 비교를 해야 할때 필요한 정보입니다.CPU의 경우 AWS의 라이트세일이 EC2보다 좀 더 빠릅니다. 비슷한 가격일때 그렇습니다. 램과 CPU 비슷할 때 제가 비교 했을때는 라이트세일이 빠릅니다. 다만 네…
[MySQL] 오류 ERROR 1194 (HY000) 복구하기
MySQL 서버 운영시 볼 수 있는 오류중 난감한것중 하나 입니다.왜냐하면 데이터가 날라갔을 수 있기 때문이죠.여러가지 원인이 있을 수 있는데 우선은 디스크용량 부터 보는것이 좋습니다.그 외에는 갑자기 꺼진적이 있었는지 ..그렇지 않다면 바쁜 서버여서? 운이 나쁜것입니다. ERROR 1194 (HY000): Table is marked as crashed and should be repaired오랬동안 사용하지 않았던 테이블인데 엔진을 변경하는데 오류가 발생한 경우 입니다.다행이 check table 명령 후 repair table 명령으로 살려진 경우 입니다.그렇기 때문에 백업은 선택이 아니리 필수 입니다. …
특정 프로세스를 간단하게 전체 kill 시키기
보통은 killall 명령으로 종료가 되는데 안되는 경우 -9 옵션을 줘서 처리해야 되는경우가 있습니다.이런 경우 사용하는 간단한 스크립트? 입니다. ps -aef | grep "/php/" | grep -v "grep" | awk '{print $2}'위에서 grep -v 옵션을 준것은 현재 내가 사용하고 있는 grep는 제외 시키기 위해서 입니다.이렇게 확인한 다음 종료를 시킬때는 아래와 같이 하면 됩니다.kill -9 $(ps -aef | grep "/php/" | grep -v "grep" | awk '{print $2}')위와 같이 명령을 내리면 조건에 해당하는 PID를 찾아 모두 강제로 kill 시킵…
리눅스 쉘에서 PHP 실행하여 결과 필터링 및 환경파일 확인
웹브라우저를 통해서 보통 PHP를 실행 하지만 간혹 쉘에서 직접 실행 했으면 하는 경우가 있는데 그때 필요 합니다.보통 PHP 설치를 하게 되면 쉘에서 실행 할 수 있는것 까지 같이 설치가 됩니다.윈도우 이든 리눅스 이든 시스템의 환경변수 설정(path)를 해줘야 경로를 입력하지 않고 가능하긴 하지만 이는 다른 언어도 다르지 않은 부분 입니다.쉘에서 어떤 모듈이 적용 되었는지 확인 하고 싶을땐 아래 명령을 내리면 됩니다.[root@pabburi ~]# /usr/local/php/bin/php -r "phpinfo();" | grep "php.d"저 같은 경우는 심볼릭 링크를 위처럼 줘서 그렇습니다.경로는 설치한 방식에 …
webp 이미지 압축 프로그램 설치
jpeg 보다 더 압축 성능이 좋은 webp 이미지에 대한 것입니다.앞으로 대세로 사용될 이미지 포맷으로 현재 버전의 크롬에서 잘 지원이 되기 때문에 이미지 태그에 그대로 사용하면 됩니다.# CentOS 설치 or 아마존 리눅스yum -y install libwebp-tools.x86_64# 변환 방법cwebp img.jpg -o img.jpg# 퀄리티를 줘서 압축 80까지 문제 없다cwebp -q 91 img.jpg -o img.jpg# webp 이미지 매직으로 확인해 보기identify img.webp# 디렉토리 전체에 있는것 webp로 변경하기for file in images/*; do cwebp "$file" -…
png 이미지 압축프로그램 pngquant
리눅스에서 사용하는 png 압축 프로그램 입니다.기본적은 png은 훼손방식의 압축은 아니지만 이 프로그램은 훼손방식의 압축이지만 jpg와는 다른 방식으로 압축을 진행 합니다.결과는 아래 보시면 됩니다.각각 jpg, png 압축방식의 차이가 표현하는 방식이 다르기 때문에 이 부분을 이해하고 사용하는 것이 좋습니다. png는 gif의 라이센스 비용때문에 탄생한것으로 gif 처럼 훼손방식이 아닙니다.리눅스에서 아래와 같은 명령으로 어떤 패키지를 설치해야 되는지 확인 후 설치 합니다.(CentOS, 페도라, 아마존리눅스)yum search pngquantpngquant.x86_64픽사베이에서 이미지 하나를 가져 옵니다.이미지 …
[MySQL] 유저 추가 및 접근권한 주는방법(GRANT REVOKE)
MySQL은 mysql 디비의 user, host, db 테이블을 직접 건드리는 방식도 가능 하지만 그렇게 하는것이 더 불편하고 힘듭니다.SQL 명령이 있으니 아래 참고 하여 사용하면 됩니다.# 간단하게 유저 추가하는방법 - rootCREATE USER 'root'@'접근IP' IDENTIFIED WITH 'mysql_native_password' BY '접근문자';# GRANT 이외의 권한을 모두 줍니다.GRANT …
linux 쉘에서 주기적인 모니터링(2초간격 계속 실행)
쉘에서 특정 명령을 계속 실행 하는 방법입니다.현재 디렉토리에 변화가 있는지 확인(모니터링)while true; do (ls -al; sleep 2); done 이 경우는 디비서버 변화에 대한 모니터링이 필요할때 사용 합니다.별도의 모니터 또는 화면을 분할하여 간간이 확인이 필요할때 사용하면 유용 합니다.while true; do (mysql -A -u 디비유저 -p디비PW -h localhost -P 3306 -e "show master status \G"; sleep 3); done[LINUX] 쉘에서 실행되는 프로그램 모니터링 리눅스에서 현재 실행 되고 있는 프로그램 모니터링 특정 프로그램을…
아파치 웹로그에서 IP주소 취합하여 정렬하는 방법
아파치 웹로그에서 특정 부분을 취합하여 많은 순으로 정렬하여 볼 수 있는 기능입니다.1) 먼저 웹로그에서 전체를 대상으로 해도 되지만 필요한 일부분만을 필터링하여 파일로 저장합니다.2) 저장된 파일에서 특정 부분을 소팅하고 숫자를 셉니다.cat /var/http/log/access_log | grep "보고싶은것" | grep '날짜' | grep -v '제외시킬문자' > /var/http/log/www_log.txtawk '{ print $7}' /var/http/log/www_log.txt| sort | uniq -c | sort -nr > ip_log_list.txt위에서 $7은 공백으로 구분…
엔진엑스 vs 아파치 웹서버와 비교했을때
러시아산 엔진엑스와 전통의 아파치 웹서버에 대한 것입니다. 잘못된 글들이 많아 결론만 간단하게 작성하게 되었습니다.결론부터 말하면 요즘버전의 아파치2.4 부터는 별차이 없습니다. 엔진엑스가 정적인 처리에서 더 나쁘진 않지만 그렇다는 것은 뭔가 기능이 적거나 하단 이야기가 되기도 합니다. 이유는 동일한 event 방식을 사용하기 때문입니다. 엔진엑스가 단순하다는 것은 심플하게 잘 설계 되었다는 의미가 되기도 하지만 기능이 적다는 것일 수 있기 때문에 후에 사용할 기능에 문제 없는지 확인이 필요 하단 것이 될 수 있습니다.쓰레드 방식의 워커와 이벤트 방식을 비교하는 그런 문서들이 있는데 다 잘못된 비교 입니다.지금은 별차이…
리눅스 IP 접속기록 보는 방법
로그인 유저의 목록을 보는 명령을 사용 하면 됩니다.명령은 last 입니다.그리고 뒤쪽에 -30 같은 옵션을 주면 30개의 목록을 볼 수 있습니다.로그인 할 때마다 매일 자동으로 보고 싶으면 /etc/bashrc 파일 끝에 넣어 주면 로그인 할 때 마다 접속한 목록을 볼 수 있습니다.* 로그인한 유저의 리눅스 IP 접속기록 그리고 리눅스에서 로그를 봐도 되는데요/var/log 디렉토리를 보시면 됩니다.보통 아래 파일을 많이 확인 합니다/var/log/messages/var/log/secure
SSL 인증서 설정에 문제 없는지 확인하기
https 사용을 위해서 사용되는 SSL 인증서의 설정에 대한것으로 잘 되었는지 확인해주는 사이트에 대한 안내 입니다.기본적인 설정은 무료인증서로 많이 사용하는 letsencrypt 사용하게 되면 기본적인 설정을 사용하면 아래와 같이 높은 점수가 나오게 됩니다.[root@pabburi ~]# cat /etc/letsencrypt/options-ssl-apache.conf# This file contains important security parameters. If you modify this file# manually, Certbot will be unable to automatically provide fu…
시놀로지 rsync 서비스 재시작 하는 방법(cmd rsyncd restart)
결론부터 말하면 시놀로지에서 rsync stop 하거나 start 하면 로그아웃 되면서 안됩니다.이 로그아웃 문제는 아래 이미지에서의 ssh 부분의 체크로 추정 됩니다.재시작을 하려면 아래와 같이 '파일서비스' > rsync에서 체크박스 해제한 후 '적용'클릭 그리고 체크박스 선택하고 '적용' 클릭하면 재시작 됩니다. 그러면 cmd 라인에서의 stop은 문제 없이 되던데요. start는 로그아웃 되고 안되었습니다.아래 명령 부분은 참고 하시면 됩니다. 혹시 필요하신분 있을 수도 있을듯. 시놀로지 서비스 목록 보기서비스 명칭을 알기 위해서 전체 목록으로 확인하기 위한 것입니다synoservicecfg --l…
euc-kr mysql서버 utf8로 접속하여 사용하는 방법
서버는 설정이 euc-kr로 되어 있고 테이블도 ecu-kr로 되어 있는 서버 입니다.그렇기 때문에 데이터는 euc-kr로 모두 입력되어 있습니다.이때 utf-8 사용하는 사이트에서 euc-kr 로 되어 있는 mysql 서버 데이터의 접근을 하는 방법에 대한 것입니다.* euc-kr mysql서버 utf8로 접속하여 사용하는 방법방법은 어렵지 않으며커넥션 이후에 set names utf8; 명령을 한번 실행해 주면 됩니다.그러면 MySQL에서 자동으로 euc-kr 을 utf-8로 변환해서 전달해 주게 됩니다.프로그램에서 하는 방법은 특별한 것이 아니라 위에 언급한 대로 커넥션 후에 php의 …
디렉토리안에 파일이 너무 많아 목록이 나오지 않을때
리눅스 디렉토리 안에 파일이 너무 많은 경우 입니다.보통 이런 경우 하위 디렉토리 만들어 사용하곤 하는데요. 어쩌다 보니 이런 현상이 생길때도 있습니다.* 디렉토리안에 파일이 너무 많아 아무것도 나오지 않는 경우우선 간단 하게는 ls --sort=none 이 명령으로 정렬을 하지 않으니 몇 붙 동안 출력도 안되던것이 바로 나옵니다.이명령은 유용하여 평상시에도 사용하면 좋을것 같습니다. 보통은 굳이 정렬을 할 필요가 없는 경우가 많기 때문입니다.좀더 자세한것은 아래 보시면 필요하면 C 언어로 작성하여 컴파일 하여 사용하는 예도 있습니다.https://unix.stackexchange.com/questio…
CentOS 캐릭터셋 변경하는 방법 - 후이즈한글 깨짐 변환해서 보기
캐릭터셋을 변경하는 방법입니다. 모든것이 utf-8로 되어 있는 시스템이라면 이제 이런것은 찾지 않을 텐데요. 캐릭터셋은 특별한 이유가 없으면 utf-8로 설정해서 사용하는 것이 좋습니다. 예전에 변경하던 방식은 아래 파일을 열어서 수정해 준다. vim /etc/sysconfig/i18n 아마존리눅스2(AL2) / 아마존리눅스2023(AL2023) 목록에서 대한민국에 대한 것을 찾는다. localectl list-locales | grep ko 설정해준다. localectl set-locale LANG="ko_KR.utf8" 확인한다. locale 명령으로 확인 다시 로그인해서…
php 8.1 jit 컴파일 옵션 사용하기
기본 설정이 opcache 사용으로 되어 있어서 페이지 로딩에서 보여지는 차이를 느끼지 못했습니다. 아래는 설정 및 확인한 내용 들입니다.여기서 설치한 방법은 CentOS에서 php-fpm아래 위치에서 환경설정 파일을 열어서 변경해 준다.[root@pabburi /etc/opt/remi/php81] vim php.d/10-opcache.ini # # opcache.jit = 1205 - all code is JIT compiled# opcache.jit = 1235 - only selected code portions (based on their relative use) are passed t…
Apache웹서버 실행시 Cannot load modules/mod_ssl.so into server: libssl.so.1.0.0 오류발생
소스설치 했을때의 문제 입니다. 바이너리 실치는 보통 의존성체크하고 설치가 되기 때문에 이런일이 생긴다는거 자체가 이상한거죠. 설치가 안되면 안되었지.그런데 소스 설치도 문제 없었으니 설치가 다 마무리 되었을텐데요.이상하죠?원인은 라이브러리가 올라오지 않아서 그랬던것입니다.또는 특정 위치에 있어야 하는데요. 없어서 그래서 아래처럼 해주면 됩니다.httpd: Syntax error on line 134 of /usr/local/apache/conf/httpd.conf: Cannot load modules/mod_ssl.so into server: libssl.so.1.0.0: cannot open shared object…
504 오류가 발생할때(php-fpm 사용)
잘 발생하지 않는 오류의 한 종류이지만 발생하면 경험이 없는 경우 찾기 쉽지 않은 경우 이기도 합니다.php 프로그램의 문법 오류도 아닌 것이기 때문입니다.제가 지금까지 504 발생의 경우를 보면 다음과 같습니다.1) 웹서버 환경설정(아파치) TimeOut 부분이 있습니다. 이것을 300 정도로 주세요.튜닝을 위해서 일부러 짧게 5초로 주는 경우가 있는데요. 용량이 큰 파일 업로드가 필요한 경우 길게 주는 것이 좋습니다.2) php 환경설정.웹서버 실행의 경우 입니다.실행 시간에 대한 부분이 있습니다. 그리고 post 전송, 및 용량 관련 된 부분을 늘려 주세요.3) php 환경설정 - 2위에 2)번이 있는데 이경우는 …
환경설정 파일인 php.ini 위치 확인하는 방법
환경설정 파일이 어느곳에 있는지 알기 위한 방법입니다.1) 웹서버웹서버를 통한 방법은 phpinfo() 함수를 실행 하면 위치가 나옵니다.2) 쉘에서 실행아래와 같은 명령을 통해서 어디에 있는지 알 수 있습니다. 더군다나 버전이 여러 종류일 경우 확인이 필요한 경우가 있습니다.[root@pabburi /etc/opt/remi/php81] /usr/local/php/bin/php -i | grep '.ini'Configuration File (php.ini) Path => /etc/opt/remi/php81Loaded Configuration File => /etc/opt/remi/php81/php.ini
openssh 서버 다운그레이드(소스설치)
테스트 한것 올립니다. 우선 원하는 결과가 나오지 않았지만 데몬을 띄우는것 까지 성공이 된 부분이라서 필요하신분 참고 해도 됩니다.소스설치 6.6버전은 centos7에 있는 버번입니다. amz2는 7.4 버전.https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-6.6p1.tar.gztar xvfz openssh-6.6p1.tar.gz; cd openssh-6.6p1/--with-tcp-wrappers --with-pam ./configure --prefix=/usr/local/openssh6 --with-ssl-dir=/usr/local/open…
vsftpd 다운로그레이드 소스설치
오래된 버전에선 다른것이 있을까 싶어 테스트 한것입니다. 혹시 필요하실분 있을까봐 올립니다.환경은 "아마존리눅스2" 이기 때문에 CentOS7에서도 문제 없이 잘 설치 될것으로 생각 됩니다.아래에서 환경설정에 대한 언급은 없는데요. 이유는 기존에 rpm으로 설치된 3 버전대를 그대로 사용해도 데몬이 잘 올라와서 없습니다.1) 소스다운로드 및 컴파일wget https://security.appspot.com/downloads/vsftpd-2.2.2.tar.gztar xvfz vsftpd-2.2.2.tar.gz; cd vsftpd-2.2.2/아래 파일 열어 보면 어떻게 해야 하는지 나와 있다.vim INSTALL …
remi저장소 활용 바이너리 설치 php 7.4 -> 8.1 업그레이드
remi 저장소를 이용한것으로 아마존리눅스2 이거나 centos 이거나 관계는 없습니다. 아래는 el7 이라고 나와 있네요.모든 모듈을 설치하는 방법도 있겠지만 사용하는것만 설치하는것이 더 바람직합니다.예를 들면 저 같은 경우는 아래 보니 imap,snmp,redis5,odbc 이런것들은 사용을 안하는것인데... CMS 때문에 설치했나?특정 모듈의 경우는 의존성 때문에 같이 설치 되는것도 있기는 합니다.1) 현재 설치된것을 확인한다.php74-php-common-7.4.30-1.el7.remi.x86_64php74-php-pgsql-7.4.30-1.el7.remi.x86_64php74-php-intl-7.4.30-1.e…
현재 랜카드의 전송속도를 알 수 있는 ifstat 프로그램 간단한 사용법
리눅스 랜카드(네트워크)의 데이터 트래픽의 전송 속도를 알 수 있는 프로그램 입니다.기본적으로 설치 되어 있는 ifstat와는 다른 것입니다.epel 리포티지에 들어 있어 있습니다.# ifstat 설치 방법yum -y install ifstat# ifstat 사용 방법[root@pabburi /root] /usr/bin/ifstat -abt Time lo eth0 HH:MM:SS&nb…
처음
1
페이지
2
페이지
3
페이지
열린
4
페이지
5
페이지
다음
맨끝
게시물 검색
검색대상
제목
검색
상단으로
상업적 이용 금지. 컨텐츠는 개인 용도로만 사용이 가능 합니다.