[Ubuntu] SWAP 파일 생성 삭제

Linux
스왑 파일/파티션 존재 여부 확인스왑 파일 생성 전에 스왑 파일이나 스왑 파티션이 존재하는지 먼저 확인합니다. sudo free -m 그리고 아래의 명령어를 입력해서 swap 관련한 내용이 보이지 않으면 스왑이 설정되지 않은 것입니다. sudo swapon -s 만약 두 명령어 모두 swap 관련이 보이지 않으면 아래 명령어로 생성합니다. 스왑 파일(swapfile) 생성먼저 스왑 용도로 사용할 파일을 swapfile이라는 이름으로 생성합니다. sudo fallocate -l 2G /swapfile 명령어의 2G는 2GB를 의미하며 원하는 용량을 입력하면 됩니다.루트 디렉터리에 swapfile 파일이 생성됩니다. swapfile 다음으로 생성된 파일의 권한을 수정합니다. sudo chmod 600 /swapfile sudo chmod 600 /swapfile 이제 해당 파일이 스왑으로 동작하도록 만들어줍니다. sudo mkswap /swapfile 아래와 같은 내용이 표시됩니다. mkswap 마지막으로 아래 명령어를 입력해서 스왑을 활성화시킵니다. sudo swapon /swapfile sudo swapon /swapfile 이것으로 스왑이 생성되며 재부팅 이후에도 계속 사용하려면 /etc/fstab 파일을 수정합니다. sudo vi /etc/fstab sudo vi /etc/fstab 파일 하단에…
Read More

Synology에서 git pull 후 배포만 만들기

NAS
#!/bin/bash #날짜 date=$(date '+%Y%m%d') # 디렉토리 비우기 /usr/bin/rm -f /volume1/Distribute/table.tar.gz /usr/bin/rm -rf /volume1/Distribute/table/* # 디렉토리 복사 /usr/bin/cp -r /volume2/development/table/* /volume1/Distribute/table/ # Database sql dump /volume1/@appstore/MariaDB10/usr/local/mariadb10/bin/mysqldump -uUSER -pPASSWORD table > /volume1/Distribute/table/table.sql # 불필요 디렉토기 삭제 /usr/bin/rm -rf "/volume1/Distribute/table/_" /usr/bin/rm -rf "/volume1/Distribute/table/프로젝트" # 디렉토리 생성 /usr/bin/mkdir /volume1/Distribute/table/upload /usr/bin/chown user:users /volume1/Distribute/table/* /usr/bin/chmod 777 /volume1/Distribute/table/upload # 파일 압축 /usr/bin/tar -zcvf /volume1/Distribute/table.tar.gz /volume1/Distribute/table/*
Read More

Synology에서 쉘로 SVN update하기

NAS
쉘스크립트를 만드는 이유는 자동화를하기 위해서 입니다. 커멘트 모드에서 매번 실행을 하다 보면은 조금은 잊어 버릴때가많아서 스케쥴러에 걸어 놓으면은 상당히 편합니다. #!/bin/bash /usr/bin/svn checkout svn://URL/프로젝트명 /volume2/development/받을 경로/ 실 생활에서 사용하는것에 감춰야 할 부분을 감추고 정말 간단한 정보만을 표현을 한것입니다. 시놀로지 NAS에서 작업스케쥴을 걸면은 잊어 먹지 않고 바로 공개적으로 사용할수 있는 Public 웹이 만들어지기때문에 굳이 NAS에 들어가지 않아도 되는 이점이 존재 하는것입니다. 스케쥴러 캡쳐 화면 위에 화면 처럼 조금 빠르지만은 개발을 할 시간에 걸어 놓으면은 별도로 NAS에서 확인하지 않아도 바로 적용이 되고, 늦어도 커밋후 10분 이내에 바로 NAS Web에 적용이 되지 작업을 줄이는 일입니다. 처음에 이렇게 사용하게 된 이유가 제가 담당을 해서 매번 업데이트를 실행해야 되어서 퇴근전이나 큰 변경사항이 있다면은 매번 하다 보니 조금은 귀찮은 점을 해소하기 위해서 작업을 하게 된 것입니다. 프로그램을 만드는 사람이라면은 응당 자기가 귀찮은 일을 프로그램에게 맡겨서 처리할수…
Read More

Synology 쉘스크립트 백업

NAS
#!/bin/bash #날짜 date=$(date '+%Y%m%d%H%M') NowDate=`date` # 기존 파일 삭제 /usr/bin/rm -f /volume1/web/backup/data/${date}.sql /usr/bin/rm -f /volume1/web/backup/data/${date}.tar.gz # 압축 backup 디렉토리, phpMyAdmin 디렉토리 제외 /usr/bin/tar -zcvf /volume1/web/backup/data/${date}.tar.gz /volume1/web/* --exclude /volume1/web/backup --exclude /volume1/web/phpMyAdmin # 압축파일 일정시간 지난후 삭제 /usr/bin/find /volume1/web/backup/data/ -name '*.tar.gz' -mtime 30 | xargs /usr/bin/rm -f #MySQL DB sql backup /volume1/@appstore/MariaDB10/usr/local/mariadb10/bin/mysqldump -u사용자 -p패스워드 데이터베이스 > /volume1/web/backup/data/${date}.sql #일정기간 경과 파일 삭제 /usr/bin/find /volume1/web/backup/data/ -name '*.sql' -mtime 30 | xargs /usr/bin/rm -f
Read More
팟플레어 광고 차단

팟플레어 광고 차단

Windows
설치시 언어를 한국어가 아닌 영문으로 하고 하는 방법이라고 합니다. 화면 캡쳐 위에 화면은 설치후에 언어를 변경하는 방식입니다. https://dssbblog.com/카카오-팟플레이어-광고제거-언어-변경-으로-차단-해/ 2020년 11월 1일 현재 제가 무엇을 잘못하였는지 위 방법으로는 현재 제대로 작동하지 않고 있어서 방법을 찾는중입니다. 뭔가 복잡한 작업을 하지 않고 팟플레이어 광고를 제거할 방법이 없는가 고민입니다.
Read More

Apache SSL 등급 확인

Linux, WWW
제가 운영하는 웹서버의 SSL 등급기 갑자기 궁금해져서 한번 테스트를 해보았습니다. 테스트에 사용된 사이트는 ssllabs.com 에 기능을 이용하였습니다. 아래에 링크를 첨부해 놓았습니다. https://www.ssllabs.com/ssltest/analyze.htm 결과는 좋게 A 등급이 나왔습니다. 서버에 사용하는 모든 버전이 업데이트 되면서 결과가 좋게 나온다고 생각은 하였지만 생각하는 부분과 결과를 눈으로 직접 보는것은 다른듯 합니다. 결과화면에 대한 캡쳐본 가끔식은 트렌드에 따라서 움직여야 하는 일이 있습니다. 특히 보안에 관련된 사항은 좀 더 많은 부분을 신경쓰고 현재 진형으로 가는 부분을 잘 적용하는것이 좋을듯 합니다. 위 결과 화면 아래에 더 많은 정보가 있지만 캡쳐를 할 이유가 없어서 위에 가장 중요한 화면만 캡쳐만 한것입니다.
Read More

리눅스 디스크 사용량 확인

Linux
리눅스에서 디스크 사용량에 대해서 확인하는 명령어 입니다. 간단하게 'df'로 해서 처리를 할 수 있지만 다른 부분에 대해서도 확인 가능한 명령어입니다. df df -P 전체용량 # KB단위 df -P | grep -v ^Filesystem | awk '{sum += $2} END { print sum " KB" }' # GB 단위 df -P | grep -v ^Filesystem | awk '{sum += $2} END { print sum/1024/1024 " GB" }' 전체 사용량 # KB 단위 df -P | grep -v ^Filesystem | awk '{sum += $3} END { print sum " KB" }' # GB 단위 df -P | grep -v ^Filesystem | awk '{sum += $3} END { print sum/1024/1024 " GB" }' 전체 남은 용량 # KB단위 df -P | grep -v ^Filesystem | awk '{sum += $4} END { print sum "…
Read More

서버 운영체제 버전업!!!

Linux
제가 사용하는 서버의 OS의 운영체제가 버전이 달라졌습니다. 그래서 기존에 사용하던 내용을 새로운 서버에 모두 이전한다고 3~4시간을 투자하였습니다. 물론 계획을 잡기 위해서까지 시간을 한다면은 꽤 많은 시간이 소비되었지만요.... 이전은 계획대로 순조롭게 진행이 되었고, 서버 자체의 접속을 차단한경우는 약 2시간 정도 걸렸는데, 정작 중요한 블로그에 인증서 갱신에 걸려서 강제적으로 1시간을 기다려야 하는 상황이 다가와 버렸습니다. 이러한 문제로 인해서 SSL인증서가 적용되지 않도록 소스 자체를 수정하도록 하고 있습니다. 그래도 블로그 접속이 정상적으로 되어야 한다는 생각이 나서 말이죠 일단 점심 시간이 다가와서 점심을 먹고오면은 1시간이 지나니 다시 시도해 보고 글을 남기도록 하겠습니다. ※ 추가내용 다행이 오래 기다리지 않고 SSL 인증서를 적용하였습니다. 소스 및 DB상의 SSL 인증서를 제거한 부분을 다시 살린다고 지금까지 한 과정을 꺼꾸로 진행중에 있습니다. OS가 바뀐것뿐인데 서버가 상당히 쾌적해졌습니다. 물론 새롭게 설치한 서버에 별 다른 작업을 하지 않아서 쾌적한것도 있을것이라고 생각이 들지만 blog를…
Read More
Local에 운영하는 DNS Server

Local에 운영하는 DNS Server

Windows
개인 컴퓨터에서 나만의 도메인을 만들어서 비공개로 웹브라우저로 이용을 하는데, 매번 hosts 파일을 수정하는것이 번거로워서 만들게 된것입니다. 그렇다고 해서 특별한 기능을 넣거나 하지 않으면서 hosts 파일에 대한 수정을 최대한 줄여보고자 하는 형태로 개발이 된것입니다. 아래의 화면은 프로그램 실행 화면입니다. 프로그램 자제적으로 SQLite DB를 사용해서 자제적으로 DB를 이용해서 항상 그래도 운영이 되도록 만든것입니다. hosts 파일 수정은 원래 권장되는 방법도 아니고, 백신 업체들도 hosts 파일에 대한 변조를 체크하는 업체들도 있어서 가능하면은 사용하지 않는것이 좋은것입니다. 프로그램 실행화면 현재 test.test.com 이라는 도메인을 한번 만들어서 넣어본것입니다. 계속 추가하고 변경하고 삭제를 할 수 있도록 만든다고 하였지만 문제점도 있지만 쓸만은 합니다. 윈도우에서 CMD 를 통해서 nslookup 를 통해서 목록에 추가한 도메인을 조회한 모습니다. nslookup 으로 확인한 화면 프로그램 초기 버전 파일을 다운로드 할 수 있습니다. SimpleLocalDnsServer다운로드 현재 프로그램 도중에 DNS 정보가 정상적으로 갱신이 되지 않기도 합니다. 단기간에 만들다보니…
Read More

Ubuntu 서버에서 Gitlab 제거

Linux
정말 간단한 내용입니다. Ubuntu 서버에 설치를 하고 나서 지우려고 보니 명령어를 모아 놓은곳이 없어서 일단 정리해를 해 놓습니다. sudo gitlab-ctl cleanse sudo gitlab-ctl uninstall sudo apt remove gitlab-ee sudo apt purge gitlab-ee 별 다른 내용은 없지만 필요하신분이 저처럼 있을 거라고 생각해서 짧게나마 정리를 해 놓습니다.
Read More

SCP 복사

Linux
SCP 복사 기능을 정말 가끔 사용할일이 있는데, 매번 깜빡하고 다시 검색을 해보는 일이 있어서 이렇게 정리를 합니다. scp -i "인증파일경로" -r "복사할파일" ubuntu@ServerIP:"대상경로" 별 다른 내용은 없으며, 해당 기능을 통해서 중간에 내컴퓨터를 경우하지 않아도 이제 복사를 할 수 있다는 생각에 정리를 해 놓는 것입니다.
Read More

우분트 자동시작서비스 등록 실행하기

Linux
해당 기록은 제 개인적으로 기록을 해 놓은 부분입니다. 누군가에게 도움이 될수도 있지만 아마 전혀 쓸모가 없을수도 있습니다. 그렇기에 개인 기록이라는 점을 먼저 밝힙니다. crontab으로 실행하는것에 한개가 있습니다. 재부팅 되면서 실행을 해도 되고, 일정 시간을 체크해서 해도 되지만, 항상 가동해야 되는 부분이 있어서 만들게 된 부분입니다. cp /home/ubuntu/service/serviceCrawer.service /etc/systemd/systemd --------------- [Unit] Description=ServiceCrawer-1 After=network.target [Service] ExecStart=/usr/bin/php /home/ubuntu/service/service.file start ExecStop=/bin/sh /home/ubuntu/service/stop.sh Restart=on-failure [Install] WantedBy=multi-user.target ------------------ sudo chmod 644 serviceCrawer.service sudo systemctl daemon-reload sudo systemctl enable serviceCrawer.service sudo systemctl start serviceCrawer.service sudo systemctl disable serviceCrawer.service 일단 네트워크가 문제가 생기면은 재시작을 할 것이고 아니면은 항시 기동이 되도록 프로그램을 만들었습니다. 통신을 하는 부분이라서 네트워크가 죽으면 살아있어도 쓸모가 없습니다. 항상 정보를 수집하는 부분에서 일정시간마다 아닌, 실시간으로 통신을 해서 정보를 획득하기에 끊기지 않는다는것이 제일 관점있고, 그 이후 데이터를 잘 기록해야되는 부분입니다. 위에 코드는 그냥 서비스에 등록하는 부분만 있습니다.…
Read More

Port번호 사용 영역

Linux, NAS, Windows
0 ~ 1023 : well-known port번호 영역입니다. 이 영역의 port번호는 UNIX/LINUX에서 root 권한으로만 port를 열 수 있습니다. 예약영역이라고 보면 됩니다. 1024 ~ 49151번: 등록된 포트 (registered port) 이 영역은 주로 서버 소켓으로 사용하는 영역입니다. 49152 ~ 65535번 : 동적 포트(dynamic port) 이 영역은 자동으로 할당되는 영역입니다.
Read More

Dropbox를 통한 VSCode 환경설정 동기화

Tool
github를 사용하면은 쉽게 할  수 있는 방법은 검색만 해도 많지만은, github를 사용하지 않고 환경설정이나 확장 프로그램을 관리하기 위해서 고민을 하다가 기존에 사용하는 Dropbox를 이용해서 하는 방법을 강구했습니다. 기존에 환경설정이나 확장 프로그램을 미리 복사해서 백업을 해 놓고 사용하시기 바랍니다. Windows의 CMD(명령프롬프트) 를 통해서 아래의 명령어를 입력하면은 Dropbox에 복사해 놓은 환경 설정과 확장 프로그램을 사용합니다. mklink /d "%USERPROFILE%\.vscode\extensions" "D:\Dropbox\Backup\.vscode\extensions" mklink "%APPDATA%\Code\User\settings.json" "D:\Dropbox\Backup\.vscode\settings.json" 이 이후에 VSCode를 실행하고 다른곳에서도 동일한 작업을 하고 나서 하면은 동이한 환경 설정을 이용해서 사용할수 있습니다. 이 방법을 통해서 모든 코드, 문서를 관리하는 방법으로 인해서 전 어느 컴퓨터라도 동일한 환경에서 작업을 진행하고 동일한 작업을 진행 할 수 있어서 행복합니다. 물론 Github의 gist를 통해서도 가능하지만 그외에 방법으로 할 수 있다는 점을 글을 적어 봅니다.
Read More