freebsd 遇到的问题总结

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介:
freebsd遇到的问题?
1。reebsd里改变您用的Shell
 
 现/usr/local/bin/bash:NO such file or directory解决方法
登陆FreeBSD时出现/usr/local/bin/bash:NO such file or directory,是因为上回用root登陆时执行了
chsh -s /usr/local/bin/bash
又没安装bash,导致root用户无法登陆
解决方法:启动FreeBSD时选择4进入单用户模式,输入“boot -s”进入单用户的提示符“#”,依次键入如下命令:
fsck -p
mount -u /
mount -a -t ufs
swapon -a
chsh -s /bin/csh
完成!

 
改变您的Shell的最简单方法是使用 chsh 命令。 执行 chsh 将根据您设定的EDITOR 环境变量进入到那个编辑器,假如没有设定,就会进入vi编辑器。请改变“Shell:”这行对应值。

您可使用chsh 的-s选项,这样就能设置您的shell却又不用编辑器。假如您想把shell改为bash 可用下面的技巧。
% chsh -s /usr/local/bin/bash
注意: 您使用的shells必须 在/etc/shells 文件里列出。 假如您从 ports里装一个shell, 那就不用做这步了。假如您手工装一个shell,那就要手工添加进去。
举个例了子,假如您手工把 bash装到 /usr/local/bin里,您还要进行这一步:
# echo "/usr/local/bin/bash" >> /etc/shells
然后运行chsh。

2sshd的配置文件一般位于/etc/ssh/sshd_config。 
终端下:#ee /etc/ssh/sshd_config
---------------------------------------------
#Protocol 2,1
修改为:
Protocol 2
#ListenAddress 0.0.0.0
修改为:
ListenAddress 0.0.0.0
#PermitRootLogin yes
修改为
PermitRootLogin yes
(Linux上默认允许root用户登录,此处可不修改。)
修改完成后重启sshd:
/etc/rc.d/sshd restart
-------------------------------
现在即可ssh登陆.

 3安装unzip的方法是:
-->whereis unzip  查找port源
一般是/usr/ports/archivers/unzip
cd /usr/ports/archivers/unzip
make install clean
rehash    ---在不重启服务器的条件使安装了的命令生效
就可以用unzip命令了 。。
然后通过ftp上传PHPWind_GBK_5[1].3.zip
用unzip PHPWind_GBK_5[1].3.zip
在服务器上解压。。
 
4FreeBSD vi的使用
FreeBSD下的最基本编辑器为ee,ee编辑器是一种简单易用的编辑器,它在启动之后,将一些操作的组合热键放在了屏幕的上方,用户可以随时得到提示。而如果需要进行保存、退出等操作时,使用Esc键则可以激活菜单,进行相应的操作。Ee还是系统安装程序所使用的缺省编辑器。
另一种更为流行的编辑器是vi,vi是Unix下的一种标准编辑工具,几乎所有的Unix都支持这个编辑器,并将其作为基本配置。因此,对于一个Unix系统管理员来讲,掌握vi应该是基本功之一。
然而,由于vi是为了使用终端的使用者来设计的,就与习惯于使用个人计算机的用户的一些习惯有些矛盾,因此很多用户都抱怨讲vi是非常难用的一种编辑器,例如,打算使用箭头键移动光标,却有时成功,有时输入了一些乱七八糟的字符等等。
这些错误的原因是用户没有了解vi操作的一些基本原则,原则上,vi是为了只使用键盘进行输入的用户进行设计的,如果使用者的手总是在键盘、鼠标之间换来换去,在主键盘和小键盘之间换来换去,在主键盘和方向键之间换来换去,就很难认识到vi的魅力的。因此,对于达到了接近盲打层次的输入者,就会自然而然的认识到vi在输入方面的优势。
由于vi只使用主键盘,那么当需要控制vi的时候,就需要输入一些与普通输入过程不同的指令,在Windows编辑器中,是使用菜单,有些编辑器是使用组合键,而vi则使用一个不同的命令模式,允许用户输入控制指令。
因此,vi分为两个基本模式,一个为命令模式,另一个为编辑模式,当处于编辑模式的时候,不能做移动光标、删除字符等操作,而处于命令模式的时候,键盘输入的都是控制命令,当然包括使用”:”使用户能输入一系列的指令,例如使用”:w”保存文件,”:x”保存文件并退出系统,”:q”放弃保存文件并退出系统,等等。
使用Esc键使vi从编辑模式转换到命令模式,使用’i’、’A’等键盘命令使vi从命令模式转换到编辑模式。
设计vi的目的是仅仅利用基本键盘,不需要扩展键盘的帮助就能完成所有的基本操作,使用vi的时候不需要Ctrl、箭头等特殊的键,唯一需要的特殊键为Esc键,这对于一个熟悉键盘的输入者来讲,是非常友好的。当一个使用者使用’F’和’J’键上的特殊突起确定了手的位置之后,他的右手不需要移动的,他的左手只需要在按ESC键的是否略微离开一些标准的输入位置,使用者能很轻松的可以使用h,j,k,l来移动光标的位置,使用x删除自负,使用i转换到编辑模式,等等,由于不需要额外的移动,输入的效率事实上更高。
一个熟练的vi使用者是不需要将手离开基本键盘,去使用箭头键或鼠标进行操作的,个人计算机的标准101键盘对于熟悉键盘的操作人员来讲,明显是一种浪费。
以下是一些常用的vi指令例子:
在vi中按 u 是撤销上一次操作
Ctrl+R恢复到撤销操作之前的状态
bash 命令行的撤销修改:ESC + CTRL + R:D
Esc 返回命令状态,如果不清楚当前状态,最好使用这个键确保处于命令状态;
h 向左移动光标;
j 向上移动光标;
k 向下移动光标;
l 向右移动光标;
i 在当前位置上进入输入状态;
A 在行尾进入输入状态;
x 删除当前字符;
dd 删除当前行,并放入缓冲区;
d7d 删除7行并放入缓冲区,可以改变7为任意其他数字;
yy 复制当前行并放入缓冲区;
y17y 复制17行并放入缓冲区,可以改变17为任意其他数字;
p 将dd、yy等放在缓冲区的数据粘贴在下一行;
1G 跳到文件的第一行,0表示文件的末尾;
+10G 向前跳10行;
-10G 向后跳10行;
/somestring 向后搜索somestring;
?somestring 向前搜索somestring;
n 重复上次搜索动作;
:w 保存文件;
:w filename 保存当前编辑的文件到filename中;
:q 退出vi,如果文件已经改变则退出失败;
:q! 强制退出vi,不管文件是否被更改过,!用于强制vi执行操作;
 保存退出,相当于:wq;
:e filename,编辑另一个文件filename,如果放弃当前改变,使用!强制;
:% s/string1/string2/g 在整个文件范围内查找string1,用string2替换;
———————————–
vi指令大全
vi指令大全
进入vi的命令
============
vi filename: 打开或新建文件,并将光标置于第一行首
vi +n filename: 打开文件,并将光标置于第n行首
vi + filename: 打开文件,并将光标置于最后一行首
vi +/pattern filename: 打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename: 在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename….filename: 打开多个文件,依次进行编辑
移动光标类命令
==============
h: 光标左移一个字符
l: 光标右移一个字符
space: 光标右移一个字符
Backspace: 光标左移一个字符
k或Ctrl+p: 光标上移一行
j或Ctrl+n: 光标下移一行
Enter: 光标下移一行
w或W : 光标右移一个字至字首
b或B : 光标左移一个字至字首
e或E : 光标右移一个字至字尾
): 光标移至句尾
(: 光标移至句首
}: 光标移至段落开头
{: 光标移至段落结尾
nG: 光标移至第n行首
n+: 光标下移n行
n-: 光标上移n行
n$: 光标移至第n行尾
H: 光标移至屏幕顶行
M: 光标移至屏幕中间行
L: 光标移至屏幕最后行
0: 光标移至当前行首
$: 光标移至当前行尾
屏幕翻滚类命令
==============
Ctrl+u: 向文件首翻半屏
Ctrl+d: 向文件尾翻半屏
Ctrl+f: 向文件尾翻一屏
Ctrl+b: 向文件首翻一屏
nz: 将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
插入文本类命令
==============
i: 在光标前
I: 在当前行首
a: 光标后
A: 在当前行尾
o: 在当前行之下新开一行
O: 在当前行之上新开一行
r: 替换当前字符
R: 替换当前字符及其后的字符,直至按ESC键
s: 从当前光标位置处开始,以输入的文本替代指定数目的字符
S: 删除指定数目的行,并以所输入文本代替之
ncw或nCW: 修改指定数目的字
nCC: 修改指定数目的行
删除命令
========
ndw或ndW: 删除光标处开始及其后的n-1个字
do: 删至行首
d$: 删至行尾
ndd: 删除当前行及其后n-1行
x或X: 删除一个字符,x删除光标后的,而X删除光标前的
Ctrl+u: 删除输入方式下所输入的文本
搜索及替换命令
==============
/pattern: 从光标开始处向文件尾搜索pattern
?pattern: 从光标开始处向文件首搜索pattern
n: 在同一方向重复上一次搜索命令
N: 在反方向上重复上一次搜索命令
:s/p1/p2/g: 将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g: 将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g: 将文件中所有p1均用p2替换
选项设置
========
all: 列出所有选项设置情况
term: 设置终端类型
ignorance: 在搜索中忽略大小写
list: 显示制表位(Ctrl+I)和行尾标志($)
number: 显示行号
report: 显示由面向行的命令修改过的数目
terse: 显示简短的警告信息
warn: 在转到别的文件时若没保存当前文件则显示NO write信息
nomagic: 允许在搜索模式中,使用前面不带“\”的特殊字符
nowrapscan: 禁止vi在搜索到达文件两端时,又从另一端开始
mesg: 允许vi显示其他用户用write写到自己终端上的信息
最后行方式命令
==============
:n1,n2 co n3: 将n1行到n2行之间的内容拷贝到第n3行下
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下
:n1,n2 d: 将 n1行到n2行之间的内容删除
:w: 保存当前文件
:e filename: 打开文件filename进行编辑
 : 保存当前文件并退出
:q: 退出vi
:q!: 不保存文件并退出vi
:!command: 执行shell命令command
:n1,n2 w!command: 将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入
:r!command: 将命令command的输出结果放到当前行
寄存器操作
==========
“?nyy: 将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字
“?nyw: 将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字
“?nyl: 将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字
“?p: 取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字
ndd: 将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中
4在自己的freebsd虚拟机上安装webmin来管理自己的freebsd。
OS:FreeBSD 6.1-RELEASE
soft:webmin1.44
1.使用root登陆系统
下载webmin-1.441.tar.gz
# fetch [url]http://prdownloads.sourceforge.net/webadmin/webmin-1.441.tar.gz[/url]
下载后解压
#tar zxfv webmin-1.441.tar.gz
#cd webmin-1.441
#./setup.sh /usr/local/webmin
# ./setup.sh /usr/local/webmin
***********************************************************************
*            Welcome to the Webmin setup script, version 1.441        *
***********************************************************************
Webmin is a web-based interface that allows Unix-like operating
systems and common Unix services to be easily administered.
Installing Webmin from /usr/home/admin/webmin-1.441 to /usr/local/webmin ...
***********************************************************************
Webmin uses separate directories for configuration files and log files.
Unless you want to run multiple versions of Webmin at the same time
you can just accept the defaults.
Config file directory [/etc/webmin]: webmin的配置文件目录,我的webmin安装目录/usr/local/webmin
Log file directory [/var/webmin]:webmin的日记文件目录 
***********************************************************************
Webmin is written entirely in Perl. Please enter the full path to the
Perl 5 interpreter on your system.
Full path to perl (default /usr/bin/perl): perl的目录
Testing Perl ...
Perl seems to be installed ok
***********************************************************************
Operating system name:    FreeBSD
Operating system version: 6.1
***********************************************************************
Webmin uses its own password protected web server to provide access
to the administration programs. The setup script needs to know :
 - What port to run the web server on. There must not be another
   web server already using this port.
 - The login name required to access the web server.
 - The password required to access the web server.
 - If the webserver should use SSL (if your system supports it).
 - Whether to start webmin at boot time.
Web server port (default 10000): webmin的端口
Login name (default admin): fbh  登陆用户及密码
Login password: 
Password again: 
The Perl SSLeay library is not installed. SSL not available.
Start Webmin at boot time (y/n): y 
***********************************************************************
Copying files to /usr/local/webmin ..
..done
Creating web server config files..
..done
Creating access control file..
..done
Inserting path to perl into scripts..
..done
Creating start and stop scripts..
..done
Copying config files..
..done
Configuring Webmin to start at boot time..
..done
Creating uninstall script /etc/webmin/uninstall.sh ..  删除webmin的脚本
..done
Changing ownership and permissions ..
..done
Running postinstall scripts ..
: Permission denied
syslog-ng: not found
: Permission denied
..done
Attempting to start Webmin mini web server..
Starting Webmin server in /usr/local/webmin
..done
***********************************************************************
Webmin has been installed and started successfully. Use your web
browser to go to
  http://服务器名称:10000/
and login with the name and password you entered previously.
2.使用浏览器登陆
接下来就可以远程管理我们的服务器了。
 
如果你想删除webmin
#/etc/webmin
#./uninstall.sh 
Are you sure you want to uninstall Webmin? (y/n) : y
Stopping Webmin server in /usr/local/webmin
Running uninstall scripts ..
syslog-ng: not found
Deleting /usr/local/webmin ..
Deleting /etc/webmin ..
5我在一个freebsd 7上用源码安装了apache,mysql等软件,安装目录分别是/usr/local/apache及/usr/local/mysql .现在想把apache、mysql随系统开机自动启动。在网上查了一下,发现不少人用port安装,然后修改rc.conf文件,不知道是我固执还是他人固执,非得按freebsd的办法,哎!
 
随着sco unix的日渐衰微,很多厂家不再支持sco,原来那帮执着的sco unix使用者麻烦来了。个人认为没有必要成为某个厂商的殉葬品。怎么办呢?幸好有GNU.
 
总所周知,redhat有个文件/etc/rc.local,如果我们想定制安装的软件随系统开机启动的话,只需把启动程序的命令行追加到这个文件。回到freebsd下,没有rc.local这个文件。与linux不同,freebsd要自动启动的程序位于/etc/rc.d目录(linux是/etc/init.d,还要在运行级别做处理:脚本或链接文件)。先看看/etc/rc.d里面都有啥:
# ll /etc/rc.d
total 362
-r-xr-xr-x  1 root  wheel    241 Feb 24 09:41 DAEMON
-r-xr-xr-x  1 root  wheel    405 Feb 24 09:41 FILESYSTEMS
-r-xr-xr-x  1 root  wheel    404 Feb 24 09:41 LOGIN
-r-xr-xr-x  1 root  wheel    339 Feb 24 09:41 NETWORKING
-r-xr-xr-x  1 root  wheel    243 Feb 24 09:41 SERVERS
-r-xr-xr-x  1 root  wheel    981 Feb 24 09:41 abi
....................................................................
-r-xr-xr-x  1 root  wheel   1803 Feb 24 09:41 ldconfig
-r-xr-xr-x  1 root  wheel    535 Feb 24 09:41 local
-r-xr-xr-x  1 root  wheel   1147 Feb 24 09:41 localpkg
有点好奇,打开文件local看看(耶!是个shell脚本),其内容如下:
# more /etc/rc.d/local
#!/bin/sh
#
# $FreeBSD: src/etc/rc.d/local,v 1.6.14.1 2008/01/28 07:58:31 dougb Exp $
#
# PROVIDE: local
# REQUIRE: DAEMON
# BEFORE:  LOGIN
# KEYWORD: shutdown
. /etc/rc.subr
name="local"
start_cmd="local_start"
stop_cmd="local_stop"
local_start()
{
        echo -n 'Starting local daemons:'
        if [ -f /etc/rc.local ]; then
                . /etc/rc.local
        fi
        echo '.'
}
local_stop()
{
        echo -n 'Shutting down local daemons:'
        if [ -f /etc/rc.shutdown.local ]; then
                . /etc/rc.shutdown.local
        fi
        echo '.'
}
load_rc_config $name
run_rc_command "$1"
这个脚本的意图是:如果存在文件/etc/rc.local,就执行吧,阿门!没有就算了,一切归于平静。既然这样,我们不妨自己创建文件/etc/rc.local并给予执行权限。/etc/rc.local文件的大致内容为:
#!/bin/sh
/usr/local/apache/bin/apachectl start
/usr/local/mysql/bin/mysqld_safe --user=mysql&
重启一下系统,嘿嘿,apache和mysql都乖乖的起来了。。

6软件安装命令: 
FreeBSD pkg_add 
Solaris    pkgadd 
AIX installp
HP-UX swinstall
Linux rpm --install / -i
Debian dpkg --install / -i
7webmin忘记密码怎么办呀
使用Webmin來Config Server作一些管理,可以簡化很多時間, 
但是若忘記管理者密碼那可就很麻煩了! 
以下提供一個方法來reset Webmin的使用者密碼,很簡單的!
1.使用find找出Webmin安裝目錄下的密碼修改檔changepass.pl 
代碼: 
find / -name changepass.pl

2.切換到該檔所在目錄,執行: 
代碼: 
./changepass.pl /etc/webmin 欲修改的帳號 欲修改的密碼
以下是另一种方法
webmin忘记密码怎么办呀,
修改 /etc/webmin/miniserver.users 
或者 
重新设置密码,用setup.sh
 
。8SSH命令使用技巧
一 前言 
关于 ssh 的好处, 相信不用我多说了吧? 
简而言之, 之前的 rpc command 与 telnet 都全可用 ssh 代替. 
比方如下的这些常见功能: 
- 远程登录 
ssh  user@remote.machine 
- 远程执行 
ssh  user@remote.machine 'command ...' 
- 远程复制
scp  user@remote.machine:/remote/path /local/path 
scp /local/path  user@remote.machine:/remote/path 
- X forward 
ssh -X  user@remote.machine 
xcommand ... 
- Tunnel / Portforward 
ssh -L 1234:remote.machine:4321  user@remote.machine 
ssh -R 1234:local.machine:4321  user@remote.machine 
ssh -L 1234:other.machine:4321  user@remote.machine 
 
。9目前 Linux 系统上面有两个时间喔,一个是 Linux 系统,另一个则是 BIOS 时间(真正的硬件记录的时间)! 我们可以使用 date 这个指令来手动修正目前主机的时间,不过, date 这个指令仅修正 Linux 时间而已,我们还需要以 hwclock 这个指令来将 BIOS 时间也更新才行!    hwclock [-rw]
  -r:查看现有BIOS时间
  -w:将现在的linux系统时间写入BIOS中    当我们进行完 Linux 时间的校时后,还需要以 hwclock -w 来更新 BIOS 的时间,因为每次开机的时候,系统会重新由 BIOS 将时间读出来,所以, BIOS 才是重要的时间依据。    1. 开机的时候自动网络校时:
  vi /etc/rc.d/rc.local
  /usr/sbin/ntpdate -u 192.168.0.2 192.168.0.3 192.168.0.4;   /sbin/hwclock -w    2. 设定计划任务
  crontab -e
  10 5 * * * root ntpdate 192.168.0.2 ;hwclock -w
  这样每天5:10自动进行网络校时
  ntpdate命令:       通过轮询指定的确定正确时间的 NTP 服务器, ntpdate 命令设置本地日期和时间。它从指定的每个服务器获得了一些样本,并应用标准 NTP 时钟过滤器和选择算法来选择最好的样本。此 ntpdate 命令使用以下方法进行时间调整:
  * 如果它确定时钟偏差超过 0.5 秒,它通过调用 settimeofday 子例程设置时钟时间。在引导时间,这是一个首选的方法。
  * 如果它确定时钟偏差小于 0.5 秒,它通过调用 adjtime 子例程和偏移量来调整时钟时间。此方法倾向于用牺牲一些稳定性来保持漂移时钟更加准确。
  当不是通过运行一个守护程序而是从 cron 命令有规则的运行 ntpdate 命令时,每一小时或两小时执行一次可以保证足够的走时精度,从而避免调整时钟。    48 */1 * * * /usr/sbin/ntpdate -u 172.16.58.40 172.16.58.14 172.23.32.142 172.24.18.141 172.24.147.11
  1 1 * * * /sbin/hwclock -w    注意事项:
  1. 使用很多服务器可以大幅度改善 ntpdate 命令的可靠性与精度。尽管能使用单一服务器,但您能通过提供至少三个或四个服务器以获得更好的性能。
  2. 如果一个类似 xntpd 守护程序的 NTP 服务器守护程序正在同一主机上运行,命令将拒绝 ntpdate 设置日期。
  3. 你必须有 root 权限才能在主机上运行这个命令。    注意, ntpdate 的准确性和可靠性取决于服务器的数量、每次运行它时的轮询数以及运行之间的时间间隔。ntpdate 根据需要可以手动运行来设置主机时钟,也可以从主机启动脚本中运行,在引导时设置时钟。某些情况下,它可用于在启动NTP 守护程序xntpd 之前对时钟进行初始设置。也可以从cron 脚本中运行ntpdate 。但是务必要注意,包含人为产生的cron 脚本的ntpdate 不能替代NTP 守护程序,后者使用高级算法,在尽量减少使用资源的同时,尽量提高准确性和可靠性。最后,由于ntpdate 不会像xntpd 一样控制主机时钟频率,因此使用ntpdate 的准确性很有限。
。10Rsync命令参数详解 
在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来。rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一一进行分析说明。Rsync的命令格式可以为以下六种:  rsync [OPTION]... SRC DEST  rsync [OPTION]... SRC [USER@]HOST:DEST  rsync [OPTION]... [USER@]HOST:SRC DEST  rsync [OPTION]... [USER@]HOST::SRC DEST  rsync [OPTION]... SRC [USER@]HOST::DEST  rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]
  对应于以上六种命令格式,rsync有六种不同的工作模式:  1)拷贝本地文件。当SRC和DES路径信息都不包含有单个冒号":"分隔符时就启动这种工作模式。如:rsync -a /data /backup  2)使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号":"分隔符时启动该模式。如:rsync -avz *.c foo:src  3)使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号":"分隔符时启动该模式。如:rsync -avz foo:src/bar /data  4)从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。如:rsync -av  root@172.16.78.192::www /databack  5)从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。如:rsync -av /databack  root@172.16.78.192::www6)列远程机的文件列表。这类似于rsync传输,不过只要在命令中省略掉本地机信息即可。如:rsync -v rsync://172.16.78.192/wwwrsync参数的具体解释如下:-v, --verbose 详细模式输出
-q, --quiet 精简输出模式
-c, --checksum 打开校验开关,强制对文件传输进行校验
-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r, --recursive 对子目录以递归模式处理
-R, --relative 使用相对路径信息
-b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用--suffix选项来指定不同的备份文件前缀。
--backup-dir 将备份文件(如~filename)存放在在目录下。
-suffix=SUFFIX 定义备份文件前缀
-u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)
-l, --links 保留软链结
-L, --copy-links 想对待常规文件一样处理软链结
--copy-unsafe-links 仅仅拷贝指向SRC路径目录树以外的链结
--safe-links 忽略指向SRC路径目录树以外的链结
-H, --hard-links 保留硬链结     -p, --perms 保持文件权限
-o, --owner 保持文件属主信息     -g, --group 保持文件属组信息
-D, --devices 保持设备文件信息    -t, --times 保持文件时间信息
-S, --sparse 对稀疏文件进行特殊处理以节省DST的空间
-n, --dry-run现实哪些文件将被传输
-W, --whole-file 拷贝文件,不进行增量检测
-x, --one-file-system 不要跨越文件系统边界
-B, --block-size=SIZE 检验算法使用的块尺寸,默认是700字节
-e, --rsh=COMMAND 指定使用rsh、ssh方式进行数据同步
--rsync-path=PATH 指定远程服务器上的rsync命令所在路径信息
-C, --cvs-exclude 使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件
--existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件
--delete 删除那些DST中SRC没有的文件
--delete-excluded 同样删除接收端那些被该选项指定排除的文件
--delete-after 传输结束以后再删除
--ignore-errors 及时出现IO错误也进行删除
--max-delete=NUM 最多删除NUM个文件
--partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输
--force 强制删除目录,即使不为空
--numeric-ids 不将数字的用户和组ID匹配为用户名和组名
--timeout=TIME IP超时时间,单位为秒
-I, --ignore-times 不跳过那些有同样的时间和长度的文件
--size-only 当决定是否要备份文件时,仅仅察看文件大小而不考虑文件时间
--modify-window=NUM 决定文件是否时间相同时使用的时间戳窗口,默认为0
-T --temp-dir=DIR 在DIR中创建临时文件
--compare-dest=DIR 同样比较DIR中的文件来决定是否需要备份
-P 等同于 --partial
--progress 显示备份过程
-z, --compress 对备份的文件在传输时进行压缩处理
--exclude=PATTERN 指定排除不需要传输的文件模式
--include=PATTERN 指定不排除而需要传输的文件模式
--exclude-from=FILE 排除FILE中指定模式的文件
--include-from=FILE 不排除FILE指定模式匹配的文件
--version 打印版本信息
--address 绑定到特定的地址
--config=FILE 指定其他的配置文件,不使用默认的rsyncd.conf文件
--port=PORT 指定其他的rsync服务端口
--blocking-io 对远程shell使用阻塞IO
-stats 给出某些文件的传输状态
--progress 在传输时现实传输过程
--log-format=formAT 指定日志文件格式
--password-file=FILE 从FILE中得到密码
--bwlimit=KBPS 限制I/O带宽,KBytes per second      -h, --help 显示帮助信息 
 
。11linux gzip 命令详解
减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。
 
gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。
 
语法:gzip [选项] 压缩(解压缩)的文件名
各选项的含义:
-c 将输出写到标准输出上,并保留原有文件。
-d 将压缩文件解压。
-l 对每个压缩文件,显示下列字段:压缩文件的大小未压缩文件的大小压缩比未压缩文件的名字
-r 递归式地查找指定目录并压缩其中的所有文件或者是解压缩。
-t 测试,检查压缩文件是否完整。
-v 对每一个压缩和解压的文件,显示文件名和压缩比。
-num 用指定的数字num调整压缩的速度,
-1或--fast表示最快压缩方法(低压缩比),
-9或--best表示最慢压缩方法(高压缩比)。系统缺省值为6。
 
假设一个目录/home下有文件mm.txt、sort.txt、xx.com。
 
例1:把/home目录下的每个文件压缩成.gz文件。
$ cd /home $ gzip * $ ls m.txt.gz sort.txt.gz xx.com.gz
 
例2:把例1中每个压缩的文件解压,并列出详细的信息。
$ gzip -dv *
mm.txt.gz 43.1%-----replaced with mm.txt
sort.txt.gz 43.1%-----replaced with sort.txt
xx.com.gz 43.1%-----replaced with xx.com
 
$ ls
mm.txt sort.txt xx.com
 
例3:详细显示例1中每个压缩的文件的信息,并不解压。
$ gzip -l *
compressed uncompr. ratio uncompressed_name 277 445 43.1% mm.txt 278 445 43.1% sort.txt 277 445 43.1% xx.com
 
$ ls mm.txt.gz sort.txt.gz xx.com.gz
 
例4:压缩一个tar备份文件,如usr.tar,此时压缩文件的扩展名为.tar.gz
$ gzip usr.tar
$ ls
usr.tar.gz。


本文转自zh888 51CTO博客,原文链接:http://blog.51cto.com/zh888/327941,如需转载请自行联系原作者

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
Linux Windows
WSL(Windows Subsystem for Linux)
背景是这样的,小马在window上的SVN客户端不能连接服务端,但同事的是可以的。很久没用svn了,于是小马想用SVN命令行来试一下是SVN客户端版本的问题还是SVN账号的问题。于是得知window上可以安装WSL后直接使用Linux命令敲SVn命令。于是就有了下面的操作。
190 0
WSL(Windows Subsystem for Linux)
|
IDE Unix 开发工具
|
Unix Windows 网络安全
下一篇
无影云桌面