RHEL/CentOS/SL 7.x/6.x-de MySQL maglumat bazasy bilen deňiz kenaryny (Howpsuz bulut ammary) gurmak


Deňiz kenary , Python-da faýl paýlaşmak we sinhronlamak goldawy, topar hyzmatdaşlygy we müşderi tarap şifrlemek arkaly gizlinligi goramak bilen ýazylan ösen açyk çeşme hyzmatdaş bulut saklaýyş programmasydyr. Majorhli esasy platformalarda (Linux, Raspberry Pi, Windows, Mac, iPhone we Android) işleýän müşderiler bilen sinhronlamak üçin köp platformaly faýl hökmünde gurulýar we LDAP we WebDAV ýaly ýerli hyzmatlar bilen aňsat birleşdirilip bilner ýa-da ösen ulanyp ýerleşdirilip bilner ulgam hyzmatlary we MySQL, SQLite, PostgreSQL, Memcached, Nginx ýa-da Apache Web Server ýaly maglumat bazalary.

Bu gollanma, MySQL maglumatlar bazasy bilen ýerleşdirilen, başlangyç init Deňiz serweri gurnamaga ädimme-ädim ýol görkezer. > Serweri deslapky deňiz porty (8000/TCP) we adaty HTTP amal porty (80/TCP) işletmek üçin skriptler, zerur portlary açmak üçin zerur Firewall düzgünlerini döredýär.

  1. Statiki IP adresi bilen Minimal CentOS 6.5 gurnama.
  2. MySQL/MariaDB maglumat bazasy
  3. Python 2.6.5+ ýa-da 2.7
  4. Python-setuptools
  5. Python-simplejson
  6. Python-şekillendiriş
  7. Python-mysqldb

Bu gurnama prosedurasy CentOS 6.4 64-bit ulgamynda synag edildi, ýöne init başlangyç skriptleriniň bir paýlanyşdan tapawutlydygyny kesgitlemek bilen beýleki Linux paýlanyşlarynda hem ulanylyp bilner. .

1-nji ädim: Python modullaryny guruň

1. Ilki bilen täzelenme ulgamyny ýerine ýetiriň, soňra aşakdaky buýruklary ulanyp ähli zerur Python modullaryny guruň.

# yum upgrade
# yum install python-imaging MySQL-python python-simplejson python-setuptools

2. Debian ýa-da Ubuntu serwerini ulansaňyz, Python modullarynyň hemmesini indiki buýruklar bilen guruň.

$ sudo apt-get update
$ sudo apt-get install python2.7 python-setuptools python-simplejson python-imaging python-mysqldb

2-nji ädim: Deňiz serwerini guruň

3. Python modullarynyň hemmesi gurlandan soň, Seafile serweriniň konfigurasiýasyny we öý bukjasyndaky ähli maglumatlary ýerleşdirmek üçin ulanyljak güýçli parol bilen täze ulgam ulanyjysyny dörediň, soňra döredilen täze ulanyjy hasabyna geçiň.

# adduser seafile
# passwd seafile
# su - seafile

4. Soňra MySQL maglumatlar bazasyna giriň we üç sany maglumat bazasyny dörediň, her deňiz serweri komponentleri üçin biri: ccnet serweri , deňiz serweri we deňiz kenary ähli maglumat bazalary üçin ulanyjy.

$ mysql -u root -p

mysql> create database `ccnet-db`;
mysql> create database `seafile-db`;
mysql> create database `seahub-db`;
mysql> create user 'seafile'@'localhost' identified by 'password';
mysql> GRANT ALL PRIVILEGES ON `ccnet-db`.* to `seafile`@`localhost`;
mysql> GRANT ALL PRIVILEGES ON `seafile-db`.* to `seafile`@`localhost`;
mysql> GRANT ALL PRIVILEGES ON `seahub-db`.* to `seafile`@`localhost`;
mysql> FLUSH PRIVILEGES;
mysql> exit;

5. Indi Deňiz serweri göçürip almagyň wagty geldi. Deňiz kenaryndaky resmi göçürip alyş sahypasyna giriň we wget buýrugyny ulanyp, serwer arhitekturasy üçin iň soňky .Tar Linux arhiw goýberilişini alyň, soňra ony öň döredilen deňiz deňiz ulanyjysyna çykaryň we Seafile giriň çykarylan katalog.

$ wget https://bitbucket.org/haiwen/seafile/downloads/seafile-server_3.0.4_x86-64.tar.gz
$ tar xfz seafile-server_3.0.4_x86-64.tar.gz
$ cd seafile-server_3.0.4/

6. MySQL maglumat bazasyny ulanyp, Deňiz serwerini gurmak üçin setup-seafile-mysql.sh başlangyç skriptini işlediň we skript ähli Python zerur modullarynyň bardygyny barlandan soň aşakdaky konfigurasiýa opsiýalaryny ulanyp ähli soraglara jogap beriň.

$ ./setup-seafile-mysql.sh

  1. Serweriňiziň ady näme?= düşündirişli at saýlaň (boş ýerlere rugsat berilmeýär).
  2. Serweriň IP ýa-da domeni näme?=serweriňize IP adresi ýa-da dogry domen adyňyzy giriziň.
  3. ccnet serweri üçin haýsy porty ulanmak isleýärsiňiz?=basyň [ Enter ] - ony asyl goýuň - 10001 .
  4. Deňiz maglumatlaryny nirede goýmak isleýärsiňiz?=basyň [ Enter ] - deslapky ýer siziň $HOME/deňiz maglumatlary-maglumat katalogyňyz bolar.
  5. Deňiz serweri üçin haýsy porty ulanmak isleýärsiňiz?=basyň [ Enter ] - asyl goýuň - 12001 .

  1. httpserver deňiz kenary üçin haýsy porty ulanmak isleýärsiňiz?=basyň [ Enter ] - asyl goýuň - 8082 .
  2. Deňiz maglumat bazalaryny işe girizmegiň usulyny saýlaň:= 1 saýlaň we MySQL kepilnamalaryny beriň: localhost, 3306 we kök paroly.
  3. Deňiz faýlyny ulanýan MySQL ulanyjynyň adyny giriziň:=deňiz faýly (başga ulanyjy adyny döreden bolsaňyz, şol ulanyjy adyny giriziň) we deňiz faýly MySQL ulanyjy parolyny giriziň.
  4. Ccnet-serwerde, deňiz-serwerde we deňiz bazasynyň maglumat bazalarynda diňe [ Enter ] düwmesine basyň - default.

Seafile Server üstünlikli gurandan soň, daşarky birikmä rugsat bermek üçin Firewall-da haýsy portlaryň açylmalydygy we serweri başlamak üçin haýsy skriptleri ulanmalydygy ýaly käbir peýdaly maglumatlary döreder.

3-nji ädim: “Firewall” -y açyň we “Seafile init” skriptini dörediň

7. Synag üçin ýerli skriptden Seafile serwerini başlamazdan ozal kök hasaby üýtgediň we /etc/sysconfig/ iptables firewall faýl konfigurasiýasyny açyň. b> ulgam ýoly we ilki REJECT setirinden öň aşakdaky setir düzgünlerini goşuň, täze düzgünleri ulanmak üçin iptables-i täzeden açyň.

$ su - root
# nano /etc/sysconfig/iptables

Aşakdaky düzgünleri goşuň.

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8000 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8082 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10001 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 12001 -j ACCEPT

Aşakdaky buýrugy ulanyp düzgünleri ulanmak üçin iptables-i täzeden açyň.

# service iptables restart

ÜNS BERI .: Gurmak prosesinde deňiz deňziniň standart portlaryny üýtgeden bolsaňyz, Firewall iptables düzgünleriňizi şoňa görä täzeläň.

8. Indi deňiz serwerini synagdan geçirmegiň wagty geldi. Deňiz ulanyjysyna we deňiz-serwer bukjasyna geçiň we seafile.sh we seahub.sh skriptleri ulanyp serweri işe giriziň.

Ilkinji gezek seahub.sh skriptini başlanyňyzda, e-poçta salgyňyzy ulanyp, deňiz serweri üçin administratiw hasap dörediň we administrator hasaby üçin berk parol saýlaň, esasanam bu konfigurasiýany önümçilik gurşawynda ulanýan bolsaňyz.

# su - seafile
$ cd seafile-server-latest/
$ ./seafile.sh start
$ ./seahub.sh start

9. Serwer üstünlikli işe başlansoň, brauzer açyň we HTTP protokolyny ulanyp, 8000 portdaky serweriňiziň IP adresine ýa-da domen adyna geçiň, soňra ýokardaky ädimde döredilen administrator hasabyňyzy ulanyp giriň.

http://system_IP:8000

OR 

http://domain_name:8000

10. Ilkinji konfigurasiýa synaglaryndan soň, deňiz serwerini duruzyň we beýleki Linux ulgamy daemon amallary ýaly ähli prosesi has aňsat dolandyrmaga kömek etjek init skriptini dörediň.

$ ./seafile.sh stop
$ ./seahub.sh stop
$ su - root
# nano /etc/init.d/seafile

Bu init skriptine aşakdaky mazmuny goşuň - Seafile beýleki ulgam ulanyjysynda gurlan bolsa, ulanyjyny we ýollary su - $USER -c setirlerinde täzeläň.

#!/bin/sh
#chkconfig: 345 99 10
#description: Seafile auto start-stop script.

# source function library
. /etc/rc.d/init.d/functions

start() {
        echo "Starting Seafile server..."
su - seafile -c "seafile-server-latest/seafile.sh start"
su - seafile -c "seafile-server-latest/seahub.sh start"
}

stop() {
        echo "Stopping Seafile process..."
su - seafile -c "seafile-server-latest/seafile.sh stop"
su - seafile -c "seafile-server-latest/seahub.sh stop"
}

restart() {
        echo "Stopping Seafile process..."
su - seafile -c "seafile-server-latest/seafile.sh stop"
su - seafile -c "seafile-server-latest/seahub.sh stop"

         echo "Starting Seafile server..."
su - seafile -c "seafile-server-latest/seafile.sh start"
su - seafile -c "seafile-server-latest/seahub.sh start"
}

case "$1" in
    start)
       start
        ;;
    stop)
       stop
        ;;
    restart)
       restart
        ;;
        *)
      echo "Usage: $0 start stop restart"
        ;;
esac

11. init faýly döredilenden soň, ýerine ýetiriş rugsatlarynyň bardygyna göz ýetiriň we başlangyç , durmak we täzeden başlamak ulanyp, amaly dolandyryň. wyklýuçateller. Indi chkconfig buýrugyny ulanyp, ulgam işe başlanda deňiz hyzmatyny goşup bilersiňiz.

# chmod +x /etc/init.d/seafile
# service seafile start 
# service seafile stop 
# service seafile restart
# chkconfig seafile on | off
# chkconfig --list seafile

12. Adaty tertipde deňiz serweri web amallary üçin 8000 / TCP HTTP portuny ulanýar. Deňiz serwerine adaty HTTP portundaky brauzerden girmek isleseňiz, 80 portda serweri başlaýan aşakdaky init skriptini ulanyň (aşakdaky portlarda hyzmat başlamagyňyzy unutmaň) b> 1024 kök artykmaçlyklaryny talap edýär).

# nano /etc/init.d/seafile

Adaty HTTP portunda deňiz kenaryny başlamak üçin şu init skriptine aşakdaky mazmuny goşuň. “Seafile” beýleki ulgam ulanyjysynda gurlan bolsa, su - $USER -c we $HOME setirlerinde ulanyjyny we ýollary täzeläň.

#!/bin/sh
#chkconfig: 345 99 10
#description: Seafile auto start-stop script.

# source function library
. /etc/rc.d/init.d/functions

start() {
                echo "Starting Seafile server..."
su - seafile -c "seafile-server-latest/seafile.sh start"
                ## Start on port default 80 http port ##
/home/seafile/seafile-server-latest/seahub.sh start 80
}

stop() {
                echo "Stopping Seafile process..."
su - seafile -c "seafile-server-latest/seafile.sh stop"
/home/seafile/seafile-server-latest/seahub.sh stop
}

restart() {
      echo "Stopping Seafile process..."
su - seafile -c "seafile-server-latest/seafile.sh stop"
/home/seafile/seafile-server-latest/seahub.sh stop
                 echo "Starting Seafile server..."
su - seafile -c "seafile-server-latest/seafile.sh start"
/home/seafile/seafile-server-latest/seahub.sh start 80
}

case "$1" in
    start)
       start
        ;;
    stop)
       stop
        ;;
     restart)
       restart
        ;;
                *)
        echo "Usage: $0 start stop restart"
        ;;
Esac

13. Öň deňiz kenaryny 8000 portunda başlasaňyz, ähli amallaryň öldürilendigine göz ýetiriň, serweri 80-nji portda başlaň.

# chmod +x /etc/init.d/seafile
# service seafile start | stop | restart

Brauzeri açyň we ony aşakdaky adrese gönükdiriň.

http://system_ip 

OR

http://domain_name.tld

14. Şeýle hem, deňiz portunyň netstat buýrugy bilen haýsy portlarda işleýändigini barlap bilersiňiz.

# netstat -tlpn

Bu! Deňiz kenary, köpçülikleýin Dropbox , Owncloud , Pydio , OneDrive we ş.m. ýaly beýleki bulut hyzmatdaşlygy we faýl sinhron platformalaryny bagtly çalşyp biler. has oňat toparlaýyn işlemek we ulanyjy giňişliginde ösen howpsuzlyk bilen ammaryňyza doly gözegçilik etmek üçin döredilen Guramaňyzda.

Upcomingakynda çykjak makalamda, “Seafile” müşderisini Linux we Windows ulgamlaryna nädip gurmalydygyny, şeýle hem “Seafile Server” -e nädip birikmelidigini görkezerin. Şoňa çenli Tecmint bilen habarlaşyň we gymmatly teswirleriňizi bermegi ýatdan çykarmaň.