Linux打包命令的使用

  经过一番研究、整理后,充分利用Linux系统本身的命令tar、cpio和compress等来做到打包和压缩,使之充当类似DOS下的压缩软件,同时在Linux系统中亦具有通用性。

  在Linux系统中,是先通过cpio或tar将众多的文件打包成一个文件库后,再用compress将文件库压缩来达到目的的。下面分别以cpio和tar来说明使用的方法和步骤。

  一、cpio

  1、打包文件或目录

  a、含子目录打包:

$ find /usr/lib -print|cpio -o〉/u0/temp1.cpio

  将/usr/lib目录下的文件与子目录打包成一个文件库为/u0/temp1.cpio。

  若通过-o选项来打包整个目录下的所有文件与子目录,常先利用find目录名-print来找出所有文件与子目录的名称,通过管道"|"传给cpio打包。

  b、不含子目录的打包:

$ ls /usr/lib|cpio -o〉/u0/temp1.cpio

  将/usr/lib目录下的文件(不含子目录下的文件)打包成一个文件库为/u0/temp1.cpio。

  c、特定文件打包:

  可利用文本搜索命令grep与管道配合,可以排除或选择特定类型的文件传给cpio打包。例如:

$ ls /usr/lib/*.c|cpio -o〉/u0/temp1.cpio

继续阅读

Ubuntu9.10之后(含)版本重装Win系统后Grub启动菜单的修复

  大家都知道,Microsoft如果以安装盘方式安装完系统,就会强盗般地强制更新了MBR。而如果在这之前有安装了Ubuntu 9.10,那么Ubuntu的Grub启动菜单就会不翼而飞。下面是个人整理的解决办法,供大家参考一下:

  方法一:使用Ubuntu 9.10 LiveCD/LiveDVD/LiveUSB

  1、用Ubuntu的LiveCD、LiveDVD或者LiveUSB启动,进入Ubuntu的Live环境;

  2、进入Ubuntu Live之后,从”应用程序》附件》终端”启动Shell;

  3、下面是在终端内输入的命令列表:

$ sudo -i
$ mount /dev/sdc3 /mnt
$ mount /dev/sdc2 /mnt/boot
$ grub-install –root-directory=/mnt/ /dev/sdc

  如果没有”grub.cfg“文件,请重新创建:

$ mount –bind /proc /mnt/proc
$ mount –bind /dev /mnt/dev
$ mount –bind /sys /mnt/sys
$ chroot /mnt update-grub
$ umount /mnt/sys
$ umount /mnt/dev
$ umount /mnt/proc
$ exit

继续阅读

Ubuntu9.04之前(含)版本重装Win系统后Grub启动菜单的修复

  大家都知道,Microsoft如果以安装盘方式安装完系统,就会强盗般地强制更新了MBR。而如果在这之前有安装了Ubuntu9.04之前版本(包含9.04),那么Ubuntu的Grub启动菜单就会不翼而飞。下面是个人整理的解决办法,供大家参考一下:

  1、用Ubuntu的LiveCD、LiveDVD或者LiveUSB启动,进入Ubuntu的Live环境;

  2、进入Ubuntu Live之后,从”应用程序》附件》终端”启动Shell;

  3、然后以管理员身份进入Grub模式:

$ sudo grub

  4、继续输入以下命令,跟着会出现一些文字提示:

find /boot/grub/stage1

  5、根据上面的文字提示,把下面命令中的x替换:

root (hd0,x)

  6、最后输入下面命令修复Grub菜单:

setup (hd0)
quit

  最后退出Grub,然后退出终端、重启。这样就大功告成了!

Linux下载命令wget详解

  wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上。它有以下功能和特点:

  1、支持断点下传功能;这一点,也是网络蚂蚁和FlashGet当年最大的卖点,现在,wget也可以使用此功能,那些网络不是太好的用户可以放心了;

  2、同时支持FTP和HTTP下载方式;尽管现在大部分软件可以使用HTTP方式下载,但是,有些时候,仍然需要使用FTP方式下载软件;

  3、支持代理服务器;对安全强度很高的系统而言,一般不会将自己的系统直接暴露在互联网上,所以,支持代理是下载软件必须有的功能;

  4、设置方便简单;可能,习惯图形界面的用户已经不是太习惯命令行了,但是,命令行在设置上其实有更多的优点,最少,鼠标可以少点很多次,也不要担心是否错点鼠标;

  5、程序小,完全免费;程序小可以考虑不计,因为现在的硬盘实在太大了;完全免费就不得不考虑了,即使网络上有很多所谓的免费软件,但是,这些软件的广告却不是我们喜欢的。

  wget虽然功能强大,但是使用起来还是比较简单的,基本的语法是:wget [参数列表] URL。下面就结合具体的例子来说明一下wget的用法:

  1、下载整个http或者ftp站点。

$ wget http://place.your.url/here

  这个命令可以将http://place.your.url/here 首页下载下来。使用-x会强制建立服务器上一模一样的目录,如果使用-nd参数,那么服务器上下载的所有内容都会加到本地当前目录。

$ wget -r http://place.your.url/here

  这个命令会按照递归的方法,下载服务器上所有的目录和文件,实质就是下载整个网站。这个命令一定要小心使用,因为在下载的时候,被下载网站指向的所有地址同 样会被下载,因此,如果这个网站引用了其他网站,那么被引用的网站也会被下载下来!基于这个原因,这个参数不常用。可以用-l number参数来指定下载的层次。例如只下载两层,那么使用-l 2。

继续阅读

策划人员笔试题的牛人解答

  二话不多说,直接上图,各位看官自己看:

牛X试卷

Linux命令行find小技巧

  命令行一直是Linux用户用来解决问题的首要选择,当需要做某件事时,你只要想好如何去做,从那时起你就知道该如何做了。

  不过很少有人花些时间系统地了解处理工具在处理过程中的输入和输出。因此对于最基本实用工具的功能可能并不是很了解。在本文中,我们将讨论所有shell工具箱中都有的一个重要工具:find实用工具。

  正如它的名字所表示的,find是在磁盘中查找满足给定标准的文件和目录的应用程序。默认情况下,它从当前目录开始,向下扫描所有子目录。find基于各种不同的文件属性来进行查询,而且可以对查询结果执行某种操作,通常是对每个查询结果运行一些程序。

  让我们来看一些例子:首先,为了在当前目录或子目录中查找所有html文件,我们可以使用:

$ find -name "*.html" -type f

  该命令有两个测试条件,第一个,"-name"用于检验搜索过程中的每个文件名,如果你需要对大小写敏感,可以使用"-iname"代替。第二个参数是"-type",它用于指定你感兴趣的文件类型。"f"表示我们查找的是普通文件,我们可以使用"d"表示目录或使用"l"表示符号连接。在find 手册中可以看到该工具的所有选项。

  在上面的这个例子中,因为我们要在当前目录中搜索,所以没有指定路径。你可以从你的系统中的任何目录开始搜索,例如,你知道html文件存放在两个位置之一中,那么我们就可以通过指定一个开始搜索点使查询更快更准确。

$ find /var/www /home/nickg/public_html -name "*.html" -type f

  这个查询从web服务器的根目录开始,搜索我的html根目录和它的子目录,希望能够得到我们想要的结果,而不是像web浏览器缓存或html帮助文件。

  默认情况下,find遍历所有子目录,但是你可以通过指定最大深度来控制这个行为。在前面的例子中,如果我们只想搜索这两个目录不想搜索下一层,你可以添加"-maxdepth 1"到命令中。设置最大深度为0表示只检验命令行中的给定文件。同样,你可以设定最小深度,从而避免搜索位于根目录的文件。

继续阅读

Linux关机命令详解

  在Linux下一些常用的关机/重启命令有shutdown、halt、reboot、及init,它们都可以达到重启系统的目的,但每个命令的内部工作过程是不同的,通过本文的介绍,希望你可以更加灵活的运用各种关机命令。

  1、shutdown

  shutdown命令安全地将系统关机。有些用户会使用直接断掉电源的方式来关闭Linux,这是十分危险的。因为Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备。

  而在系统关机前使用shutdown命令,系统管理员会通知所有登录的用户系统将要关闭。并且login指令会被冻结,即新的用户不能再登录。直接关机或者延迟一定的时间才关机都是可能的,还可能重启。这是由所有进程(process)都会收到系统所送达的信号(signal)决定的。这让像vi之类的程序有时间储存目前正在编辑的文档,而像处理邮件(mail)和新闻(news)的程序则可以正常地离开等等。

  shutdown执行它的工作是送信号(signal)给init程序,要求它改变runlevel。

  runlevel 0被用来停机(halt),runlevel 6是用来重新激活(reboot)系统,而runlevel 1则是被用来让系统进入管理工作可以进行的状态﹔这是预设的,假定没有-h也没有-r参数给shutdown。要想了解在停机(halt)或者重新开机(reboot)过程中做了哪些动作,你可以在这个文件/etc/inittab里看到这些runlevels相关的资料。

  shutdown 参数说明:

  [-t] 在改变到其它runlevel之前,告诉init多久以后关机。

  [-r] 重启计算器。

  [-k] 并不真正关机,只是送警告信号给每位登录者(login)。

  [-h] 关机后关闭电源(halt)。

  [-n] 不用init,而是自己来关机。不鼓励使用这个选项,而且该选项所产生的后果往往不总是你所预期得到的。

  [-c] cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数,但是可以输入一个用来解释的讯息,而这信息将会送到每位使用者。

  [-f] 在重启计算器(reboot)时忽略fsck。

  [-F] 在重启计算器(reboot)时强迫fsck。

  [-time] 设定关机(shutdown)前的时间。

继续阅读

S60V3“开机正在安装”的终极解决办法

  问题呈现:开机时出现正在安装,之后提示进程序管理,可是进入之后发现没有未安装的程序。如下图:

S60V3

  以前就有一个用N73的朋友跟我说过这个问题了,当时没时间去理会,于是乎我那朋友在一气之下把他的N73给硬格了。问题当然得到了解决,不过这是最不可行的办法之一啦!

  不知道过了多久吧,反正是一段时间过后,原来那个问题又来。在他的要求下,我就试着去搞定这个问题。其实他用手机有一个特点,就是很喜欢上网下主题,换主题,删主题……所以我就把E:\Private\10202dce文件夹下所有的SIS文件都删了。重启,不再有安装提示了。但是这样做了之后有个弊端,那就是格机之后卡里安装的软件就不会自动安装了,只能重装,会显得比较麻烦。

  前两天吧,我的手机也出现了这个问题!在研究之后,终于找到了一个完美的终极的解决办法,那就是只要把E:\Private\10202dce\A00000EB.sis文件删了就可以。

  写下这篇文章希望能帮助一下需要的网友。

Ubuntu更新源列表时NO_PUBKEY(找不到公钥)问题的解决方法

  在使用Ubuntu的过程中,有时我们会因为想试一下一些新奇的东东,于是我们可能会修改软件源的配置文件(/etc/apt/sources.list)。修改完成之后当然要“update”一下,但在“update”完成之后却发现出现了“GPG签名验证错误:××××,由于没有公钥,下列签名无法进行验证: NO_PUBKEY ×××××”的问题,如下图:

NoPubkey

  此时要如何解决呢?其实Ubuntu社区为我们提供了解决方案,在“http://keyserver.ubuntu.com/”里一般都可以找到我们所需要的公钥(PUBKEY)。当然,不是说直接访问这个网页去搜索下载再导入,而是通过终端来实现。下面是解决方法:

$ gpg --keyserver keyserver.ubuntu.com --recv 21C022AA985E0E11
# 后面的字符串是NO_PUBKEY后的提供字符
$ gpg --export --armor 21C022AA985E0E11 | sudo apt-key add -
# 注意命令最后面还有一个“-”,千万不要忘记了它!

  通过运行这两个简单的终端命令之后,我们已经把公钥(PUBKEY)成功的导入了(如果失败了,会出现提示的,本文就不多加说明了)。现在再来“update”一下,是不是就没问题了呢?

F5 BIG-IP负载均衡器配置实例与Web管理界面体验[转载]

  [文章作者:张宴  转载请注明出自: http://blog.s135.com/f5_big_ip]

   前言:最近一直在对比测试F5 BIG-IP和Citrix NetScaler负载均衡器的各项性能,于是写下此篇文章,记录F5 BIG-IP的常见应用配置方法。

  目前,许多厂商推出了专用于平衡服务器负载的负载均衡器,如F5 Network公司的BIG-IP,Citrix公司的NetScaler。F5 BIG-IP LTM 的官方名称叫做本地流量管理器,可以做4-7层负载均衡,具有负载均衡、应用交换、会话交换、状态监控、智能网络地址转换、通用持续性、响应错误处理、 IPv6网关、高级路由、智能端口镜像、SSL加速、智能HTTP压缩、TCP优化、第7层速率整形、内容缓冲、内容转换、连接加速、高速缓存、 Cookie加密、选择性内容加密、应用攻击过滤、拒绝服务(DoS)攻击和SYN Flood保护、防火墙—包过滤、包消毒等功能。

  以下是F5 BIG-IP用作HTTP负载均衡器的主要功能:

  ①、F5 BIG-IP提供12种灵活的算法将所有流量均衡的分配到各个服务器,而面对用户,只是一台虚拟服务器。

  ②、F5 BIG-IP可以确认应用程序能否对请求返回对应的数据。假如F5 BIG-IP后面的某一台服务器发生服务停止、死机等故障,F5会检查出来并将该服务器标识为宕机,从而不将用户的访问请求传送到该台发生故障的服务器 上。这样,只要其它的服务器正常,用户的访问就不会受到影响。宕机一旦修复,F5 BIG-IP就会自动查证应用已能对客户请求作出正确响应并恢复向该服务器传送。

  ③、F5 BIG-IP具有动态Session的会话保持功能。

  ④、F5 BIG-IP的iRules功能可以做HTTP内容过滤,根据不同的域名、URL,将访问请求传送到不同的服务器。


   下面,结合实例,配置F5 BIG-IP LTM v9.x:

F5

   ①、如图,假设域名blog.s135.com被解析到F5的外网/公网虚拟IP:61.1.1.3(vs_squid),该虚拟IP下有一个服务器池 (pool_squid),该服务器池下包含两台真实的Squid服务器(192.168.1.11和192.168.1.12)。

  ②、如果 Squid缓存未命中,则会请求F5的内网虚拟IP:192.168.1.3(vs_apache),该虚拟IP下有一个默认服务器池 (pool_apache_default),该服务器池下包含两台真实的Apache服务器(192.168.1.21和192.168.1.22), 当该虚拟IP匹配iRules规则时,则会访问另外一个服务器池(pool_apache_irules),该服务器池下同样包含两台真实的Apache 服务器(192.168.1.23和192.168.1.24)。

  ③、另外,所有真实服务器的默认网关指向F5的自身内网IP,即 192.168.1.2。

  ④、所有的真实服务器通过SNAT IP地址61.1.1.4访问互联网。

继续阅读