标签归档:Linux

Linux tar命令详解

tar 文件是几个文件和(或)目录在一个文件中的集合。这是创建备份和归档的佳径。
tar 使用的选项有:
-c — 创建一个新归档。
-f — 当与 -c 选项一起使用时,创建的 tar 文件使用该选项指定的文件名;当与 -x 选项一起使用时,则解除该选项指定的归档。
-t — 显示包括在 tar 文件中的文件列表。

-v — 显示文件的归档进度。

-x — 从归档中抽取文件。

-z — 使用 gzip 来压缩 tar 文件。

-j — 使用 bzip2 来压缩 tar 文件。

要创建一个 tar 文件,键入:

tar -cvf filename.tar directory/file

可以使用 tar 命令同时处理多个文件和目录,方法是将它们逐一列出,并用空格间隔:

tar -cvf filename.tar /home/mine/work /home/mine/school

上面的命令把 /home/mine 目录下的 work 和 school 子目录内的所有文件都放入当前
目录中一个叫做 filename.tar 的新文件里。
继续阅读

CentOS下Yum安装Nginx

最近弄了个VPS,后台安装好centos后用SSH登入。
首先查看下是否安装了yum,没有yum可自行安装,网上有的是文章这里不重复了。接着安装EPEL,在命令行敲入:
shell>rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm 回车即可。
shell>yum update #更新。
shell>yum install gcc  gcc-c++
接 下来是安装mysql,我安装的版本是5.1的,据官方介绍5.1版本的性能提升了20%,不管数字是真是假,反正有提升就是了。安装可以选择二进制方式 安装,也可以选择源代码 方式安装。官方推荐二进制方式安装,原因是二进制方式用了许多优化措施,可提供较高的负载。下面分别介绍两种方式的安装方法:
二进制方式:首先要知道自己的cpu架构,下载相应的安装包。我用的是x86 (non RPM packages),32位的,比较通用。
我的vps地址在美国所以选择美国的下载地址
shell>wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.34-linux-i686-glibc23.tar.gz/from/http://mysql.mirror.redwire.net/
shell>tar xzvf mysql-5.1.34-linux-i686-glibc23.tar.gz
shell>mv  mysql-5.1.34-linux-i686-glibc23  mysql
shell>groupadd mysql
shell>useradd   -g mysql mysql
shell>cd mysql 继续阅读

CentOS常用命令

俗话说常在河边走,那有不湿鞋的?玩LNMP不懂SSH怎玩?链上SSH,不懂linux的命令也没得玩。你说有木有?有木有?照着一个一个敲进来执行,早晚要出问题害死人。我现在就是这半吊子。网上收集来下面这些常用命令。现在恶补中。

目录操作:
rm -rf mydir /*删除mydir目录*/
cd mydir /*进入mydir目录*/
cd – /*回上一级目录*/
cd .. /*回父目录,中间有空格*/
cd ~ /*回根目录*/
mv tools tool /*把tools目录改名为tool */
ln -s tool bac /*给tool目录创建名为bac的符号链接,最熟悉的应该就是FTP中www链接到public_html目录了*/
cp -a tool /home/vpser/www /*把tool目录下所有文件复制到www目录下 */

文件操作:
rm go.tar /* 删除go.tar文件 */
find mt.cgi /* 查找文件名为mt.cgi的文件 */
df –h /* 查看磁盘剩余空间,好像没这个必要,除非你太那个了 */

解压缩:
tar xvf wordpress.tar /* 解压tar格式的文件 */
tar -tvf myfile.tar /* 查看tar文件中包含的文件 */

继续阅读

CentOS 5.5使用yum来安装LAMP(php运行环境)

1. 换源,sohu的相当好用。
1.1备份CentOS-Base.repo
cd /etc/yum.repos.d/
cp CentOS-Base.repo CentOS-Base.repo.bak
1.2替换源
用vi打开CentOS-Base.repo,并将内容清空,然后将下面的内容复制进去,并保存。
# CentOS-Base.repo
#
# This file uses a new mirrorlist system developed by Lance Davis for CentOS.
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#
[base]
name=CentOS-$releasever – Base
baseurl=http://mirrors.sohu.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.sohu.com/centos/RPM-GPG-KEY-CentOS-5
#released updates
[updates]
name=CentOS-$releasever – Updates
baseurl=http://mirrors.sohu.com/centos/$releasever/updates/$basearch/
gpgcheck=1

继续阅读

CentOS 5 下快速安装配置 PPTP VPN 服务器

VPN的英文全称是”Virtual Private Network”,翻译过来就是”虚拟专用网络”。顾名思义,虚拟专用网络我们可以把它理解成是虚拟出来的企业内部专线。它可以通过特殊的加密的通讯协议 在连接在Internet上的位于不同地方的两个或多个企业内部网之间建立一条专有的通讯线路,就好比是架设了一条专线一样,但是它并不需要真正的去铺设 光缆之类的物理线路。这就好比去电信局申请专线,但是不用给铺设线路的费用,也不用购买路由器等硬件设备。VPN技术原是路由器具有的重要技术之一,目前 在交换机,防火墙设备或Windows等软件里也都支持VPN功能,一句话,VPN的核心就是在利用公共网络建立虚拟私有网。

虚拟 专 用网(VPN)被定义为通过一个公用网络(通常是因特网)建立一个临时的、安全的连接,是一条穿过混乱的公用网络的安全、稳定的隧道。虚拟专用网是对企业 内部网的扩展。虚拟专用网可以帮助远程用户、公司分支机构、商业伙伴及供应商同公司的内部网建立可信的安全连接,并保证数据的安全传输。虚拟专用网可用于 不断增长的移动用户的全球因特网接入,以实现安全连接;可用于实现企业网站之间安全通信的虚拟专用线路,用于经济有效地连接到商业伙伴和用户的安全外联网 虚拟专用网。

PPTP 全称为 Point to Point Tunneling Protocol — 点到点隧道协议,是VPN协议中的一种。
继续阅读

创建服务器普通用户(MySQL,FTP)

增加允许远程连接 MySQL 用户并授权
1)首先以 root 帐户登陆 MySQL
在 Windows 主机中点击开始菜单,运行,输入“cmd”,进入控制台,MySQL 的 bin 目录下,然后输入下面的命令。
在 Linux 主机中在命令提示行下输入下面的命令。
> MySQL -uroot -p123456
CODE: [COPY]
> MySQL -uroot -p123456
123456 为 root 用户的密码。
2)创建远程登陆用户并授权
> grant all PRIVILEGES on discuz.* to ted@’%’ identified by ‘123456’;
上面的语句表示将 discuz 数据库的所有权限授权给 ted 这个用户,允许 ted 用户在 %代表任何 IP 进行远程登陆,并设置 ted 用户的密码为 123456 。
下面逐一分析所有的参数:
all PRIVILEGES 表示赋予所有的权限给指定用户,这里也可以替换为赋予某一具体的权限,例如:select,insert,update,delete,create,drop 等,具体权限间用“,”半角逗号分隔。
discuz.* 表示上面的权限是针对于哪个表的,discuz 指的是数据库,后面的 * 表示对于所有的表,由此可以推理出:对于全部数据库的全部表授权为“*.*”,对于某一数据库的全部表授权为“数据库名.*”,对于某一数据库的某一表授 权为“数据库名.表名”。
ted 表示你要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的用户。
123.123.123.123 表示允许远程连接的 IP 地址,如果想不限制链接的 IP 则设置为“%”即可。
123456 为用户的密码。
执行了上面的语句后,再执行下面的语句,方可立即生效。
> flush privileges;
通过这两大步骤就能轻松开启MySQL数据库远程登陆帐号,从而很好的进行MySQL数据库远程登陆,希望上文中涉及到的内容能够帮助到大家。
继续阅读

Linux系统添加系统升级源

在Linux系统中系统的升级靠的是源地址的文件更新,与Windows不同的是Linux的系统更新源是可以随自己意愿更该的,这点值得 Windows学习.不过我的默认安装完了之后更新很慢,后来狂google,按照其方法在/etc/yum.conf里替换了一个国内的 ftp.sjtu.edu.cn,但是很慢很慢.例如http://centos.alt.ru/repository/ 这些都是.当然并不是仅仅CentOS或者RH之类有更新源,像Ubuntu系列也会有.不过在此我仅仅以CentOS列举.毕竟他是比较出色的服务器系统,而更重要的是我现在正在应用.

最 后发现这只是添加源的一种方法,而且现在网上基本上就说的这种的,其实centos5.1还支持另外一种,在 /etc/yum.repos.d里建上n个.repo的yum源文件,我从centos的官方镜像列表里发现了中国科大。下面给出我的文件,格式参照默 认的yum源,把他们拷贝到/etc/yum.repos.d里起个.repo的名就能用了,不用改/etc/yum.conf。忘了还有一步,记得先导 入key,我的文件开头有。我用这个update,400M,虚拟机运行的,25分钟就完了。

源都添加完了之后,再装个插件,yum install yum-fastestmirror -y,这个会自动选择快的那个源。

如果我在那个目录里放了很多源,怎么知道当前用的是那个呢?如果你没有改yum.conf,那么看/var/cache/yum/文件夹里的一个time开头的文件,就知道了。
#mirrors-shlug-org.repo
#
# rpm –import http://mirrors.shlug.org/centos/RPM-GPG-KEY-CentOS-5
#
# This file uses a new mirrorlist system developed by Lance Davis for CentOS.
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#
继续阅读

CentOS基础SVN搭建

1.安装
#yum install subversion
测试安装是否成功:
#svnserve –version     回车显示版本说明安装成功
2.配置
•建立版本库
#mkdir /var/www/svn          创建svn数据目录
#svnadmin create /var/www/svn /project        project 就是版本库的名字,可以改变!
•修改版本库配置,回车后会在库目录下生成配置文件
#vi / var/www/svn /web/conf/svnserve.conf            主配文件

[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = project
#vi /var/www/svn /web/conf/passwd         用户配置文件

[users]
user1 = password1
user2 = password2
#vi /opt/svndata/web/conf/authz            权限配置文件
继续阅读

Linux下Apache HTTP服务器与代理服务器的搭建

最近需要用到搭建WEB代理服务器的知识,来实现校内服务器代理我们上网的功能,这篇文章也算得上是一篇典型的文章了吧,转给大家看看`
Apache最为一个最为流行的开源服务器,一直以来在Web Server都占有很大的份额,领导着开源项目的发展。虽然在一些大型的商业电子商务与企业应用上没有什么优势(通常大型企业都是采用J2EE的服务器来最为其商业交易平台,比如Bea Application Server,IBM Websphere,JBoss Server等),但是作为静态网页的解释,代理服务器等方面仍然具有天然的优势,尤其最为开源项目,价格成本上更是得天独厚。同时在对J2EE的支持上,可以通过与其子项目Tomcat服务器(一定程度上支持了J2EE的规范,通常最为Servlet容器)的配合,来达到群集的目的,这方面的搭建请看http://blog.csdn.net/jwsh1984/中的Java与J2EE专栏里Tomcat群集的实现。这里我以Debian服务器下为例介绍如何搭建Web服务器和网络代理服务器。(Debian服务器的基础知识在我的Blog中的Unix/Linux专栏里面已经提到)。

(一)自定制服务器:
注意,开始之前必须掌握的知识:了解一些基本的Linux操作命令,或者会使用远程登陆(Windows下可以使用PuTTY远程登陆Debian服务器,在我的Blog中的Windows专栏里会提到)
首先到 官方主页 上下载Apache2.0的相关版本,这里下载的是源代码。Apache2.0具有很强的定制性,通过MPMs同时达到多平台的移植等,其伸缩性强等。下载源代码,我们可以根据自己的需求来定制服务器。
1、把代码包(xxx.gz)拷到/usr/src中,并解压到/usr/src下,通常是使用的命令为tar zxf *.gz 。(这一步不会的话请参考我的Blog下的Unix/Linux专栏下的文章--Linux服务器的相关搭建中的解压缩大全)。
2、编译并安装(需要装有make,gcc编译器),编译前最好参考一下Apache的官方手册,以定制自己的需求,下面是我自己的操作(转到解压之后的目录下):
1)编译前的平台配置: ./configure –prefix=/usr/apache2 –enable-mods-shared=all –enable-cache –enable-disk-cache   –enable-mem-cache –enable-proxy   –enable-proxy-connect   –enable-proxy-http –enable-proxy-ftp
2)编译: make    (这一步会编译根据你的设置产生的相关文件,也是在该目录下)
3)安装: make install (这一步会把编译之后的文件拷到/usr/apache2下面)
继续阅读

完美安装最新 CentOS + Nginx + PHP-FPM + MySQL

本文为 21andy.com 原创
PHP 5.3.1
MySQL 5.0.89
Nginx 0.8.33 或 0.7.65 (可选)
现在,我们可以快速全自动搞定 CentOS + Nginx + PHP-FPM + MySQL 的安装了
这个可比网上流传的什么一键安装包要好得多,强烈推荐此法安装,适合所有菜鸟和高手
我服务器上全用的源代码编译安装,也好不到哪去,还很费劲
我这个装完已经包含 php 的一些常用扩展, PDO,eaccelerator,memcache,tidy等等
先新建一个 repo

# vi /etc/yum.repos.d/centos.21andy.com.repo

放入如下内容

name=21Andy.com Packages for Enterprise Linux 5 – $basearch
baseurl=http://www.21andy.com/centos/5/$basearch/
enabled=1
gpgcheck=0
protect=1

继续阅读