我想将从 git 获取的 ruby 程序打包到 RPM 包中。我有一个构建服务器和一个生产服务器(相同的操作系统/相同的架构)。
与大多数 ruby 项目一样,我的项目确实有 gem 依赖项。
我找到了两种做我想做的事情的方法,我想知道哪一种是最好的 - 大多数 UNIX/Linux 哲学 - 操作方面
第一个(对我来说看起来更好)是做一个bundle install --standalone --deployment --path %{buildroot}/usr/lib/rubygems/1.8/gems/ --binstubs %{buildroot}/usr/lib/rubygems/1.8.bin. 这会将 gem 安装在将部署 .rpm 的服务器上的 gem 系统路径上,无需安装捆绑包。我不确定的是,当我使用相同的 gem 安装其他 rpm 时会发生什么?当我删除一个带有在两个包之间共享的 gem 的包时,会发生什么?
该bundle install --deployment命令将直接在项目本身中执行。这样就可以在目录中找到所有内容vendor/。在网上我可以看到一些关于供应商一切政策的帖子,它似乎不正确的操作明智,因为很多宝石将被重复。由于我没有红宝石背景,我不知道它的确切优点/缺点
如果有人已经做了类似的事情,你会采取哪一种方式?从运营角度来看,什么才是最好的解决方案?
如何使用 firewall-cmd 工具(新的 firewalld)创建防火墙规则,以便限制特定网络仅访问一项服务,并允许一个区域中的所有服务。
例如:
我只有一个接口 eno1,它与公共区域相关联。该区域启用了 Http 和 https 服务。我想在该区域启用 ssh 访问,但我想限制对网络的 ssh 访问(例如 100.0.0.0/8)
做这个的最好方式是什么?
从 Fedora Core 16 升级到 Fedora Core 21 后,新的 Dovecot 安装无法正确进行身份验证,而且根本不清楚原因。
我们有 50 多个电子邮件帐户由该服务器提供服务,因此我希望让以前的方案继续为人们服务。
多年来我们一直非常成功地使用 CRAM-MD5。我移动了配置,根据新版本(2.2.15-3)的需要进行了更新,并尝试连接。日志说:
Requested CRAM-MD5 scheme, but we have only CRYPT
Run Code Online (Sandbox Code Playgroud)
然而,当我按照 Dovecot 网站上的测试指南(可以在此处找到http://wiki2.dovecot.org/TestInstallation)时,测试命令显示 CRAM-MD5 确实可用:
# telnet localhost 143
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE
IDLE STARTTLS AUTH=CRAM-MD5 AUTH=DIGEST-MD5 AUTH=PLAIN AUTH=LOGIN]
Dovecot ready.
Run Code Online (Sandbox Code Playgroud)
可以看出,CRAM-MD5 是列出的第一个支持的授权类型。
此外,鸽舍参数测试程序也没有显示任何问题:
# dovecot -n
# 2.2.15: /etc/dovecot/dovecot.conf
# …Run Code Online (Sandbox Code Playgroud) 我们是一所小型大学的计算机科学系,运行使用 NFS4 和 Fedora 24 客户端(约 40 台客户端机器,约 150 名用户——很少并发)的 RHEL 7 服务器。我们遇到了延迟问题,我们在排除故障/试图找出问题所在时遇到了麻烦。症状示例:
emacs并再尝试打开一个文件,应用程序挂起两分钟。大约两分钟后,您可以毫无问题地创建文件、读取文件等。编辑:emacs在本地文件(例如,/tmp/test.out)上运行没有延迟问题。此外,使用idle3或打开网络文件gedit也没有问题。经过长时间的延迟,您可以毫无问题地读取/编辑/创建文件。
我发现这些应用程序的唯一共同点是它们使用隐藏的配置文件(.emacs.d、.idle、.eclipse、 ...)。我似乎找不到任何隐藏文件将以不同方式处理的文档。
任何建议表示赞赏!
默认情况下,登录系统的用户可以完全禁用网络或连接,有没有办法禁用它?
谢谢
我似乎无法在 Amazon EC2 的 Fedora 28 中使用 IPv6(因此使用 cloud-init 和 DHCPv6)。
它使用此处描述的配置在 RHEL 7 中工作。将相同的配置应用于 Fedora 28 似乎没有任何作用。特别是,/etc/sysconfig/network它不得到改写包含NETWORKING_IPV6=yes,也不/etc/sysconfig/network-scripts/ifcfg-eth0包含任何IPv6的东西。
我的/etc/cloud/cloud.cfg.d/56-custom-networking.cfg包含:
network:
version: 1
config:
- type: physical
name: eth0
subnets:
- type: dhcp
- type: dhcp6
Run Code Online (Sandbox Code Playgroud)
生成的/etc/sysconfig/network是:
NOZEROCONF=yes
DEVTIMEOUT=10
# Created by cloud-init on instance boot automatically, do not edit.
#
NETWORKING=yes
Run Code Online (Sandbox Code Playgroud)
生成的/etc/sysconfig/network-scripts/ifcfg-eth0是:
# Created by cloud-init on instance boot automatically, do not edit.
# …Run Code Online (Sandbox Code Playgroud) 目前,OpenSSH 7.8 (Fedora 28/Arch) 无法使用证书签名密钥与 OpenSSH 7.4 (CentOS 7) 服务器协商,如redhat 的 bugzilla 上提交的错误所述。OpenSSH 发行说明表明现在必须明确定义签名协商算法的更改。虽然现在允许使用 2 个新的签名算法(自 7.7 起),但由于错误或有意,ssh-rsa-cert-v01@openssh.com 用户证书不再能够用于身份验证。
重现步骤:
我试图通过修改证书签名过程中使用的算法来解决这个问题。
ssh-keygen -L -f test.crt
test.crt:
Type: ssh-rsa-cert-v01@openssh.com user certificate
Public key: RSA-CERT SHA256:<fingerprint>
Signing CA: RSA SHA256:<fingerprint>
Run Code Online (Sandbox Code Playgroud)
ssh-keygen 的默认设置是在 ssh-rsa-cert-v01@openssh.com 中对密钥进行签名。
根据 OpenSSH 7.8 文档,PROTOCOL.certkeys。
All certificate types include certification information along with the
public …Run Code Online (Sandbox Code Playgroud) 这个问题可能已经被问过好几次了,但是考虑到我能找到的所有结果和我所知甚少,我有点迷失了。我使用的是 Fedora 29。
我尝试用 nginx 做什么:
样本 :
application.domain.com --> https://hostname1.domain.local(或 IP 1)
test.domain.com --> https://hostname2.domain.local:1234(或 IP 2)
www.domain.com --> https://hostname3.domain.local(或IP 3)等...
我怎样才能做到这一点?让我们加密自动配置我的 nginx 配置,但这似乎有点太多了。
非常感谢您的回答,我觉得我得到了一些进步,即使暂时没有工作。我在这里发布了我的完整配置文件,因为我现在遇到了“502 Bad Gateway”错误。IP 与反向代理不在同一子网中,但完全可访问,没有防火墙或路由问题。
知道我可以在哪里继续前进吗?在原始配置中,还有一个包含密码和协议的 certbot conf 文件。也许我需要重新包含它?
另外:我尝试访问的内部服务器具有使用我自己的 AD CS 签名的证书,但反向代理上尚未安装根证书。也许我应该 ?
# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/
user nginx;
worker_processes auto;
error_log …Run Code Online (Sandbox Code Playgroud) 上周我使用常规 DNF 更新流程更新了内核。重新启动后,我的 mdadm 阵列中没有检测到任何驱动器。我将问题范围缩小到内核问题,并使用较旧的内核进行引导。我等待了一周的下一次内核更新并再次运行该过程,希望这只是一个坏内核,但问题尚未解决。kernel: mpt2sas_cm0: failure at drivers/scsi/mpt3sas/mpt3sas_scsih.c:10790/_scsih_probe()!dmesg在两个 5.8 内核上均显示。经过一番研究,我很确定 Fedora 已经放弃了对 sas2116 控制器的支持(https://access.redhat.com/discussions/3722151?page=2),所以我要么需要找到该卡的驱动程序,要么更换它带有 12gb/s 卡。
你有什么建议?在哪里可以找到适用于 Fedora 32 的这张卡的驱动程序以及如何安装它们,或者用什么好的 12gb/s 卡来替换它(该卡目前驱动安装了 12 个驱动器的 24 盘位超微背板)?我目前使用的卡是LSI 9201-16e。
我正在尝试在 Fedora 32 上使用几乎默认安装的 libvirt/kvm。
安装 libvirt 后,我正在尝试启动default网络:virsh net-start default.
但是由于某种原因,有许多链丢失了,所以它失败了。例如,libvirt 尝试加载的新规则开始于:
-A IN_libvirt_allow -p udp --dport 67 -m conntrack --ctstate NEW,UNTRACKED -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
但是没有IN_libvirt_allow(或IN_libvirt_post, FORWARD_OUT_ZONES, ...)。
我确实有一些与 libvirt 相关的链,例如LIBVIRT_INP/ LIBVIRT_OUT,但我不确定哪些属于 libvirt,哪些属于 firewalld 以及它们应该如何协同工作。
我缺少什么设置?