August 13, 2016

using shell script to automate install VPS linux

Vì tính chất công việc, nên đôi khi mình phải setup khá nhiều VPS để dùng. Đặc biệt là các VPS linux, tuy nhiên chỉ cần setup Apache + PHP + mysql + phpMyAdmin là đủ cho 1 cuộc tình :smile:
Vì phải lặp đi lặp lại 1 mớ lệnh, mà mình thì cũng ko ưa terminal cho lắm :smile: nên đành viết cái bash để install. Tuy nhiên đời nó chả như mơ!

Chuẩn bị

VPS linux, mình toàn dùng CentOS 6 64bit
Bitvise tunnelier hoặc putty gì đấy tùy bạn

Viết bash

Đầu tiên cần liệt kê ra các câu lệnh sẽ phải dùng

yum update
echo y | yum install mysql mysql-devel mysql-server -y
/etc/init.d/mysqld start
/usr/bin/mysql_secure_installation
/etc/init.d/mysqld restart
echo y | yum install php-mbstring php-gd httpd-devel apxs php-mcrypt php-mysql pdo-mysql php-sqlite php-mcrypt php-soap
echo y | yum install php
service httpd restart
wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm
echo y | yum install php-mcrypt

cd //var/www/html
wget https://files.phpmyadmin.net/phpMyAdmin/4.0.10.15/phpMyAdmin-4.0.10.15-all-languages.zip
echo y | yum install unzip
unzip phpMyAdmin-4.0.10.15-all-languages.zip
rm -rf phpMyAdmin-4.0.10.15-all-languages.zip
Để viết 1 file bash cực kì đơn giản, save mớ lệnh đó vào notepad rồi lưu dưới đuôi .sh là xong.

Khoan đã

Nếu bạn dùng trên linux thì có một chương trình/lệnh giúp convert line-ending từ Windows -> Linux đó là dos2unix, bạn chỉ cần dos2unix bash_script.sh là được, tuy nhiên mình dùng Windows. Vấn đề gặp phải đó là kí tự cuối mỗi dòng.
Với windows, với mỗi cuối dòng thì windows sẽ lưu thêm /r, vô tình làm cho các câu lệnh có cái thực hiện được, có cái không được!
Vì thế mình phải chuyển cách lưu lại, ở đây mình dùng Sublime Text, bạn chỉnh như sau:

Sau đó chịu khó xóa xuống dòng, và enter lại hoặc dùng cách nào đó để chuyển lại cái Line Endings thành Unix là xong :smile:
Để kiểm tra đã thành công chưa, khi chạy file bash bạn thêm -x vào là được.
dùng sublime mình set "default_line_ending" là "unix" thì không phải lo lắng cái ngắt dòng nữa.Ngoài ra mình ưa thích dùng editorconfig cho tất cả các project

Cách dùng

Chắc ai cũng biết nhỉ :smile: nhưng cũng nói sơ qua
B1: Upload file bash này lên vps
B2: Dùng SSH Shell cd đến nơi chứa file
B3: nhập lệnh
bash setup.sh
hoặc để kiểm tra xem có còn /r không thì gõ
bash -x setup.sh

Xong!
Mình note lại để sau này có quên thì có cái mà dùng :smile:

nguồn: http://kipalog.com/posts/Viet-bash-install-VPS

0 comments:

Post a Comment