首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简单的deb包给Debian Lenny?

简单的deb包给Debian Lenny?
EN

Stack Overflow用户
提问于 2014-10-24 14:34:04
回答 2查看 186关注 0票数 1

在运行Debian的NAS中,我愚蠢地将PermitRootLogin设置为sshd_config中的无密码,而没有正确设置密钥,现在被锁在门外。这是一个WD Sharespace,并阅读它,看来我恢复根SSH访问的最佳方法是创建一个覆盖原始sshd_config文件的deb包。我发现描述deb包创建的站点相当繁重。我所需要做的就是覆盖一个文件。有什么简单的方法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-26 08:54:54

有一些工具可以简化一些简单的打包,但是打包是一项基本复杂的任务,因为包可以完成很多事情(写出二进制文件、配置文件、运行后安装脚本等等)。

也就是说,如果您所需要做的就是打包一个文件以显示在一个特定的位置,那么这样的工具就是fpm (需要Ruby)。不要不尊重fpm,它可以做更多的事情,而不仅仅是打包一堆东西!

/tmp中创建您想要打包的目录结构。如果/tmp/mypackage是目标文件系统的根,那么您在mypackage/etc中放置的任何内容在安装包后都会显示在/etc中:

代码语言:javascript
复制
mkdir -p /tmp/mypackage/etc
echo "My file contents" > /tmp/mypackage/etc/my_config_file

sshd_config文件插入etc目录。然后我们把它包装起来:

代码语言:javascript
复制
fpm -t "deb" -n "mypackage" -s dir /tmp/mypackage

你应该得到这样的东西:

代码语言:javascript
复制
Created package {:path=>"mypackage_1.0_amd64.deb"}

确保使用-a选项设置正确的体系结构(我不知道WD Sha呼吸道使用了什么)。一旦您在NAS上安装了该软件包,配置文件就会出现在那里。

票数 1
EN

Stack Overflow用户

发布于 2015-02-23 15:22:56

作为Lenny和许多其他发行版中存在的另一种选择,是“外星”命令。它将包从一个发行版转换到另一个发行版。这不会有多大用处,除非它非常宽容Slackware TGZ包。它将接受任何路径从根目录开始的TGZ文件(pkgname_version.tar.gz),并将该TGZ转换为一个普通的deb文件进行安装。

它有几个选项来定制包(设置、版本、标签等),但最终的结果是一个包,它可以安装/删除或替换系统上的任何包,而不需要麻烦。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26550085

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档