설치 참조페이지 : https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/
1. Public Key Import
$sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
2. 업데이트 리스트 추가
$ echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
3. 페키지 업데이트
$ sudo apt-get update
4. MongoDB 패키지 설치
$ sudo apt-get install -y mongodb-org
5. 서비스 시작 정지 재시작
$ sudo service mongod start
$ cat /var/log/mongodb/mongod.log # 포트 27017 번 확인
$ sudo service mongod stop
$ sudo service mongod restart
2017년 10월 7일 토요일
2017년 9월 18일 월요일
Keepass 설치 및 참고
a package for keepass2 was recently uploaded into the debian archives.
http://packages.debian.org/sid/keepass2
http://packages.debian.org/sid/keepass2
This makes it easier for you to install keepass and all its dependencies under mono and integrates it with the standard freedesktop.
It is currently in unstable and will migrate to testing in a few days.
It is currently in unstable and will migrate to testing in a few days.
It is not included in ubuntu yet. It will be in the main archives in the over next version 11.01 (oneric)
To accommodate 11.04 and 10.10 users I have set up a ppa:
https://launchpad.net/~jtaylor/+archive/keepass
To accommodate 11.04 and 10.10 users I have set up a ppa:
https://launchpad.net/~jtaylor/+archive/keepass
to use it type into a terminal:
sudo apt-add-repository ppa:jtaylor/keepass
sudo apt-get update
sudo apt-get install keepass2
sudo apt-add-repository ppa:jtaylor/keepass
sudo apt-get update
sudo apt-get install keepass2
KeePass language files (*.lngx) should be placed in $XDG_DATA_HOME/KeePass
If $XDG_DATA_HOME is not set it defaults to $HOME/.local/share
If $XDG_DATA_HOME is not set it defaults to $HOME/.local/share
The XSL transformation style sheets for exporting databases and the documentation are
installed in /usr/share/keepass2/
installed in /usr/share/keepass2/
known issues:
Multiple instances of KeePass are disabled as the communication between
them is broken on unix systems (will be fixed next release).
Multiple instances of KeePass are disabled as the communication between
them is broken on unix systems (will be fixed next release).
The KeePass plugins are untested and may not work correctly.
They currently have to be placed in into /usr/lib/keepass2/
but this is not recommended as files in that location may be overwritten by package upgrades in future.
They currently have to be placed in into /usr/lib/keepass2/
but this is not recommended as files in that location may be overwritten by package upgrades in future.
2017년 9월 10일 일요일
mysql 새로운 DB 생성 및 사용자 계정 추가/권한 부여
1. root로 접근하여 db 생성
mysql> create database testDB;
생성db확인
mysql> show create database testDB;
2. 사용자 추가/사용권한 부여
mysql> grant all privileges on testDB.* to test1@localhost identified by '12345';
** 참고로 현재 사용자 확인
mysql>use mysql;
mysql> select host, user from user;
create user test2@localhost identified by '12345';
계정삭제
drop user test2@localhost;
mysql> create database testDB;
생성db확인
mysql> show create database testDB;
2. 사용자 추가/사용권한 부여
mysql> grant all privileges on testDB.* to test1@localhost identified by '12345';
** 참고로 현재 사용자 확인
mysql>use mysql;
mysql> select host, user from user;
create user test2@localhost identified by '12345';
계정삭제
drop user test2@localhost;
2017년 9월 8일 금요일
scrapy로 크롤링한 자료를 mysql에 저장하기
1. project 설치
$ scrapy startproject amazon
2. 파이썬 설정파일 설정
$cd amazon/amazon
$ nano items.py 파일을 아래와 같이 설정
---------------------
import scrapy
class AmazonItem(scrapy.Item):
# define the fields for your item here like:
# name = scrapy.Field()
title = scrapy.Field()
link = scrapy.Field()
desc = scrapy.Field(serializer=str)
pass
-----------------------
3. 아래파일 추가 설정
$ nano spiders/__init__.py
mysql> craete database qwerty_project;
$ scrapy startproject amazon
2. 파이썬 설정파일 설정
$cd amazon/amazon
$ nano items.py 파일을 아래와 같이 설정
---------------------
import scrapy
class AmazonItem(scrapy.Item):
# define the fields for your item here like:
# name = scrapy.Field()
title = scrapy.Field()
link = scrapy.Field()
desc = scrapy.Field(serializer=str)
pass
-----------------------
3. 아래파일 추가 설정
$ nano spiders/__init__.py
import scrapy
from amazoncrawler.items import AmazoncrawlerItem
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors import LinkExtractor
from amazoncrawler.items import AmazoncrawlerItem
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors import LinkExtractor
class AmazonAllDepartmentSpider(scrapy.Spider):
name = “amazon”
allowed_domains = [“amazon.com”]
start_urls = [
“http://www.amazon.com/gp/site-directory/ref=nav_sad/187-3757581-3331414”
]
def parse(self, response):
for sel in response.xpath(‘//ul/li’):
item = AmazoncrawlerItem()
item[‘title’] = sel.xpath(‘a/text()’).extract()
item[‘link’] = sel.xpath(‘a/@href’).extract()
item[‘desc’] = sel.xpath(‘text()’).extract()
yield item
name = “amazon”
allowed_domains = [“amazon.com”]
start_urls = [
“http://www.amazon.com/gp/site-directory/ref=nav_sad/187-3757581-3331414”
]
def parse(self, response):
for sel in response.xpath(‘//ul/li’):
item = AmazoncrawlerItem()
item[‘title’] = sel.xpath(‘a/text()’).extract()
item[‘link’] = sel.xpath(‘a/@href’).extract()
item[‘desc’] = sel.xpath(‘text()’).extract()
yield item
4. 데이터 크롤링 및 저장
$scrapy crawl amazon -o items.csv -t csv
5. mysql database 만들기
root로 로그인해서
mysql> grant all on qwerty_project.* to dbuser@'localhost';
mysql> use qwerty_project;
mysql> create table ProductDepartment (ProductDepartmentLilnk TEXT);
6. pipelines.py 파일 설정
$nano amazon/amazon/pipelines.py
class AmazoncrawlerPipeline(object):
host = ‘qwerty.com’
user = ‘qwerty’
password = ‘qwerty123’
db = ‘amazon_project’
host = ‘qwerty.com’
user = ‘qwerty’
password = ‘qwerty123’
db = ‘amazon_project’
def __init__(self):
self.connection = MySQLdb.connect(self.host, self.user, self.password, self.db)
self.cursor = self.connection.cursor()
self.connection = MySQLdb.connect(self.host, self.user, self.password, self.db)
self.cursor = self.connection.cursor()
def process_item(self, item, spider):
try:
self.cursor.execute(“””INSERT INTO amazon_project.ProductDepartment (ProductDepartmentLilnk)
VALUES (%s)”””,
(
item[‘link’]))
try:
self.cursor.execute(“””INSERT INTO amazon_project.ProductDepartment (ProductDepartmentLilnk)
VALUES (%s)”””,
(
item[‘link’]))
self.connection.commit()
except MySQLdb.Error, e:
print “Error %d: %s” % (e.args[0], e.args[1])
return item
print “Error %d: %s” % (e.args[0], e.args[1])
return item
7. 파일 settings.py 설정 추가
$nano amazon/amazon/ settings.py
ITEM_PIPELINES = [‘amazoncrawler.pipelines.AmazoncrawlerPipeline’]
8. project 실행
$scrapy crawl amazon
2017년 9월 6일 수요일
scrapy 설정 및 설치, Spider Tutorial
Scrpay는 웹 스크롤링 제품으로 폭넓게 활용되고 있음
이에
대한 설치방법을 정리함
1.
준비작업
$sudo
mkdir /usr/local/scrapy
$cd
/usr/local
$sudo
chown -R 사용자:사용자
scrapy
$cd
scrapy
2.
파이썬
관련 의존성 페키지 설치
$sudo
apt-get install python-dev python-pip libxml2-dev libxslt1-dev
zlib1g-dev libffi-dev libssl-dev
##우분투의
경우 sudo
apt-get install python-scrapy 식으로는
설치하지 말것
패키지가
너무 오래됨
$sudo
apt-get install python-dev python-pip libxml2-dev libxslt1-dev
zlib1g-dev libffi-dev libssl-dev$sudo apt-get install python3
python3-dev
$sudo
pip install Scrapy
$sudo
pip install virtualenv
3.
spider tutorial
$scrapy
startproject tutorial이렇게
하면 tutorial
폴더
밑에 많은 파일들이 아래와 같이 생성
4.
아래
내용을 quotes_spider.py로
저장
$nano
/tutorial/spiders/quotes_spider.py
import scrapy
class QuotesSpider(scrapy.Spider):
name = "quotes"
def start_requests(self):
urls = [
'http://quotes.toscrape.com/page/1/',
'http://quotes.toscrape.com/page/2/',
]
for url in urls:
yield scrapy.Request(url=url, callback=self.parse)
def parse(self, response):
page = response.url.split("/")[-2]
filename = 'quotes-%s.html' % page
with open(filename, 'wb') as f:
f.write(response.body)
self.log('Saved file %s' % filename)
5.
crawl 실행
$scrapy
crawl quotes
실행하고
나면 해당폴더에 quotes-1.html
and quotes-2.html 파일이
생성됨
$scrapy
crawl quotes -o quotes.json이렇게
하면 quotes.json
파일이
생김
2017년 9월 5일 화요일
Apache sqoop-1.99.7 설정 및 설치
설치 버전/다운로드 : sqoop-1.99.7-bin-hadoop200.tar.gz
1. 다운로드
$wget http://mirror.apache-kr.org/sqoop/1.99.7/sqoop-1.99.7-bin-hadoop200.tar.gz
2. 압축풀고 /usr/local/sqoop 로 옮기기$ cd ~/다운로드
$ tar -xzvf sqoop-1.99.7-bin-hadoop200.tar.gz$ sudo mv sqoop-1.99.7-bin-hadoop200 /usr/local/sqoop
3. PATH 설정
$nano ~/.bashrc
아래 추가
export SQOOP_HOME=/usr/local/sqoopexport PATH=$SQOOP_HOME/bin$ source ~/.bashrc
4. Sqoop2 서버 환경 설정
서버 환경 파일은 server/conf 에 위치합니다. 해당 위치로 이동합니다.
$ cd /usr/local/sqoop/server/confcatalina.propertise에선 하둡 라이브러리에 대한 경로를 설정할 수 있습니다. default 경로는 /usr/local/hadoop. /usr/local/hadoop/lib/ 입니다.
다르다면, common.loader 부분을 아래와 같이 설정합니다.(본인의 경로에 맞게)
$ nano catalina.properties
common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/../lib/*.jar,/usr/local/hadoop/*.jar,/usr/local/hadoop/lib/*.jar,/usr/local/hadoop/share/hadoop/hdfs/*.jar,/usr/local/hadoop/share/hadoop/hdfs/lib/*.jar,/usr/local/hadoop/share/hadoop/mapreduce/*.jar,/usr/local/hadoop/share/hadoop/mapreduce/lib/*.jar,/usr/local/hadoop/share/hadoop/yarn/*.jar,/usr/local/hadoop/share/hadoop/yarn/lib/*.jar,/usr/local/hive-2.1.0/lib/*.jar,/usr/local/hadoop/share/hadoop/common/*.jar,/usr/local/hadoop/share/hadoop/common/lib/*.jar
하둡 환경 파일이 담긴 경로를 확인 / 변경
$nano sqoop.properties# Hadoop configuration directoryorg.apache.sqoop.submission.engine.mapreduce.configuration.directory=/usr/local/hadoop/etc/hadoop/
하둡 환경파일 추가
$HADOOP_HOME/etc/hadoop/core-site.xml 에 아래 두 프로퍼티를 추가
5. Sqoop2 서버 검증$ sqoop2-tool verifyVerification was successful.라고 뜨면 설정이 제대로 된 겁니다. 이와 함께 예외도 같이 뜨는 걸 볼 수 있는데, 메인 쓰레드가 아닌 서브 쓰레드에서 발생한 예외로 지금 오류 수정 중이란 것 같습니다.
6. Sqoop2 서버 시작
$ sqoop2-server start
$ sqoop2-server stop
sqoop2 comand line 진입
$ sqoop2-shell
1. 다운로드
$wget http://mirror.apache-kr.org/sqoop/1.99.7/sqoop-1.99.7-bin-hadoop200.tar.gz
2. 압축풀고 /usr/local/sqoop 로 옮기기$ cd ~/다운로드
$ tar -xzvf sqoop-1.99.7-bin-hadoop200.tar.gz$ sudo mv sqoop-1.99.7-bin-hadoop200 /usr/local/sqoop
3. PATH 설정
$nano ~/.bashrc
아래 추가
export SQOOP_HOME=/usr/local/sqoopexport PATH=$SQOOP_HOME/bin$ source ~/.bashrc
4. Sqoop2 서버 환경 설정
서버 환경 파일은 server/conf 에 위치합니다. 해당 위치로 이동합니다.
$ cd /usr/local/sqoop/server/confcatalina.propertise에선 하둡 라이브러리에 대한 경로를 설정할 수 있습니다. default 경로는 /usr/local/hadoop. /usr/local/hadoop/lib/ 입니다.
다르다면, common.loader 부분을 아래와 같이 설정합니다.(본인의 경로에 맞게)
$ nano catalina.properties
common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/../lib/*.jar,/usr/local/hadoop/*.jar,/usr/local/hadoop/lib/*.jar,/usr/local/hadoop/share/hadoop/hdfs/*.jar,/usr/local/hadoop/share/hadoop/hdfs/lib/*.jar,/usr/local/hadoop/share/hadoop/mapreduce/*.jar,/usr/local/hadoop/share/hadoop/mapreduce/lib/*.jar,/usr/local/hadoop/share/hadoop/yarn/*.jar,/usr/local/hadoop/share/hadoop/yarn/lib/*.jar,/usr/local/hive-2.1.0/lib/*.jar,/usr/local/hadoop/share/hadoop/common/*.jar,/usr/local/hadoop/share/hadoop/common/lib/*.jar
하둡 환경 파일이 담긴 경로를 확인 / 변경
$nano sqoop.properties# Hadoop configuration directoryorg.apache.sqoop.submission.engine.mapreduce.configuration.directory=/usr/local/hadoop/etc/hadoop/
하둡 환경파일 추가
$HADOOP_HOME/etc/hadoop/core-site.xml 에 아래 두 프로퍼티를 추가
<property>
<name>hadoop.proxyuser.sqoop2.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.sqoop2.groups</name>
<value>*</value>
</property>
<name>hadoop.proxyuser.sqoop2.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.sqoop2.groups</name>
<value>*</value>
</property>
5. Sqoop2 서버 검증$ sqoop2-tool verifyVerification was successful.라고 뜨면 설정이 제대로 된 겁니다. 이와 함께 예외도 같이 뜨는 걸 볼 수 있는데, 메인 쓰레드가 아닌 서브 쓰레드에서 발생한 예외로 지금 오류 수정 중이란 것 같습니다.
6. Sqoop2 서버 시작
$ sqoop2-server start
$ sqoop2-server stop
sqoop2 comand line 진입
$ sqoop2-shell
2017년 9월 3일 일요일
rsa 암호화를 이용한 인증키 생성 및 설정 방법
ssh localhost 접속
$ssh-keygen -t rsa -P ""
$cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
$sudo chmod og-wx /home/user계정/.ssh/authorized_keys
$ssh localhost
원격 서버 ssh key 설정
$scp ~/.ssh/id_rsa.pub 원격서버아이디@192.168.x.xx:id_rsa.pub
원격서버 접속하여 파일 권한 수정
$ssh 원격서버아이디@192.168.x.xx
$cat id_rsa.pub>>~/.ssh/authorized_keys
$chmod 644 ~/.ssh/authorized_keys
$exit
다시 접속하면 패스워드 없이 접속 가능
$ssh 원격서버아이디@192.168.x.xx
$ssh-keygen -t rsa -P ""
$cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
$sudo chmod og-wx /home/user계정/.ssh/authorized_keys
$ssh localhost
원격 서버 ssh key 설정
$scp ~/.ssh/id_rsa.pub 원격서버아이디@192.168.x.xx:id_rsa.pub
원격서버 접속하여 파일 권한 수정
$ssh 원격서버아이디@192.168.x.xx
$cat id_rsa.pub>>~/.ssh/authorized_keys
$chmod 644 ~/.ssh/authorized_keys
$exit
다시 접속하면 패스워드 없이 접속 가능
$ssh 원격서버아이디@192.168.x.xx
피드 구독하기:
글 (Atom)