Linux中国
1.73K subscribers
777 photos
6.34K links
Linux 中国官方 Telegram 频道
Download Telegram
发现 GPL 违规怎么办?多种法律救济可用

最近一系列的法律案件为解决 GPL 违规问题提供了一些启示。 Media

via https://linux.cn/article-9494-1.html
发现 GPL 违规怎么办?多种法律救济可用

提要:最近一系列的法律案件为解决 GPL 违规问题提供了一些启示。 Media2017 年 4 月份,位于加州的一家美国联邦法院在 Artifex Software, Inc. 诉 Hancom, Inc. 案(2017 WL 1477373)中做出了一项裁决,为针对 GPL 违规的救济方式提供了新的视角。令人遗憾的是,这起案件由于对法院裁定 GPL 是合同的一些错误解释而重新引发了已持续数十年之久的 GPL 究竟是许可还是合同的辩论。在研究救济措施的新进展之前,值得我们去重新审视为什么这种争辩依然存在。当您考虑针对 GPL 违规的救济措施时,您可能会想到针对版权侵权主张权利,这种法律原则似乎适用于强制执行 GPL,因为版权侵权最有力的救济措施之一就是禁令救济(injunctive relief)。对于 GPL 违规,这通常意味着防止侵权者分发违规软件。版权法还规定了实际和法定损害赔偿。相反,合同违约的救济措施相当有限,尽管也存在其他形式的救济,但通常只用于使一方完全避免造成损失。正如 Hancom 公司在其简易判决动议(虽然被法院驳回)中所指出的,对于 GPL 软件来说,可能很难进行损失计算。关于为什么 GPL 应该被视为许可而不是合同,已经有很多想法提出。例如,自由软件基金会(FSF)一直认为 GPL 不是合同。合同和开源许可证之间的这种区别可以在协议的性质中找到:合同是契约或承诺的交换,而开源许可证则给出了使用许可证的条件。在 Jacobsen 诉 Katzer 案(535 F.3d 1373)中,法院支持这种看法,认为艺术许可协议(Artistic License)列举了条件而非契约。有鉴于此,违反许可证将导致强有力救济措施的观点让许可/合同争辩陷入平息。我们再来看 Artifex,该公司针对许可违规(根据上述分析)以及合同违约均提出了权利主张。有很多文章讨论了法院对 GPL 构成合同的分析,其中也包括 FSF 发表的文章,所以本文不会详细讨论这个看法。总结其分析结果,法院认为创建合同的要素(要约、接受和对价)得到了充分的陈述,其中大部分聚焦在对 GPL 的接受上(如果 GPL 被视为合同)。法院试图寻找 GPL 之外的接受证据,在 Hancom 制作的 Ghostscript 在线描述资料以及该产品的双重许可性质中已经找到。因此,法院认定可能存在合同。在这里,我们关注的是法院合同分析之外的两个问题。首先,注意上面使用的“可能”这个词的重要性。Artifex 的判令来自于一个驳回动议,只评估 Artifex 主张的合理性而非优劣。法院对此事没有进一步的法律分析。所以如果这一点已经被提起诉讼,它可能会或可能没有找到合法的合同。既然这一点在第二个动议中已经得到了承认,并且各方私下达成了和解,所以我们不知道这个争议会如何结束。其次,尽管可能的合同权利主要很重要,但还有更有趣的第二个问题。在 Artifex 案之前,版权和合同的讨论也被搁置,其中一部分原因是由于优先适用(preemption)问题。当美国国会颁布版权法(Copyright Act)时,它取代了任何与其不一致的州法的权利主张,例如有的州法对等同权提供版权保护。如果州法的权利主张(例如违约)涉及与“(联邦)版权法本质上不同的权利”(引自 Artifex),则可以避免优先适用的问题。在确定是否存在优先适用问题时,法院会询问州法的权利主张是否有超出联邦版权法的“额外要素”。在争论一个“额外要素”来证实其合同违约的权利主张时,Artifex 引用了 Versata Software, Inc. 诉 Ameriprise Fin., Inc. 案(2014 WL 950065)中版权法自身没有强加任何开源义务的主张。因此,任何“额外要素”(例如开源责任)都不在联邦版权法的范围之内,从而使得违反了州法中的合同权利主张变得可能。因此,Artifex 提出了这一概念以及与域外侵权有关的另一个概念(不在本文讨论范围),法院认定合同违约权利主张可以继续进行,同时允许进行合同法和版权法意义下的可能的救济,且不能对其中任意一个权利主张构成减损。这一案件的最终效应仍有待观察,但结果是为针对 GPL 违规行为通过版权侵权和合同违约来实施多种救济措施铺平了道路。作者简介:Chris Gillespie 就职于红帽公司(Redhat)。译者简介:薛亮,集慧智佳知识产权咨询公司高级咨询师,擅长专利检索、专利分析、竞争对手跟踪、FTO 分析、开源软件知识产权风险分析,致力于为互联网企业、高科技公司提供知识产权咨询服务。MediaMedia

via https://linux.cn/article-9494-1.html?utm_source=rss&utm_medium=rss
我是如何创造“开源”这个词的

Christine Peterson 最终公开讲述了二十年前那决定命运的一天。Media

via https://linux.cn/article-9496-1.html
命令行乐趣:嘲讽输错 Bash 命令的用户

你可以通过配置 sudo 命令去嘲讽输入错误密码的用户。但是现在,当用户在 shell 输错命令时,就能嘲讽他了(滥用?)。Media

via https://linux.cn/article-9497-1.html
如何在 Linux 中查找最大的 10 个文件

当系统的磁盘空间不足时,您可能会使用 df、du 或 ncdu 命令进行检查,但这些命令只会显示当前目录的文件,并不会显示整个系统范围的文件。Media

via https://linux.cn/article-9495-1.html
你没听过的 10 个免费的 Linux 生产力应用程序

高效率的应用程序确实可以让你工作变得更轻松。如果你是一位 Linux 用户,这 10 个不太知名的 Linux 桌面应用程序可以帮助到你。Media

via https://linux.cn/article-9498-1.html
chkservice:在 Linux 终端管理 systemd 单元的工具

chkservice 是一个基于 ncurses 的在终端中管理 systemd 单元的工具。它提供了一个非常全面的 systemd 服务的视图,使得它们非常容易修改。Media

via https://linux.cn/article-9499-1.html
为初学者准备的 ln 命令教程(5 个示例)

当我们在命令行上工作时,您可能需要在文件之间创建链接。Media

via https://linux.cn/article-9501-1.html
使用 Vagrant 测试 Ansible 剧本

我需要一种简单而迅速的方法来在我的本地笔记本上测试 Ansible 剧本的部署情况,尤其在刚开始写一个新剧本的时候,因为直接部署到生产服务器上不仅特别慢而且风险还很大。Media

via https://linux.cn/article-9502-1.html
六个例子带你入门 size 命令

正如你所知道的那样,Linux 中的目标文件或着说可执行文件由多个段组成(比如文本段和数据段)。若你想知道每个段的大小,那么确实存在这么一个命令行工具 —— 那就是 size。Media

via https://linux.cn/article-9504-1.html
计算机语言的巨变

我的上一篇博文《与 C 语言长别离》引来了我的老朋友,一位 C++ 专家的评论。在评论里,他推荐把 C++ 作为 C 的替代品。这是不可能发生的,如果 C++ 代替 C 是趋势的话,那么 Go 和 Rust 也就不会出现了。Media

via https://linux.cn/article-9503-1.html
容器环境中的代理模型

我们大多数人都熟悉代理如何工作,但在基于容器的环境中有什么不同?让我们来看看有什么改变。Media

via https://linux.cn/article-9505-1.html
如何配置 Apache Web 服务器

学习如何在 Apache 上托管你自己的网站,这是一个可靠、流行且易于配置的 Web 服务器。Media

via https://linux.cn/article-9506-1.html
深入理解 BPF:一个阅读清单

我收集了非常多的关于 BPF 的阅读材料:介绍、文档,也有教程或者示例。这里有很多的材料可以去阅读Media

via https://linux.cn/article-9507-1.html
在 Ubuntu 16.04 上配置 msmtp

我使用 msmtp 发送来自这个博客的邮件俩通知我评论和更新等。这里我会记录如何配置它通过 Google Apps 帐户发送电子邮件,虽然这应该与标准的 Google 帐户一样。Media

via https://linux.cn/article-9509-1.html
在 Ubuntu 16.04 上配置 msmtp

Media这篇文章是在我之前的博客中发表过的在 Ubuntu 16.04 上配置 MSMTP 的一个副本。我再次发表是为了后续,我并不知道它是否能在更高版本上工作。由于我没有再托管自己的 Ubuntu/MSMTP 服务器了,所以我现在看不到有需要更新的地方,但是如果我需要重新设置,我会创建一个更新的帖子!无论如何,这是我现有的。我之前写了一篇在 Ubuntu 12.04 上配置 msmtp 的文章,但是正如我在之前的文章中暗示的那样,当我升级到 Ubuntu 16.04 后出现了一些问题。接下来的内容基本上是一样的,但 16.04 有一些小的更新。和以前一样,这里假定你使用 Apache 作为 Web 服务器,但是我相信如果你选择其他的 Web 服务器,也应该相差不多。我使用 msmtp 发送来自这个博客的邮件俩通知我评论和更新等。这里我会记录如何配置它通过 Google Apps 帐户发送电子邮件,虽然这应该与标准的 Google 帐户一样。首先,我们需要安装 3 个软件包:
sudo apt-get install msmtp msmtp-mta ca-certificates
安装完成后,就需要一个默认配置。默认情况下,msmtp 会在 /etc/msmtprc 中查找,所以我使用 vim 创建了这个文件,尽管任何文本编辑器都可以做到这一点。这个文件看起来像这样:
# Set defaults.defaults# Enable or disable TLS/SSL encryption.tls ontls_starttls ontls_trust_file /etc/ssl/certs/ca-certificates.crt# Setup WP account's settings.account GMAILhost smtp.gmail.comport 587auth loginuser YOUR USERNAMEpassword YOUR PASSWORDfrom FROM@ADDRESSlogfile /var/log/msmtp/msmtp.logaccount default :
任何大写选项都是需要替换为你特定的配置。日志文件是一个例外,当然你也可以将活动/警告/错误放在任何你想要的地方。文件保存后,我们将更新上述配置文件的权限 ,如果该文件的权限过于开放,msmtp 将不会运行,并且创建日志文件的目录。
sudo mkdir /var/log/msmtpsudo chown -R www-data:adm /var/log/msmtpsudo chmod 0600 /etc/msmtprc
接下来,我选择为 msmtp 日志配置 logrotate,以确保日志文件不会太大并让日志目录更加整洁。为此,我们创建 /etc/logrotate.d/msmtp 并使用按以下内容配置。请注意,这是可选的,你可以选择不这样做,或者你可以选择以不同方式配置日志。
/var/log/msmtp/*.log { rotate 12 monthly compress missingok notifempty}
现在配置了日志,我们需要通过编辑 /etc/php/7.0/apache2/php.ini 告诉 PHP 使用 msmtp,并将 sendmail 路径从
sendmail_path =
变成
sendmail_path = "/usr/bin/msmtp -C /etc/msmtprc -a -t"
这里我遇到了一个问题,即使我指定了帐户名称,但是当我测试它时,它并没有正确发送电子邮件。这就是为什么 account default : 这行被放在 msmtp 配置文件的末尾。要测试配置,请确保 PHP 文件已保存并运行 sudo service apache2 restart,然后运行 php -a 并执行以下命令
mail ('personal@email.com', 'Test Subject', 'Test body text');exit();
此时发生的任何错误都将显示在输出中,因此错误诊断会相对容易。如果一切顺利,你现在应该可以使用 PHP sendmail(至少 WordPress 可以)中用 Gmail(或 Google Apps)从 Ubuntu 服务器发送电子邮件。我没有说这是最安全的配置,所以当你看到并且意识要这个非常不安全,或者有其他严重的错误,请让我知道,我会相应地更新。via: https://codingproductivity.wordpress.com/2018/01/18/configuring-msmtp-on-ubuntu-16-04-again/作者:JOE 译者:geekpi 校对:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出Media

via https://linux.cn/article-9509-1.html?utm_source=rss&utm_medium=rss
10 个增加 UNIX/Linux Shell 脚本趣味的工具

shell 脚本可以使用一些 GUI 组件(菜单、警告框、进度条等),你可以控制终端输出、光标位置以及各种输出效果等等。利用下面的工具,你可以构建强壮的、可交互的、对用户友好的 UNIX/Linux bash 脚本。Media

via https://linux.cn/article-9510-1.html
为什么开源在计算机专业的学生中不那么流行?

高中和大学生们或许因先入为主的观念而畏于参与开源项目。Media

via https://linux.cn/article-9511-1.html
在 Debian 9 上使用 Rsyslog 安装一台中央日志服务器

在 Linux 中,可以配置运行一个 Rsyslog 服务器来中央化管理日志,在流行的服务端—客户端模式中,通过 TCP 或者 UDP 传输协议基于网络来发送日志信息,或者从网络设备、服务器、路由器、交换机、以及其它系统或嵌入式设备中接受生成的日志。Media

via https://linux.cn/article-9512-1.html
Oh My Fish! 让你的 Shell 漂亮起来

如何使用 Oh My Fish (简称 omf ) ,让我们的 Fish shell 变得漂亮且优雅。Media

via https://linux.cn/article-9515-1.html
如何知道 CPU 是否支持虚拟化技术(VT)

在安装虚拟化程序(如 VirtualBox 或 VMWare workstation)以在 Linux 系统上运行虚拟机之前,你应该首先验证这一点。Media

via https://linux.cn/article-9516-1.html