2013年10月1日 星期二

FTP伺服器-檔案傳輸的好幫手

檢查一下是不是已經有安裝vsftpd套件
[root@localhost ~]# rpm -qa | grep vsftpd
vsftpd-2.2.2-11.el6_4.1.x86_64

vsftpd安裝

[root@localhost ~]# yum install vsftpd -y

使用yum install會自動幫你安裝好,如果希望用tar方式來安裝的話可以至官網下載安裝

防火牆設定
[root@localhost ~]# setup




[root@localhost ~]# vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-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 21 -j ACCEPT

連接埠21預設為FTP協定的連接埠

最後重新啟動iptables跟vsftpd

[root@localhost ~]# service iptables restart
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Unloading modules:                               [  OK  ]
iptables: Applying firewall rules:                         [  OK  ]
iptables: Loading additional modules: nf_conntrack_ftp     [  OK  ]

[root@localhost ~]# service vsftpd restart
Shutting down vsftpd:                                      [  OK  ]
Starting vsftpd for vsftpd:                                [  OK  ]

P.S以上步驟都做完之後FTP應該是可以連線了

如果還沒辦法連上FTP的話,請查看SELinux有沒有關掉

[root@localhost ~]# vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=disabled   


2013年9月30日 星期一

Tomcat環境架設

確定自己主機上面有安裝JDK
[root@localhost ~]# rpm -qa | grep jdk
java-1.6.0-openjdk-devel-1.6.0.0-1.62.1.11.11.90.el6_4.x86_64
java-1.6.0-openjdk-1.6.0.0-1.62.1.11.11.90.el6_4.x86_64
這樣就是安裝成功

首先到TomCat的官方網站的Download中找一個想要安裝的版本

在tar.gz的連結上點右鍵"複製連結網址"

在/tmp下輸入
[root@localhost tmp]# wget http://apache.cdpa.nsysu.edu.tw/tomcat/tomcat-6/v6.0.37/bin/apache-tomcat-6.0.37.tar.gz

安裝完成後確認apache-tomcat-6.0.37.tar.gz安裝成功
[root@localhost tmp]# ll
total 6752
-rw-r--r--  1 root   root   6885442 May  3 17:08 apache-tomcat-6.0.37.tar.gz
drwxr-xr-x  2 root   root      4096 Sep 30 18:40 hsperfdata_root
drwxr-xr-x  2 tomcat tomcat    4096 Sep 30 18:27 hsperfdata_tomcat
drwx------  2 gdm    gdm       4096 Sep 30 17:37 orbit-gdm
drwxr-xr-x  3 root   root      4096 Sep 25 19:45 pear
drwx------. 2 paul   paul      4096 Sep 24 23:15 pulse-J18VqHlbaxSp
drwx------. 2 gdm    gdm       4096 Sep 30 17:36 pulse-LR5kuGNRh79s

把apache-tomcat-6.0.37.tar.gz解壓縮到/usr/local之下
[root@localhost tmp]# tar -zxvf apache-tomcat-6.0.37.tar.gz -C /usr/local/

將apache-tomcat-6.0.37.tar.gz改名
[root@localhost local]# mv apache-tomcat-6.0.37.tar.gz tomcat6

啟動Tomcat服務
[root@localhost local]# cd tomcat6/bin/
[root@localhost bin]# ll
total 668
-rw-r--r-- 1 root root  22709 Apr 29 17:36 bootstrap.jar
-rw-r--r-- 1 root root  11830 Apr 29 17:36 catalina.bat
-rwxr-xr-x 1 root root  17777 Apr 29 17:36 catalina.sh
-rw-r--r-- 1 root root   2374 Apr 29 17:36 catalina-tasks.xml
-rw-r--r-- 1 root root  24283 Apr 29 17:36 commons-daemon.jar
-rw-r--r-- 1 root root 204944 Apr 29 17:36 commons-daemon-native.tar.gz
-rw-r--r-- 1 root root   1342 Apr 29 17:36 cpappend.bat
-rw-r--r-- 1 root root   7513 Apr 29 17:36 daemon.sh
-rw-r--r-- 1 root root   2108 Apr 29 17:36 digest.bat
-rwxr-xr-x 1 root root   1689 Apr 29 17:36 digest.sh
-rw-r--r-- 1 root root   3150 Apr 29 17:36 setclasspath.bat
-rwxr-xr-x 1 root root   4236 Apr 29 17:36 setclasspath.sh
-rw-r--r-- 1 root root   2108 Apr 29 17:36 shutdown.bat
-rwxr-xr-x 1 root root   1628 Apr 29 17:36 shutdown.sh
-rw-r--r-- 1 root root   2109 Apr 29 17:36 startup.bat
-rwxr-xr-x 1 root root   2023 Apr 29 17:36 startup.sh
-rw-r--r-- 1 root root  32305 Apr 29 17:36 tomcat-juli.jar
-rw-r--r-- 1 root root 288166 Apr 29 17:36 tomcat-native.tar.gz
-rw-r--r-- 1 root root   3479 Apr 29 17:36 tool-wrapper.bat
-rwxr-xr-x 1 root root   3472 Apr 29 17:36 tool-wrapper.sh
-rw-r--r-- 1 root root   2113 Apr 29 17:36 version.bat
-rwxr-xr-x 1 root root   1632 Apr 29 17:36 version.sh
[root@localhost bin]# ./startup.sh
Using CATALINA_BASE:   /usr/local/tomcat6
Using CATALINA_HOME:   /usr/local/tomcat6
Using CATALINA_TMPDIR: /usr/local/tomcat6/temp
Using JRE_HOME:        /usr/lib/jvm/java-1.6.0
Using CLASSPATH:       /usr/local/tomcat6/bin/bootstrap.jar

防火牆設定(Linux下的服務啟動後都要來開防火牆)
[root@localhost ~]# vi /etc/sysconfig/iptables
 Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-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 8080 -j ACCEPT

測試是否有啟動
在自己的電腦的瀏覽器輸入URL [http:// 主機IP:8080]



mysql 資料庫

複製自Benjr.tw(因該站遷移,暫先把好文章收下來,若涉版權,請賜告,立刻移除
MySQL 資料庫 
因為 Drupal 會將資料儲存在 database 中,我們用 Linux 常使用的 MySQL 當成我們的資料庫系統.

啟動 MySQL

如果要開機時就啟動 MSQL ,使用下面這個指令,就會在每次開機時啟動 MySQL .
[root@benjr ~]# chkconfig mysqld on
當然我不希望現在再重開機所以直接用下面的指令將 MySQL 打開.
[root@benjr ~]# service mydqld start
Initializing MySQL database: [OK]
Starting MySQL: [OK]

建立資料庫號密碼

第一次啟動 MySQL 時他會先將我們的資料庫作一些初始化的動作,並在目錄 /var/lib/mysql 下建立相對應的資料.既然都啟動了,那先看看我們能不能連上 MySQL.
[root@benjr ~]# mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 4.1.20 Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> quit;
#跳出 MySQL shell的指令是 “quit” 或是 "exit".
Bye
如果你可以看到這個畫面那代表你的MySQL運作正常.不過MySQL 的密碼還沒設定,所以先將密碼設一下,要不然所有的人都可以隨意進入MySQL那是一件很可怕的事.還有剛剛我們使用的指令中的 root 是 MySQL 的使用者,和系統上的 root 是不一樣的帳號,這一點很多人剛開始會搞混,所以現在我們要為 MySQL 的 root 設定密碼.
[root@benjr ~]# mysqladmin -u root password '123456'
要設定密碼請使用指令 mysqladmin, -u 就是你的使用者,這邊的 root 是 MySQL 的 root 和系統上的 root 只是名稱相同,這邊修改任何密碼將不會改變 /etc/passwd 的任何東西.括號中的 'password' 就是妳輸入的密碼.這樣下次登入就要使用密碼才能登入.如果你不滿意剛剛輸入的密碼,要修改的話那要加入參數 –p
[root@benjr ~]# mysqladmin -u root –p password 'abcdef'
Enter Password:
這邊的 Enter Password 是剛剛第一次輸入的密碼,也就是123456,成功之後你的密碼就會變成abcdef.下次要再登入也就是用這個密碼.

開始建立資料庫

我們要為將來使用的 drupal 建立一個資料庫,方法很簡單只要下面幾個步驟,建立一個資料庫名稱為 drupal 以及使用者帳號,我這邊隨便用一個 drupaluser 為範例,你可以依據自己的喜歡來命名.
[root@benjr ~]# mysql -u root -p 
Enter password: 
#輸入MySQL 的 root 密碼,以剛剛的範例是 ‘abcdef’
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 4.1.20
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database drupal;
#這邊就是要建立 drupal專用的資料庫,create database資料庫名稱你可以依據自己的需求做改變,注意每個指令後面都要加上 ";" 
Query OK, 1 row affected (0.00 sec)
mysql> grant all privileges on drupal.* to drupaluser@localhost identified by 'your.password' ;
#將剛剛建立的 drupal 資料庫權限給 drupaluser 這個帳號!這邊的 ‘your.password’是指 drupaluser的密碼,你可以依據你的喜好作變更,但是要記住之後的 drupal 會用到, 因為是本機端所以用 @localhost 為連線,不要忘了指令後面都要加上 ";"
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> exit;
#大功告成,跳出來吧!!以後再也用不到了MySQL 的指令了.
Bye
試一下剛剛建立好的 drupal資料庫和使用者吧!!
[root@benjr ~]# mysql -u drupaluser -p 
Enter password:
#這邊要輸入的密碼是 drupaluser 的密碼,我剛剛設定的是 your.password.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6 to server version: 3.23.56
mysql> connect drupal;
#連線到 drupal 資料庫看一下.
Connection id: 7
Current database: drupal
#如果你可以用 drupaluser 連線到drupal 資料庫,那代表資料庫的連結沒有問題.可以開始進入安裝 Drupa 了.
mysql> show databases;
+-------------+
| Database |
+-------------+
| drupal      |
| mysql       |
| test           |
+-------------+
3 rows in set (0.00 sec)
#查詢目前所有已經建立的資料庫,mysql 和 test 是系統預設建立好的資料庫.

移除資料庫

這裡補充一下如果你不滿意剛剛建立好的資料庫,下面是移除資料庫的方法.
[root@benjr ~]# mysql -u root -p 
Enter password:  #輸入MySQL 的 root 密碼,以剛剛的範例是 ‘abcdef’ 
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 3.23.56
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> drop database drupal; 
#這樣就移除掉 drupal 資料庫移除掉之後就不見了千萬要三思ㄚ. 

修復資料庫

至於如何修復 mysql 的 datbase,參考下面的方法.
[root@benjr ~]# service mysqld stop
[root@benjr ~]# cd /var/lib/mysql/drupal
[root@benjr ~]# myisamchk –r *.MYI
更多有關於如何修復 mysql 的 datbase 請參考下面的網頁.
http://dev.mysql.com/doc/refman/4.1/en/repair.html

忘記密碼

至於忘記密碼的方式如下.
[root@benjr ~]# service mysqld stop
[root@benjr ~]# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
[root@benjr ~]# mysql -u root mysql

Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 3.23.56
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> update user set password=password('new password') where user='root';
mysql> flush privileges;
mysql> exit;
#接下來就可以用剛剛的密碼登入你的 mysql 了.
[root@benjr ~]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 4.1.20
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

於 CentOS 6 上安裝 Drupal 7

作業系統


  • 於 /etc/yum.conf 中設定 yum proxy ,使安裝套件速度加快:proxy=http://proxy.server.ip:port
  • 更新系統: yum update
  • 安裝 apache : yum install httpd
  • 安裝 php :yum -y install php php-pear php-mysql
  • 安裝 php extension :yum -y install php-xml php-gd  php-pdo php-mbstring
  • 安裝 uploadprogress:
    • yum -y install php-devel
    • yum -y install gcc
    • pecl channel-update pecl.php.net
    • pecl install uploadprogress
  • 安裝 mysql :yum -y install mysql-server

環境設定

允許使用者個人網站(編輯 /etc/httpd/conf/httpd.conf )

  1. 將 UserDir disabled 改成 Userdir enabled user1 user2 
  2. 將 <Directory /home/*/public_html> 至 </Directory> 的註解取消
  3. 設定 AllowOverride All    Options All 
  4. 重新啟動 web 服務: service httpd restart
  5. 設定開機啟動 web 服務: chkconfig httpd on

安裝 Drupal 7

  1. 下載 drupal 7 :wget http://ftp.drupal.org/files/projects/drupal-7.22.tar.gz。
  2. 解壓 : tar -zxvf drupal-7.22.tar.gz。
  3. 搬移至網站目錄: cp -ap druapl-7.22/* /home/drupaldir/public_html。
  4. 變更檔案權限:
    1. 將 sites/default/default.settings.php 複製並更名成 settings.php ,並設成可讀寫。
    2. 將 sites/default 設成可讀寫。
  5. 自瀏覽器輸入網址以執行安裝。
  6. 安裝完成後切記將步驟 4 之權限設回唯讀。

安裝 drush

    1. pear channel-discover pear.drush.org
    2. pear install drush/drush
    3. 注意:drush 必需在 drupal 根目錄下執行!

    安裝基本模組

    • drush dl l10n_update
    • drush dl backup_migrate
    • drush dl views
    • drush dl ctools
    • drush dl cck
    • drush dl panels
    • drush dl webform
    • drush dl smtp
    • drush dl date

    網站維護

    自動備份:
    刪除過期備份檔:find /tmp/ -type f -name "*.log" -mtime +1 -exec rm -rf {} \;