Linux 常见解压与压缩

Linux 压缩与解压命令

格式 解压 压缩
 
tar
(仅打包不压缩)
tar -xvf [原文件名].tar tar -cvf [目标文件名].tar [原文件名/目录名]
 
tar.bz2 bunzip2 [原文件名].tar.bz2 bzip2 [原文件名].tar
tar.bz2
(通过 tar 调用)
tar -jxvf [原文件名].tar.bz2 tar -jcvf [目标文件名].tar.bz2 [原文件名/目录名]
 
tar.gz gunzip [原文件名].tar.gz gzip [原文件名].tar
tar.gz
(通过 tar 调用)
tar -zxvf [原文件名].tar.gz tar -zcvf [目标文件名].tar.gz [原文件名/目录名]
 
tar.xz unxz [原文件名].tar.xz xz [原文件名].tar
tar.xz
(通过 tar 调用)
tar -Jxvf [原文件名].tar.xz tar -Jcvf [目标文件名].tar.xz [原文件名/目录名]
 
tar.Z
(已过时)
uncompress [原文件名].tar.Z compress [原文件名].tar
tar.Z
(通过 tar 调用)
tar -Zxvf [原文件名].tar.Z tar -Zcvf [目标文件名].tar.Z [原文件名/目录名]
 
7z 7z x [原文件名].7z 7z a [目标文件名].7z [原文件名/目录名]
 
jar jar -xvf [原文件名].jar jar -cvf [目标文件名].jar [原文件名/目录名]
 
zip unzip [原文件名].zip zip -r [目标文件名].zip [原文件名/目录名]

Linux开启启动脚本

Linux开机启动,启动 mysql,log,web service 等,将执行脚本的命令放置在 /etc/rc.d/rc.local 中,系统启动之后自动执行。

比如在 rc.local 增加一行 /web/server/nginx, 用于启动 nginx 服务。

Linux启动步骤

  1. 加载BIOS
  2. 读取MBR
  3. Boot Loader / Grup
  4. 加载内核
  5. 用户层init依据inittab文件来设定运行等级
  6. init进程执行rc.sysinit
  7. 启动内核模块
  8. 执行不同运行级别的脚本程序(/etc/rc.d/rc $RUNLEVEL # $RUNLEVEL为缺省的运行模式 )
  9. 执行/etc/rc.d/rc.local(初始化完成后执行 rc.local 中的命令)
  10. 执行/bin/login程序,进入登录状态

Linux安装SVN

使用 SVN 进行网站的发布工具。

在 Linux 上安装 SVN 步骤:

安装 SVN

# yum install subversion

创建 SVN 仓库

# cd /opt
# mkdir svn
# svnadmin create /opt/svn/web

通过上述命令在服务器 /opt/svn 目录下创建了一个仓库 web。接下来需要修改仓库的配置文件。

配置 SVN 仓库

# cd /opt/svn/web
# ls
conf db format hooks locks README.txt
# ls
authz passwd svnserve.conf

conf 目录下存放 SVN 仓库相关配置文件。

1、修改 authz 文件
authz 是 SVN 认证文件,vim 打开

[groups]
admin = svn_admin
[/]
@admin = rw

在 [groups] 下增加 admin,在文件末尾增加 [/],换行增加 @admin=rw。@ 紧跟着用户组,等号右侧是读写权限。

2、修改 passwd 文件

passwd 是 SVN 账号密码文件,vim 打开

[users]
svn_admin = svn_password

在 [users] 下增加 svn_admin,等号右侧是该账号的密码

3、修改 svnserve.conf 文件

svnserve.conf 是该 SVN 仓库运行配置,vim 打开

[general]
anon-access = read
auth-access = write
authz-db = /opt/svn/web/conf/authz
password-db = /opt/svn/web/conf/passwd

在 [general] 下增加访问控制和 authz-db、password-db 文件路径。

启动 SVN 仓库

# svnserve -d -r /opt/svn/web/

启动 SVN 仓库之后,SVN server 即创建完成。

检查仓库运行

# netstat -anp | grep svn
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 15019/svnserve

检查端口可以发现 SVN serve 已经运行在端口 3690。

通过 telnet 127.0.0.1 3690 连接该端口可以收到类似这样的信息 ( success ( 2 2 ( ) ( edit-pipeline svndiff1 absent-entries commit-revprops depth log-revprops partial-replay ) ) )。

通过 curl http://127.0.0.1:3690 可以收到类似这样的信息 ( success ( 2 2 ( ) ( edit-pipeline svndiff1 absent-entries commit-revprops depth log-revprops partial-replay ) ) ) 。

checkout 仓库

通过 SVN TortoiseSVN 客户端 checkout 仓库 svn://127.0.0.1 验证账户并登录就可以正常使用 SVN 了。进一步可以了解如何使用 https 访问 SVN 服务。

后续在 Linux 上部署 SVN 更新脚本即可实现 SVN 管理站点发布上线。

开机启动 SVN 服务

一般来说,Linux 服务器重启情况比较少。但为了方便,可以 SVN 服务添加到开机启动项中。

在文件 /etc/rc.local 中增加一行 /usr/bin/svnserve -d -r /opt/svn/web/

不使用 /etc/init.d/svnserver 启动 SVN 服务是因为该命令默认启动时没有携带 -r 参数,即默认没有指定仓库路径。