리눅스 + 파이썬 이용해서 메일 보내는 방법이다.

 

- 우선 리눅스에서 아무이름으로 아래 내용처럼 .py파일을 만들어준다

#!/usr/bin/python
# -*- coding: utf-8 -*-
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.base import MIMEBase
from email import encoders


# 아이디 비밀번호 정보
email_from = '???@naver.com'		#보내는이 메일주소
email_to = '94.mogi@gmail.com'	#받는이 메일주소
naver_id ='????'					#네이버 아이디 입력
naver_pass = 'qwe123!@#'			#패스워드 입력

# 제목 입력
subject = '테스트 메일'

msg = MIMEMultipart()
msg['From'] = email_user
msg['To'] = email_send
msg['Subject'] = subject

# 본문 내용 입력
body = '테스트 메일입니다.'
msg.attach(MIMEText(body,'plain'))

#첨부 파일 보내기
filename='aa.txt'		#첨부 파일 이름 이처럼 이름만쓰려면 같은 경로에 파일있어야됨 아니면 절대경로입력
attachment  =open(filename,'rb')

part = MIMEBase('application','octet-stream')
part.set_payload((attachment).read())
encoders.encode_base64(part)
part.add_header('Content-Disposition',"attachment; filename= "+filename)
msg.attach(part)


text = msg.as_string()
server = smtplib.SMTP('smtp.naver.com',587)		#네이버 smtp서버 지정
server.starttls()
server.login(naver_id,naver_pass)

server.sendmail(email_from,email_to,text)
server.quit()
~

 

- 아래 이미지를 보면 test.py 랑 aa.txt 파일이 있다 ./test.py 명령어를 통해 실행시켜주면 메일발송

- './파일이름' 방식으로 실행시키는데 권한이 없어서 안될수도 있다 그럴땐 'chmod +x 파일명' 명령어로 실행권한을 추가해준다

 

- 지메일 확인시 메일 도착한걸 확인할수 있다.

 

- 이후 crontab -e 명령어를 통해 아래와 같이 매일 오전 9시에 실행시키게 하면 매일 자동발송 가능

crontab -e
00 09 * * * ./tmp/test.py

 

 

 

혹시나 위와같이 했는데 메일이 전송 안된다면 네이버 메일에 smtp 허용이 되어 있는지 확인이 필요하다

네이버 메일 설정쪽에서 smtp 사용함으로 설정후 확인하면됨 아마 허용되있는게 디폴트값이였던것같다.

-OS버전-

Centos 7.7

 

 

1. repo 설정_1

-mariadb를 설치하기위해 다운로드 경로를 지정하는 과정 'vi vi /etc/yum.repos.d/mariadb.repo' 명령어를 통해 repo파일 생성한뒤 아래와 같이 입력 후 저장

----------------------------------------------------------------------

[mariadb]
name = mariadb
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey = https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck = 1

----------------------------------------------------------------------

[root@localhost ~]# vi /etc/yum.repos.d/mariadb.repo
[mariadb]
name = mariadb
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey = https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck = 1

 

2.yum 을 이용한 설치 진행

-'yum install MariaDB' 명령어를 통해 설치 진행 이후 설치진행을 할것인지 물음에대하여 'y'를 입력하여 계속하여 진행

[root@localhost ~]# yum install MariaDB

Dependencies Resolved

===============================================================================================================================================================================================================
 Package                                                   Arch                                      Version                                                  Repository                                  Size
===============================================================================================================================================================================================================
Installing:
 MariaDB-client                                            x86_64                                    10.4.12-1.el7.centos                                     mariadb                                     12 M
 MariaDB-compat                                            x86_64                                    10.4.12-1.el7.centos                                     mariadb                                    2.8 M
 MariaDB-server                                           x86_64                                     10.4.12-1.el7.centos                                     mariadb                                     26 M
     replacing  mariadb-libs.x86_64 1:5.5.64-1.el7
Installing for dependencies:
 MariaDB-common                                            x86_64                                    10.4.12-1.el7.centos                                     mariadb                                     81 k
 perl                                                      x86_64                                    4:5.16.3-295.el7                                         base                                       8.0 M
 perl-Carp                                                 noarch                                    1.26-244.el7                                             base                                        19 k
 perl-Encode                                               x86_64                                    2.51-7.el7                                               base                                       1.5 M
 perl-Exporter                                             noarch                                    5.68-3.el7                                               base                                        28 k
 perl-File-Path                                            noarch                                    2.09-2.el7                                               base                                        26 k
 perl-File-Temp                                            noarch                                    0.23.01-3.el7                                            base                                        56 k
 perl-Filter                                               x86_64                                    1.49-3.el7                                               base                                        76 k
 perl-Getopt-Long                                          noarch                                    2.40-3.el7                                               base                                        56 k
 perl-HTTP-Tiny                                            noarch                                    0.033-3.el7                                              base                                        38 k
 perl-PathTools                                            x86_64                                    3.40-5.el7                                               base                                        82 k
 perl-Pod-Escapes                                          noarch                                    1:1.04-295.el7                                           base                                        51 k
 perl-Pod-Perldoc                                          noarch                                    3.20-4.el7                                               base                                        87 k
 perl-Pod-Simple                                           noarch                                    1:3.28-4.el7                                             base                                       216 k
 perl-Pod-Usage                                            noarch                                    1.63-3.el7                                               base                                        27 k
 perl-Scalar-List-Utils                                    x86_64                                    1.27-248.el7                                             base                                        36 k
 perl-Socket                                               x86_64                                    2.010-5.el7                                              base                                        49 k
 perl-Storable                                             x86_64                                    2.45-3.el7                                               base                                        77 k
 perl-Text-ParseWords                                      noarch                                    3.29-4.el7                                               base                                        14 k
 perl-Time-HiRes                                           x86_64                                    4:1.9725-3.el7                                           base                                        45 k
 perl-Time-Local                                           noarch                                    1.2300-2.el7                                             base                                        24 k
 perl-constant                                             noarch                                    1.27-2.el7                                               base                                        19 k
 perl-libs                                                 x86_64                                    4:5.16.3-295.el7                                         base                                       689 k
 perl-macros                                               x86_64                                    4:5.16.3-295.el7                                         base                                        44 k
 perl-parent                                               noarch                                    1:0.225-244.el7                                          base                                        12 k
 perl-podlators                                            noarch                                    2.5.1-3.el7                                              base                                       112 k
 perl-threads                                              x86_64                                    1.87-4.el7                                               base                                        49 k
 perl-threads-shared                                       x86_64                                    1.43-6.el7                                               base                                        39 k

Transaction Summary
===============================================================================================================================================================================================================
Install  2 Packages (+28 Dependent packages)

Total download size: 26 M
Is this ok [y/d/N]:y

(생략)

Dependency Installed:
  MariaDB-common.x86_64 0:10.4.12-1.el7.centos perl.x86_64 4:5.16.3-295.el7           perl-Carp.noarch 0:1.26-244.el7         perl-Encode.x86_64 0:2.51-7.el7          perl-Exporter.noarch 0:5.68-3.el7
  perl-File-Path.noarch 0:2.09-2.el7           perl-File-Temp.noarch 0:0.23.01-3.el7  perl-Filter.x86_64 0:1.49-3.el7         perl-Getopt-Long.noarch 0:2.40-3.el7     perl-HTTP-Tiny.noarch 0:0.033-3.el7
  perl-PathTools.x86_64 0:3.40-5.el7           perl-Pod-Escapes.noarch 1:1.04-295.el7 perl-Pod-Perldoc.noarch 0:3.20-4.el7    perl-Pod-Simple.noarch 1:3.28-4.el7      perl-Pod-Usage.noarch 0:1.63-3.el7
  perl-Scalar-List-Utils.x86_64 0:1.27-248.el7 perl-Socket.x86_64 0:2.010-5.el7       perl-Storable.x86_64 0:2.45-3.el7       perl-Text-ParseWords.noarch 0:3.29-4.el7 perl-Time-HiRes.x86_64 4:1.9725-3.el7
  perl-Time-Local.noarch 0:1.2300-2.el7        perl-constant.noarch 0:1.27-2.el7      perl-libs.x86_64 4:5.16.3-295.el7       perl-macros.x86_64 4:5.16.3-295.el7      perl-parent.noarch 1:0.225-244.el7
  perl-podlators.noarch 0:2.5.1-3.el7          perl-threads.x86_64 0:1.87-4.el7       perl-threads-shared.x86_64 0:1.43-6.el7

Replaced:
  mariadb-libs.x86_64 1:5.5.64-1.el7

Complete!

 

3. mariadb 실행 및 기동확인

- 'system start mariadb' 명령어를 통해 mariadb 실행

[root@localhost ~]# systemctl start mariadb

- 'netstat -antp | grep 3306' 명령어를 통해 서비스 기동확인   #mariadb는 기본적으로 3306포트를 사용함

[root@localhost ~]# netstat -antp | grep 3306
tcp6       0      0 :::3306                 :::*                    LISTEN      2520/mysqld

 

4. mariadb 접속

- 'mysql -uroot' 명령어를 통해 mariadb  접근   #mariadb는 mysql과 동일한 소스코드 기반 db로서 로그인시에도 mysql 명령어를 사용함

[root@localhost ~]# mysql -uroot
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 11
Server version: 10.4.12-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

 

5.os 재시작 시에도 기동되도록 설정

- 'systemctl enable mariadb' 명령어를 통해 os가 재기동되더라도 서비스가 항시 기동되도록 설정

[root@localhost ~]# systemctl enable mariadb
Created symlink from /etc/systemd/system/mysql.service to /usr/lib/systemd/system/mariadb.service.
Created symlink from /etc/systemd/system/mysqld.service to /usr/lib/systemd/system/mariadb.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.

- 'systemctl is-enabled mariadb' 명령어를 통해 등록된것 확인

[root@localhost ~]# systemctl is-enabled mariadb
enabled

 

mariadb 설치 및 기동방법에대하여 간단하게 설명하였으며

계정의 추가,수정이나 데이터베이스,테이블 생성과 같은 운영방법에대해서는 다른글에서 다루도록함

-사전준비-

버추얼박스

centos7 이미지

 

 

1.설치 시작화면에서 'Install CentOS7'선택 후 엔터

 

 

2.언어 선택화면에서 '한국어' 선택 후 '계속 진행'

 

 

3.설치 옵션 선택화면으로 '시스템' - '설치 대상' 클릭

 

 

4.현재 서버에 구성되어 있는 디스크 선택후 '완료' 클릭

#파티션을 별도로 나누고 싶을시에는 '기타 저장소 옵션'에서 '파티션을 설정합니다'옵션 선택

 

 

5.'4'와 같이 디스크 선택 후 이전 설치옵션 화면에서 '설치 시작'버튼을 클릭하면 이와같은 화면이 보이며 'ROOT암호' 클릭

 

 

6.'root'계정 암호 설정 화면으로 임의값 설정 후 '완료'

 

 

7.설치 완료시 아래와 같이 화면이 표시되며 '재부팅'클릭하여 서버 재부팅 진행

 

 

8.설치 완료 후 로그인 확인

-사전준비-

버추얼박스

Centos6 이미지

 

 

1.설치 시작화면에서 가장 첫줄 'Install or upgrade an existing system' 선택 후 엔터

 

 

2.설치전에 테스트를 할건지 물어보는데 안할거니까 'skip' 선택 후 엔터

 

 

3.'next'선택 후 엔터

 

 

4.사용할 언어 선택하는 화면으로 'korean(한국어)'선택 후 'next'

 

 

5.사용할 키보드 선택하는 화면으로 기본 키보드인 'U.S. 영어'선택 후 '다음(N)'

 

 

6. 저장 장치 고르는 화면(DISK)로 '기본 저장 장치' 선택 이후 '다음(N)'

 

 

7.현재 OS를 설치할 디스크 포맷이 필요하므로 '예,모든 데이터를 삭제합니다'선택

 

 

8.서버의 hostname 설정하는 화면으로 임의값 지정

 

 

9.서버 시간설정으로 '아시아/서울' 선택

 

 

10.서버에 생성되는 관리자계정(root) 패스워드 설정하는 화면으로 임의값 설정

#단순한 암호선택시 추측하기 쉬운암호라는 경고창뜨나 '어쨌든 사용' 선택시 사용됨

 

 

11.디스크 파티션을 설정할 수 있는 화면으로 임의지정시 '사용자 레이아웃 만들기' 선택하면되나

자동으로 설정되도록 '모든 공간 사용'으로 선택

 

 

12.'모든 공간 사용' 선택시 나오는 화면으로 바로 '다음' 선택

 

 

13.파티션 포맷하는 화면으로 '포맷'클릭

 

 

14.'디스크에 변경사항 기록' 클릭

 

 

15.부트로더 선택 화면으로 기본값 그대로 '다음' 클릭

 

 

16.설치모드 설정하는 화면으로 아래와 같이 구성되어 있음

일반적으로

Desktop - 서버 + GUI화면구성

Basic Server - 베이직 서버 (가장기본적인 서버구성)

Minimal - 최소설치서버 (최소한의 필요구성만 포함)

이렇게 세가지로 설치하는 경우가 많으며

원하는 구성으로 선택 후 '다음' 클릭

 

 

17.설치 로딩화면

 

 

18.설치 완료 후 로그인 확인

 

 

 

+ Recent posts