ホヌムサヌバヌ、たたは操䜜「沈黙」に関する別の話

こんにちは、habrayuzery

画像 遅かれ早かれ、すべおの開発者がテスト環境の問題に盎面するこずは確かです。 PCを24時間365日オンにしおおくのはあたり䟿利ではなく、目玉の実隓甚の゜フトりェアであふれさせるこずさえありたす。 䞀方、あなた自身の奜みに合ったホスティングを芋぀けるこずは、高䟡ではなくおも、簡単な䜜業でもありたせん。 どうする 解決策がありたす-自宅でサンドボックスを拡匵したす。 私が確信したように、これに぀いおは以䞋でさらに説明したすが、高䟡ではなく、䟿利で非垞に刺激的です。

免責事項 投皿はiceproのリク゚ストで公開されおいるため、 急いでカルマを私に倉曎するのではなく、招埅しお良い人を助けおください。 ここでは啓瀺や予期しない解決策を芋぀けるこずはできたせんが、この方法で行けば、必芁なものすべおを1か所で芋぀けるこずができたす。

事前に譊告したす蚘事1、匷く叩かないでください。

次に詳现を説明したす。 事前にひげを生やした管理者ずこのトピックのすべおの有胜な人、私の心を぀かむ、性亀し、マむナスを入れるために急いでください、私は勉匷しおいるだけで、管理を厳しく扱っおいないので、事前にお願いしたす。 しかし、初心者の方がLinuxのパスを2、3の手順で短瞮し、お互いを本圓に早く知り合えるこずを願っおいたす:)

たずめ

  1. 詰め物
  2. OS
  3. 開発環境
  4. バックアップ

詰め物


だから、アむデアがありたす、私たちはそれを実装し始めたす。 鉄を遞ぶ際の私にずっおの䞻な基準は、䟡栌、䜎消費電力、ノむズの欠劂でしたさもなければ、劻が私の砂堎をバルコニヌに、そしおおそらく私ず䞀緒に送るリスクがありたした:)。 これはすべお、タヌゲットフォヌムファクタヌがMiniITXであるこずを瀺しおいたす。
画像画像

オンラむンストアをさたよった埌、このマザヌボヌドを芋぀けたした Intel BOXD2500HN 。
Intel Atom D2500プロセッサヌ1.86 GHzに基づいおいたす。 私にずっおは、この力で十分でした。 ゚ネルギヌを消費-10ワット。 䟡栌は玄70ドルです。 パッシブ冷华-ノむズなし。 たた、自宅には2 GBのSO-DIMMメモリず半テラバむトのネゞがありたす。
事件に぀いお。 繰り返したすが、私はより少ないノむズを望んでいたので、遞択は倖郚電源の堎合に圓おはたりたした-DELUX E-2012 Black Mini-ITX
合蚈、唯䞀のクヌラヌ-40 mm、ハヌドドラむブの䞊にありたすたあ、定期的な堎所があったので、完党に完成させるこずにしたした。

OS


OSの遞択は長くはありたせんでした。 以前は、Ubuntuで䜜業する必芁があったため、遞択はその基盀であるDebianにかかっおいたした。 執筆時点では、最新バヌゞョンむンストヌル枈みは7.0-Wheezyでした。 オフサむトからダりンロヌドできたす。グラフィックシェルに応じおいく぀かのバリ゚ヌションがありたす。 裞のコン゜ヌルをむンストヌルするこずを敢えおしなかったため、提瀺されたオプションの䞭で最も軜量なLXDEを遞択したした。

すぐに予玄したす-Debianは゜フトりェアリポゞトリの豊富さに感銘を受けたした。 あなたはその䞭に䜕でも芋぀けるこずができたす。 目的のプログラムを名前で怜玢するには、次のコマンドを䜿甚したす。
sudo apt-cache search < ,   > 
むンストヌルのために私たちは実行したす
 sudo apt-get install < > 

本文の埌半で、゜フトりェアのむンストヌルに぀いお蚀及したすが、その方法はすでに知っおいたす。

Debianのむンストヌルは難しくありたせん。 むメヌゞをダりンロヌドしお、起動可胜なUSBフラッシュドラむブを䜜成したす LinuxLive USB Creatorが䜜成に圹立ちたす。 次に、そこから起動し、グラフィカルむンストヌラヌをオンにしたす簡単になりたす。 基本的に、むンストヌルはWindowsのむンストヌルに䌌おいたす[次ぞ]、[次ぞ]、[次ぞ]をクリックしたす。 しかし、ただいく぀かのポむントがありたす。
-マヌクアップ遞択ステップで、個々のセクションを遞択したす
-自動パヌティションりィザヌドで提案された構造が衚瀺されたら-同意しないで、RootFS「/」でもあるを少なくずも数ギガバむトに増やしたす珟圚512 MBあり、パヌティションを泚意深く監芖する必芁がありたす
-゜フトりェアの遞択はそのたたにしおおきたす「デスクトップ環境」ず「暙準システム」のダり、残りは埌で蚭定されたす
それでも段階的なむンストヌル支揎が必芁な堎合は、むンタヌネットでMaunalの「初心者向けDebian GNU_Linux䞊のWebサヌバヌ」を芋぀けるこずをお勧めしたす。

次に、システムのいく぀かの小さな調敎が行われたした。
  1. 須藀


    ナヌザヌがスヌパヌナヌザヌに代わっおコマンドを実行できるようにするには、そのナヌザヌをsudoerリストに远加する必芁がありたす。 構成の詳现は、䞊蚘の「1.2.1 sudoの基本セットアップ」セクションで説明したドキュメントに蚘茉されおいたす。
  2. リモヌトアクセス


    リモヌトでアクセスできるようにするために、私はsshのこずではなく、デスクトップ、぀たりVNCサヌバヌ-x11vncだけをむンストヌルしたした。
    セットアップは非垞に簡単です。最初に認蚌ファむルを生成したす。
     x11vnc -storepasswd <pass> <file> 

    そしお、VNCサヌバヌを自動ロヌドに远加したす/ etc / xdg / lxsession / LXDE / autostart
     @/usr/bin/x11vnc -dontdisconnect -display :0 -notruecolor -noxfixes -shared -forever -rfbport 5900 -bg -o /var/log/x11vnc.log -rfbauth /home/ice/.vnc/passwd 

  3. 自動ログむン


    マザヌボヌドは、電気が䞭断され再開された埌、その状態を埩元できたす。 ただし、モニタヌがサヌバヌに接続されおおらず、システムのステヌタスが衚瀺されおいない堎合、停電埌、再起動埌にログむン環境でグラフィカル環境がハングしたす。 この䞍䟿を解消するために、ナヌザヌに自動ログむン機胜を远加したす。このために、/ etc / lightdm / lightdm.confファむルに次の行を远加したす。
     autologin-user=ice autologin-user-timeout=0 

  4. ハヌドりェアモニタヌ


    機噚を远跡するこずは圹立ちたす
     lshw lshw-gtk 

    枩床監芖のために、lm-sensorsずhddtempを提䟛したした。
    チヌム
     sensors 
    利甚可胜なセンサヌからのMP情報を衚瀺したす。

    ナヌティリティを䜿甚する前に、すべおのセンサヌを怜出する必芁がありたす。これを実行する必芁がありたす。
     /usr/sbin/sensors-detect 

    チヌム
     hddtemp /dev/sda 
    ハヌドドラむブがりォヌムアップする枩床を瀺したす。

    最初は、枩床やその他のセンサヌをチェックするマニアがいたので、デヌタを収集しおログに蚘録する短いスクリプトを䜜成したした。
     #!/bin/bash echo '################## TIME ##################' date echo '################# UP TIME ################' uptime echo '################# MB TEMP ################' sensors echo '################ HDD TEMP ################' sudo hddtemp /dev/sda echo echo 

    次に、スクリプトを実行するスケゞュヌルを䜜成したすが、最初にスクリプトを実行する暩利を䞎えたす。
     visudo ice ALL=NOPASSWD: /home/ice/scripts/monitoring/temp.sh 
    そしお今、クロン
     sudo crontab -e -u ice */10 * * * * sudo /home/ice/scripts/monitoring/temp.sh >> /home/ice/scripts/monitoring/temp.log 2>&1 

    次のコマンドを䜿甚しお、起動が発生するこずを確認できたす。
     grep CRON /var/log/syslog 
    そしおもう1぀-ログが蓄積しないように、ロヌテヌションを蚭定したす。 これを行うには、Logrotateをむンストヌルしたす
     sudo apt-get install logrotate 

    次に、/ etc / logrotate.d /フォルダヌに構成ファむルを䜜成したす。 私はこのように芋えたす
     /home/ice/scripts/monitoring/temp.log { #    daily #   missingok #      rotate 30 #   30   compress #    delaycompress #       (..  *.log.1   ,  *.log.2   ) notifempty #     create 640 ice ice #            } 

  5. その他のささいなこず





開発環境


それで、今、最も興味深いのは、この小さな箱に詰め蟌むこずができたこずです。

ランプ | nginx | Node.js | MongoDB | Git | Java | Python | ルビヌ | .NET | ゞェンキンス

ランプ


はい、私は積極的なりェブ開発者であり、このプラットフォヌムがなくおも手がありたせん。 すべおが基本に蚭定されたす
 sudo apt-get update sudo apt-get upgrade sudo apt-get install apache2 apache2-doc php5 libapache2-mod-php5 php-pear sudo apt-get install mysql-server mysql-client php5-mysql sudo apt-get install php5-curl php5-gd php5-imagick php5-ldap php5-imap php5-memcache php5-common php5-mysql php5-ps php5-tidy imagemagick php5-xcache php5-xdebug php5-xmlrpc php5-xsl 
しかし、むンストヌル盎埌に倱敗したした-PHPファむルはApacheで凊理されたくありたせんでした。 これを修正するために、次の操䜜を行いたした。
 /etc/apache2$ sudo gedit apache2.con #     AddHandler application/x-httpd-php .php .php4 .php3 .html AddType application/x-httpd-php .html 

䟿利なphpデバッグのために、 xdebugをむンストヌルしお構成したした 。 むンストヌルの詳现に぀いおは、次のリンクを参照しおください。
-PHP開発甚のXdebugの構成/ Linux
-PhpStorm䞊のリモヌトXdebug

仮想ホストを䜜成するずき、それらをホストに登録するこずを忘れないでください

nginx


Apacheのパフォヌマンスを改善するには、apgin-backend、nginx-frontendのロヌルの配垃でnginxず組み合わせお䜿甚​​するこずをお勧めしたす。 このような構成を実行する方法は、蚘事-Nginxのむンストヌルず構成で説明されおいたす。 Nginxフロント゚ンド+ Apacheバック゚ンド。

Node.js


特に小さなクラむアント/サヌバヌアプリケヌションを䜜成するための優れたプラットフォヌム。 Web゜ケットだけでも䟡倀がありたす。 たあ、むンストヌルに戻りたす。 node.jsを眮くこずは少し簡単ですが、難しくはありたせん-本圓の意味で、぀たり゜ヌスから
 sudo apt-get install python g++ make checkinstall mkdir ~/src && cd $_ wget -N http://nodejs.org/dist/node-latest.tar.gz tar xzvf node-latest.tar.gz && cd node-v* #  "v"       ./configure checkinstall sudo dpkg -i node_* 

ここでむンストヌルに぀いおもう少し詳しく説明したす-Node.jsのむンストヌル

モンゎッド


NoSQLコミュニティに参加しおみたせんか そこでこの質問をしたした。 たあ、倚分私はNoSQLをきちんず䜿甚する぀もりはありたせんでしたが、それを感じるために-なぜですか
むンストヌル
 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10 echo 'deb http://downloads-distro.mongodb.org/repo/debian-sysvinit dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list sudo apt-get update sudo apt-get install mongodb-10gen 
...そしお実行
 sudo /etc/init.d/mongodb start 

Git


長い間、私はgithubに公開リポゞトリを残したいず思っおいたした。 そしお今、時が来たした。 Gitのむンストヌルは難しくなく、パッケヌゞリポゞトリではgitず呌ばれたすが、䟿利な䜜業のためにGitを構成するのはもう少し耇雑です。
-別のナヌザヌを䜜成する-git
-リポゞトリを管理するためのgioliteのむンストヌル

このビデオは、パテで生成されたキヌが無芖される状況を克服するのに圹立ちたした-Puttygenによっお生成されたRSA公開キヌによっお匕き起こされた「サヌバヌがキヌを拒吊したした」゚ラヌを修正する方法

次に、gioliteリポゞトリのクロヌンを䜜成したす-ssh//git@192.168.1.110/gitolite-admin.gitず出来䞊がり、担圓者を制埡したす。

次のリンクは、git + gitoliteのセットアップに圹立ちたした。
- サヌバヌのセットアップ。 Gitolite-Gitリポゞトリのホスティング
- れロから独自のgitサヌバヌ

ブラりザからのリポゞトリの䟿利な抂芁に぀いおは、gitwebを参照しおください。 むンストヌル方法はここで説明されおいたす-DebianでのGitwebのセットアップ 。
自分から远加したす
 usermod -a -G gitolite www-data 
apachずgitoliteが友達を䜜るように。

しかし、仮想ホストをセットアップする動䜜するたでさたざたな゜ヌスからビットごずに収集される
 <VirtualHost *:81> ServerAdmin webmaster@localhost ServerName git-web.loc SetEnv GITWEB_CONFIG /etc/gitweb.conf DocumentRoot /home/git/repositories Alias /static/gitweb.css /usr/share/gitweb/static/gitweb.css Alias /static/git-logo.png /usr/share/gitweb/static/git-logo.png Alias /static/git-favicon.png /usr/share/gitweb/static/git-favicon.png Alias /static/gitweb.js /usr/share/gitweb/static/gitweb.js Alias /git /home/git/repositories ScriptAlias /gitweb.cgi /usr/lib/cgi-bin/gitweb.cgi DirectoryIndex gitweb.cgi <Directory /home/git/repositories/> Allow from All Options +ExecCGI AllowOverride All AuthType Basic AuthName "Private Repository" AuthUserFile /home/ice/stuff/keys/.htpasswd-gitweb Require valid-user AddHandler cgi-script .cgi DirectoryIndex gitweb.cgi RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^.* /gitweb.cgi/$0 [L,PT] </Directory> SetEnv GIT_PROJECT_ROOT /home/git/repositories SetEnv GIT_HTTP_EXPORT_ALL ErrorLog ${APACHE_LOG_DIR}/git_web_error.log LogLevel warn CustomLog ${APACHE_LOG_DIR}/git_web_access.log combined </VirtualHost> 
味の基本的な蚱可は、無効にするこずができたす。


Java


Javaプラットフォヌムに移りたしょう。 最初のステップは、openjdkを削陀しおJava 7をむンストヌルするこずです
 sudo apt-get remove openjdk* su - #   java echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886 apt-get update #   Oracle software license echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections #  Oracle JDK7 apt-get install oracle-java7-installer #    root exit #   java  java -version 

䞊蚘で、次の゜フトりェアを远加したした。
-scalaサヌバヌで緎習しない理由を孊んでいたす
-glassfish-最も掻発に開発されたほずんどではないにしおもアプリケヌションサヌバヌの1぀
*ポヌト8080がビゞヌ状態であるためにGlassfishが起動しない堎合それが刀明したため、デフォルトのポヌトを倉曎したしょう。 これを行うには、GlassFish_Server \ glassfish \ domains \ domain1 \ configでポヌトを芋぀け、別のポヌトを蚭定したす。
<network-listener name="http-listener-1" port="8081" protocol="http-listener-1" thread-pool="http-thread-pool" transport="tcp"</network-listener>

Python


Pythonは次にdjangoを䜿甚したした。 リポゞトリからの取り出しは非垞に簡単です。 ここで䜿いやすさを確認できたす- 最初のDjangoアプリを曞く

ルビヌ


Pythonのように、フレヌムワヌクであるRailsでもカットを蚭定したす。 眮くのが少し難しいので、手順を説明したす。
 apt-get install build-essential libapache2-mod-passenger ruby rdoc ruby-dev libopenssl-ruby rubygems gem install fastthread gem install rails --version 3.0.4 
たた、$ PATHにレヌルを远加するこずを忘れないでください
PATH=".../var/lib/gems/VERSION/bin"
たあ、それを䜿甚するのず同じくらい簡単です-Railsを始めよう

内郚のニヌズのために、バグトラッカヌを展開するこずも決定され、 Redmineになりたした。
次のように配眮したす。
 #    aptitude install libmagickcode-dev aptitude install libmagickwand-dev aptitude install ruby1.9.1-dev aptitude install libmysqlclient-dev #    redmine cd /opt wget http://files.rubyforge.vm.bytemark.co.uk/redmine/redmine-2.3.1.tar.gz tar -zxvf redmine-2.3.1.tar.gz cd /var/www ln -s /redmine-2.3.1/public redmine chown -R www-data:www-data /opt/redmine-2.3.1 

mysqlクラむアントに移動しお、デヌタベヌスずナヌザヌを䜜成したす。
 CREATE DATABASE redmine_default CHARACTER SET utf8; CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my-password'; GRANT ALL PRIVILEGES ON redmine_default.* TO 'redmine'@'localhost'; 

デヌタベヌス構成を䜜成する
 cd /redmine-2.3.1/config cp database.yml.example database.yml vi database.yml 
そしおそれを埋める
 production: adapter: mysql2 database: redmine_default host: localhost username: redmine password: my-password encoding: utf8 

蚭定ファむルを䜜成したす。
 cd /redmine-2.3.1/config cp configuration.yml.example configuration.yml vi configuration.yml 
構成したす構成の利点はコメントでいっぱいです。
今ルビヌバンドルを入れお
 gem install bundler bundle install --without development test postgresql sqlite rake generate_secret_token bundle install 
デヌタベヌスを準備したす。
 RAILS_ENV=production rake db:migrate RAILS_ENV=production rake redmine:load_default_data 

このすべおの埌、Apacheで仮想ホストを構成する必芁があり、それを䜿甚できたす。

蚭定リポゞトリからコミットに関する情報を取埗するに぀いおは、ここで説明したす-Redmine蚭定 Cは、Cronを䜿甚しお、リポゞトリの自動ポヌリングを構成するオプションを遞択したした。

.NET


.NETプラットフォヌムに぀いお忘れないでください。 䞻なコンポヌネントは、モノラルプラットフォヌム自䜓であり、XSPASP.NETサヌバヌは次のようにむンストヌルされたす。
 sudo apt-get install mono-common mono-xsp4 

これで、.NETのほがすべおの機胜を利甚できるようになりたした。
詳现はこちら Debian for Mono 。

ゞェンキンス


そしお、このすべおがcrown冠されたす-CIサヌバヌ。 それをどのように配眮しお蚭定するかを芋おみたしょう... PHP
ゞェンキンスを入れたす
 sudo apt-get update sudo apt-get install php5-cli php5-xdebug php-pear ant git php -r 'echo "Xdebug loaded? "; echo (extension_loaded("xdebug")) ? "yes" : "no"; echo chr(10);' wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add - sudo bash -c "echo 'deb http://pkg.jenkins-ci.org/debian binary/' > /etc/apt/sources.list.d/jenkins.list" sudo apt-get update sudo apt-get install jenkins 

プラグむンを远加する
 wget http://localhost:8080/jnlpJars/jenkins-cli.jar java -jar jenkins-cli.jar -s http://localhost:8080 install-plugin checkstyle java -jar jenkins-cli.jar -s http://localhost:8080 install-plugin cloverphp java -jar jenkins-cli.jar -s http://localhost:8080 install-plugin dry java -jar jenkins-cli.jar -s http://localhost:8080 install-plugin htmlpublisher java -jar jenkins-cli.jar -s http://localhost:8080 install-plugin jdepend java -jar jenkins-cli.jar -s http://localhost:8080 install-plugin plot java -jar jenkins-cli.jar -s http://localhost:8080 install-plugin pmd java -jar jenkins-cli.jar -s http://localhost:8080 install-plugin violations java -jar jenkins-cli.jar -s http://localhost:8080 install-plugin xunit java -jar jenkins-cli.jar -s http://localhost:8080 install-plugin git java -jar jenkins-cli.jar -s http://localhost:8080 safe-restart 


PHPUnitず远加ツヌルをむンストヌルする
 sudo pear upgrade PEAR sudo pear channel-discover pear.pdepend.org sudo pear channel-discover pear.phpmd.org sudo pear channel-discover pear.phpunit.de sudo pear channel-discover components.ez.no sudo pear channel-discover pear.symfony-project.com sudo pear install pdepend/PHP_Depend sudo pear install phpmd/PHP_PMD sudo pear install phpunit/phpcpd sudo pear install phpunit/phploc sudo pear install PHPDocumentor sudo pear install PHP_CodeSniffer sudo pear install --alldeps phpunit/PHP_CodeBrowser sudo pear install --alldeps phpunit/PHPUnit 


構成
-http : //jenkins-php.org/から/build.xmlをダりンロヌドし、プロゞェクト甚に線集したす
-PMDルヌルhttp://phpmd.org/をダりンロヌドし、プロゞェクトに/build/phpmd.xmlずしお配眮したす
-オプションで、 http //pear.php.net/のルヌルを远加し、プロゞェクトに/build/phpcs.xmlずしお配眮できたす。
-/tests/phpunit.xmlでPHPUnitを構成したす
-タスクテンプレヌトをダりンロヌドする
 cd /var/lib/jenkins/jobs/ sudo git clone git://github.com/sebastianbergmann/php-jenkins-template.git php-template sudo chown -R jenkins:nogroup php-template/ sudo /etc/init.d/jenkins stop sudo /etc/init.d/jenkins start 
-テンプレヌトから新しいタスクを䜜成し、リポゞトリにバむンドしたすバヌゞョン管理システム甚のプラグむンを远加する必芁がある堎合がありたす。

バックアップ


機噚の故障を回避するこずは䞍可胜であるこずは明らかですが、デヌタのバックアップコピヌさらには新鮮なものがある堎合、この考えではたったく異なる感芚が生じたす。

プロセス自䜓は2぀のタむプに分けられたす。
-完了倚くの倉曎がシステムに枡され、それを保存する必芁があるず感じたずきに遞択的に行いたす
-郚分的毎日の倉曎の察象ずなるすべおのシステムノヌドデヌタベヌス、゜ヌスコヌドなど

remastersysスクリプトを䜿甚しお完党なダンプを収集しおいたす。
スクリプトを衚瀺
 #!/bin/bash #     start=`date +%s` echo '[FULL BACK UP Start]' DATE_NOW=`date +%F` echo '[FULL BACK UP Dump Creation]' #   sudo remastersys backup install-$DATE_NOW.iso echo '[FULL BACK UP Dump Saving]' #      sudo cp /home/remastersys/remastersys/install-$DATE_NOW.iso /home/backups/system-iso/install-$DATE_NOW.iso sudo cp /home/remastersys/remastersys/install-$DATE_NOW.iso.md5 /home/backups/system-iso/install-$DATE_NOW.iso.md5 echo '[FULL BACK UP Clean up]' #  tmp sudo remastersys clean echo '[FULL BACK UP End]' end=`date +%s` runtime=$((end-start)) echo 'Backup time =' $runtime 'sec(s)' 


郚分的なスクリプトは、cronで毎晩実行されたす。
スクリプトを衚瀺
 #!/bin/bash start=`date +%s` echo '[BACK UP Start]' DATE_PREF=`date +%F` echo '[BACK UP Config]' #     BACKUP_MYSQL_DIR=/home/backups/mysql/$DATE_PREF BACKUP_WWW_DIR=/home/backups/www/$DATE_PREF BACKUP_GIT_DIR=/home/backups/git/$DATE_PREF echo '[BACK UP Clean up]' #       find /home/backups/mysql/ -mtime +7 -print -mindepth 1 -delete >/dev/null 2>&1 find /home/backups/www/ -mtime +7 -print -mindepth 1 -delete >/dev/null 2>&1 find /home/backups/git/ -mtime +7 -print -mindepth 1 -delete >/dev/null 2>&1 echo '[BACK UP Not Clened Items]' ls /home/backups/mysql/ ls /home/backups/www/ ls /home/backups/git/ echo '[BACK UP Back Up Hosts]' #   tar cpzf $BACKUP_WWW_DIR\-www.tgz /home/www/ >/dev/null 2>&1 echo '[BACK UP Back Up Repositories]' #   tar cpzf $BACKUP_GIT_DIR\-git.tgz /home/git/ >/dev/null 2>&1 echo '[BACK UP Back Up MySQL]' #    mysqldump -q -u root -p<password> -h localhost tt_rss | gzip -c > $BACKUP_MYSQL_DIR\-tt_rss.sql.gz mysqldump -q -u root -p<password> -h localhost test | gzip -c > $BACKUP_MYSQL_DIR\-test.sql.gz mysqldump -q -u root -p<password> -h localhost redmine | gzip -c > $BACKUP_MYSQL_DIR\-redmine.sql.gz mysqldump -q -u root -p<password> -h localhost phpmyadmin | gzip -c > $BACKUP_MYSQL_DIR\-phpmyadmin.sql.gz mysqldump -q -u root -p<password> --skip-lock-tables -h localhost performance_schema | gzip -c > $BACKUP_MYSQL_DIR\-performance_schema.sql.gz mysqldump -q -u root -p<password> --skip-lock-tables -h localhost information_schema | gzip -c > $BACKUP_MYSQL_DIR\-information_schema.sql.gz mysqldump -q -u root -p<password> --events -h localhost mysql | gzip -c > $BACKUP_MYSQL_DIR\-mysql.sql.gz echo '[BACK UP New Items]' ls /home/backups/mysql/ | grep $DATE_PREF ls /home/backups/www/ | grep $DATE_PREF ls /home/backups/git/ | grep $DATE_PREF echo '[BACK UP End]' end=`date +%s` runtime=$((end-start)) echo 'Backup time =' $runtime 'sec(s)' echo '=========================================================' 

どうやら-私は最埌の7぀のコピヌを保持したす。


よろしくお願いしたす おもしろかったです

PS質問の堎合-私は助けおうれしいです。
PPSどうぞ、招埅しおください。

Source: https://habr.com/ru/post/J205120/


All Articles