rpm转换成deb

rpm转换成deb

Ubuntu的软件包格式是deb,如果要安装rpm的包,则要先用alienrpm转换成deb

首先安装alien

sudo apt-get install alien   #alien默认没有安装,所以首先要安装它,如果找不到这个包,请检查你的/etc/apt/sources.list

安装完成后可以看到,alien的描述:Convert or install an alien binary package

测试

       随便选了一个rpm包,地址为:

http://dl.fedoraproject.org/pub/fedora/linux/releases/18/Everything/i386/os/Packages/t/tar-1.26-9.fc18.i686.rpm ,下载下来为tar-1.26-9.fc18.i686.rpm

使用sudo alien tar-1.26-9.fc18.i686.rpm

处理信息为:

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

Warning: Skipping conversion of scripts in package tar: postinst prerm

Warning: Use the –scripts parameter to include the scripts.

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

tar_1.26-10_i386.deb generated

#rpm转换位deb,完成后会生成一个同名的tar_1.26-10_i386.deb(当然一些系统信息可能会去掉,比如fc18ubuntu中使用alien转换后,就木有了)

安装转换后的包

sudo dpkg -i tar_1.26-10_i386.deb #安装注意,用alien转换的deb包并不能保证100%顺利安装,所以可以找到deb最好直接用deb有时候,我们想要使用的软件并没有被包含到 Ubuntu 的仓库中,而程序本身也没有提供让 Ubuntu 可以使用的 deb 包,你又不愿从源代码编译。但假如软件提供有 rpm 包的话,我们也是可以在 Ubuntu 中安装的。

solve the messy code in Xshell when login in fedora OS

解决xshell中文乱码(fedora系统)

系统设置为中文

可以通过echo $LANG来查看,结果为:zh_CN.UTF-8

解决方法为:

选择Properties->Terminal->Enconding选择UTF-8即可。

 

clip_image002

未改正前:

clip_image004

改正以后:

clip_image006

系统设置为英文

修改/etc/sysconfig/i18n即可,可以将LANGzh_CN.UTF-8修改为en_US即可恢复,不过记得要注销一下,或者source一下配置文件即可。

shutdown firewall permanently

1 重启后永久性生效:

 

开启:chkconfig iptables  on

 

关闭:chkconfig iptables  off

 

2 即时生效,重启后失效:

 

开启:service iptables  start

 

关闭:service iptables  stop

 

需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作。

 

在开启了防火墙时,做如下设置,开启相关端口,

 

修改/etc/sysconfig/iptables  文件,添加以下内容:

 

-A RH-Firewall-1-INPUT -m state ——state NEW -m tcp -p tcp ——dport 80 -j ACCEPT

 

-A RH-Firewall-1-INPUT -m state ——state NEW -m tcp -p tcp ——dport 22 -j ACCEPT

 

或者:

 

/etc/init.d/iptables  status 会得到一系列信息,说明防火墙开着。

 

/etc/rc.d/init.d/iptables  stop 关闭防火墙

 

最后:

 

在根用户下输入setup,进入一个图形界面,选择Firewall configuration,进入下一界面,选择Security LevelDisabled,保存。重启即可。

 

======================================================

 

fedora

 

/etc/init.d/iptables  stop

 

=======================================================

 

ubuntu下:

 

由于UBUNTU没有相关的直接命令

 

请用如下命令

 

iptables  -P INPUT ACCEPT

 

iptables  -P OUTPUT ACCEPT

 

暂时开放所有端口

 

Ubuntu上没有关闭iptables 的命令

 

=======================================================

 

iptables  linux下一款强大的防火墙,在不考虑效率的情况下,功能强大到足可以替代大多数硬件防火墙,但是强大的防火墙如果应用不当,可能挡住的可不光是那些潜在的攻击,还有可能是你自己哦。这个带来的危害对于普通的个人PC来说可能无关紧要,但是想象一下,如果这是一台服务器,一旦发生这样的情况,不光是影院正常的服务,还需要到现场去恢复,这会给你带来多少损失呢?

 

所以我想说的是,当你敲入每一个iptables  相关命令的时候都要万分小心。

 

1.应用每一个规则到DROP target时,都要仔细检查规则,应用之前要考虑他给你带来的影响。

 

2.redhat中我们可以使用service iptables  stop来关闭防火墙,但是在有些版本如ubuntu中这个命令却不起作用,大家可能在网上搜索到不少文章告诉你用iptables  -F这个命令来关闭防火墙,但是使用这个命令前,千万记得用iptables  -L查看一下你的系统中所有链的默认targetiptables  -F这个命令只是清除所有规则,只不会真正关闭iptables .想象一下,如果你的链默认targetDROP,本来你有规则来允许一些特定的端口,但一旦应用iptables  -L ,清除了所有规则以后,默认的target就会阻止任何访问,当然包括远程ssh管理服务器的你。

 

所以我建议的关闭防火墙命令是

 

iptables  -P INPUT ACCEPT

 

iptables  -P FORWARD ACCEPT

 

iptables  -P OUTPUT ACCEPT

 

iptables  -F

 

总之,当你要在你的服务器上做任何变更时,最好有一个测试环境做过充分的测试再应用到你的服务器。除此之外,要用好iptables ,那就要理解iptables 的运行原理,知道对于每一个数据包iptables 是怎么样来处理的。这样才能准确地书写规则,避免带来不必要的麻烦。

开发工具

编写使用手册

       UNIX上使用nroff或者在Linux上使用groff编写使用手册。

       这两个工具都是在早期的排版工具roff或者run-off的基础上开发的。

       方法为:找个简单的模板,在上面进行修改,可以使用groff加上选项Tascii来生成ASCII文本或者Tps来生成Postscript格式。

 

patch的使用

软件发行后,如果发现软件的漏洞或者希望增强或升级软件,此时可能也就修改了部分源码,可以通过patch来完成。patchLarry wall编写,他也是perl的作者。

       方法:

       diff old.c new.c > diffs   产生原来文件和更新文件的差异之处

       patch old.c diffs        old升级到新文件

如果不喜欢刚才的修改,可以使用-R选项来反向补丁,撤销到原来的数据

       patch –R old.c diffs

所以,如果在某个程序中发现了漏洞并进行了修补,可以给程序的作者发送一个补丁,而不只是对修补的描述,这样会更容易对文件做出修改。

 

 

RPM软件包的优点

l  使用广泛

l  允许你只用一条命令来安装软件

l  只需要处理一个文件

l  RPM自动处理软件包之间的依赖性检查

l  RPM软件包被设计为由最干净的源代码而来从而允许你对它重新进行编译

 

创建RPM

l  收集需要打包的软件

l  创建SPEC文件,该文件描述了如何建立软件包

l  rpmbuild命令创建软件包

 

软件包格式

l  Redhat系列的rpm

l  Debian系列的软件包格式dpkg,即deb

可以使用工具alien(不是异形,^_^)来转换rpm包和deb包。