2월, 2020의 게시물 표시

[linux] Linux 역사와 종류

Linux Categories Linux    SLS (최초의 리눅스 배포판)       Slackware (디자인 안정성 및 단순성 개선)          OpenSUSE (패키지 관리 개선)       Debian (패키지 관리 및 안정성 개선)          Ubuntu (업데이트 주기 년 2회 개선, 그래픽 환경 제공)     Red Hat (9버전 이후 유료버전)       Fedora (신기술 선 적용 및 안정화 후 Red Hat 반영하는 프로젝트)       CentOS (Red Hat과 동일한 복제 무료버전) Softlangind Linux System (최초의 리눅스 배포판) 1992년 5월 피터 맥도날드에 의해 만들어진 소프트랜딩 리눅스 시스템이 최초의 배포판이다. 다소 버그가 존재하여 이후 개선 프로젝트가 만들어진다. Slackware 1993년 7월 패트릭 볼커딩이 SLS 버그를 잡기 시작하면서 만들어진 리눅스 배포판이다. 디자인의 단순성과 안정선을 목표로 만들어져 의존성 문제가 존재하여 설치를 알아서해야 하는 문제가 발생했다. OpenSUSE 1994년 3월 슬랙웨어 기반으로 독일에서 출시된 배포판으로 유럽에서 인기가 있다. YaST(Yet another Setup Tool)을 개발하여 패키지 관리 기법 보완, 1992년 9월 SuS 설립 후 2003년 노벨에 인수, 2011년 어태치메이트 그룹 인수, 2014년말 영국기어빈 마이크로 포커스 인터내셔널 인수 Debian 19923년 9월 최초 버전 출시한 오픈소스쪽에 가까운 리눅스 배포판으로 SLS기반으로 개발되었다. 일반 사용자들이 설치, 사용하기 어려워 사후관리가 필요한다. 패키지 관리가 편리하다. 초기에는 dpkg 도구에서 apt로 개선하였다. 안정성에 기반을 둔 배포판으로 업데이트 주기가 길고 서버로 주로 활용한다. Ubuntu 2004년 10월 Debian 계열의 배포판으로 등장하였다. 업데이트 주기가 4월 10월 년 2회

[DRF] API 호출 URL

[API 호출 URL] urls.py router = routers.DefaultRouter() router.register(r'users', views.UserViewSet, basename='user') router.register(r'groups', views.GroupViewSet, basename='group') router.register(r' obslogs ', views.ObslogViewSet, basename='obslog') url http://localhost:80 00/api/ obslogs / (GET - Note List) http://localhost:8000/api/ obslogs / (POST - Create Note) http://localhost:8000/api/ obslogs /{id}/ (GET - Get Single Note by id) http://localhost:8000/api/ obslogs /{id}/ (PATCH - update partial) http://localhost:8000/api/ obslogs /{id}/ (DELETE - destroy a single note by id) api url call d = {         'who_user':who_user,          'who_ip':who_ip,          'who_useragent':who_useragent,         'who_device':who_device,         'who_device_type':who_device_type,         'who_device_family':who_device_family,         'who_devi

[Django App] celery

[순서] - message queue 설치 - python celery 설치 - django-celery-result 설치 - django-celery-beat 설치 [message queue 설치 - linux-ubuntu] 서버 설치 (설치 후 자동 서버 시작됨) $  sudo apt-get install rabbitmq-server 서버 시작 $ sudo rabbitmq-server 서버 시작 (백그라운드) $ sudo rabbitmq-server -detached 서버 종료 (kill 사용금지) $ sudo rabbitmqctl stop 서버 상태 $  sudo rabbitmqctl status [message queue 설치 - linux-amazon linux2] 서버설치 전 rabbitmq-server yum 레포지토리 설치 curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash 서버 설치 $  sudo yum install rabbitmq-server 서버 enable $  sudo systemctl enable rabbitmq-server 서버 시작 $   sudo systemctl start rabbitmq-server 서버 종료 $   sudo systemctl stop rabbitmq-server 서버 상태 $   sudo systemctl status rabbitmq-server [message queue 설치 - Mac] 설치준비 $  brew update 설치 $   brew install rabiitmq 서버 시작 (포그라운드) $   rabbitmq-server 서버 시작 (서비스) $   brew services start rabbitmq 서버 종료 (서비스) $   brew services stop rabbitmq 서버

[Django] robots.txt 적용

[robots.txt 만들기] robots.txt 내용 모든 로봇 수집 허용 User-agent: * Allow:/ 네이버 로봇만 수집 허용 User-agent: Yeti Allow:/ robots.txt 위치 project\app\templates\app\robots.txt [Django 설정] project\project\urls.py 에 아래 내용 추가 from django.views.generic import TemplateView path('robots.txt/', TemplateView.as_view(template_name="app/robots.txt", content_type='text/plain'))

[Django App] GEOIP2

이미지
[순서] django에서 geoip2 설치 geo data 설치 django 환경설정 django 활용 [django에서 geoip2 설치] pip install geoip2 [geo data 설치] https://www.maxmind.com 에서 회원가입을 한다. 로그인 한 후 "my Account"에서 "Download Database"를 선택한다. 필요한 데이터를 다운로드 한다. (GeoLite2-City, GeoLite2-Country) GZIP 다운로드 /home/ubuntu/project/data/geo 디렉토리를 생성한다. 다운로드한 tar파일을 압축해제 하고 *.mmdb파일을 /home/ubuntu/project/data/geo 디렉토리로 복사한다. [django 환경설정] django settings.py에 다음을 추가한다. # geoip2 Setttings GEOIP_PATH=os.path.join(BASE_DIR, 'data/geo') [django 활용] python manage.py shell >>> from django.contrib.gis.geoip2 import GeoIP2 >>> g = GeoIP2 () >>> g . country ( 'google.com' ) {'country_code': 'US', 'country_name': 'United States'} >>> g . city ( '72.14.207.99' ) {'city': 'Mountain View', 'continent_code': 'NA', 'continent_name': 'North Ame

[React Native] 에러 발생 시 소스코드를 VSCode 에디터로 열기

mac의 경우 홈 디렉토리에서 .bash_profile에 아래 내용을 추가한다. export PATH=$PATH:/Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin export REACT_EDITOR=code

[React Native] info.pist 설정

{ "expo" : { "name" : "neverlost" , "slug" : "neverlost" , "privacy" : "public" , "sdkVersion" : "36.0.0" , "platforms" : [ "ios" , "android" , "web" ], "version" : "1.0.0" , "orientation" : "portrait" , "icon" : "./assets/images/icon.png" , "splash" : { "image" : "./assets/images/splash.png" , "resizeMode" : "contain" , "backgroundColor" : "#ffffff" }, "updates" : { "fallbackToCacheTimeout" : 0 }, "assetBundlePatterns" : [ "**/*" ], "ios" : { "supportsTablet" : true , "infoPlist" : { "NSAppTransportSecurity" : { "NSAllowsArbitraryLoads" : false , "NSExceptionDomains"

[AWS] SSL 인증서 발급하기

https://velog.io/@minholee_93/AWS-ELB-SSL-인증서-적용하기-mfk4dpjrd6

[React Native] nvm 설치 및 이용하기

https://tutorialpost.apptilus.com/posts/nodejs/nvm-for-node-version-manager/