Linux中国
1.73K subscribers
777 photos
6.34K links
Linux 中国官方 Telegram 频道
Download Telegram
如何创建定制的 Ubuntu Live CD 镜像

我找到了另一种创建 Ubuntu Live CD 镜像的工具。使用 Cubic,这是一个用来创建定制的可启动的 Ubuntu Live CD(ISO)镜像的 GUI 应用程序。Media

via https://linux.cn/article-9264-1.html
autorandr:自动调整屏幕布局

Media像许多笔记本用户一样,我经常将笔记本插入到不同的显示器上(桌面上有多台显示器,演示时有投影机等)。运行 xrandr 命令或点击界面非常繁琐,编写脚本也不是很好。最近,我遇到了 autorandr,它使用 EDID(和其他设置)检测连接的显示器,保存 xrandr 配置并恢复它们。它也可以在加载特定配置时运行任意脚本。我已经打包了它,目前仍在 NEW 状态。如果你不能等待,这是 deb这是 git 仓库。要使用它,只需安装软件包,并创建你的初始配置(我这里用的名字是 undocked):
autorandr --save undocked
然后,连接你的笔记本(或者插入你的外部显示器),使用 xrandr(或其他任何)更改配置,然后保存你的新配置(我这里用的名字是 workstation):
autorandr --save workstation
对你额外的配置(或当你有新的配置)进行重复操作。autorandr 有 udev、systemd 和 pm-utils 钩子,当新的显示器出现时 autorandr --change 应该会立即运行。如果需要,也可以手动运行 autorandr --change 或 autorandr - load workstation。你也可以在加载配置后在 ~/.config/autorandr/$PROFILE/postswitch 添加自己的脚本来运行。由于我运行 i3,我的工作站配置如下所示:
#!/bin/bashxrandr --dpi 92xrandr --output DP2-2 --primaryi3-msg '[workspace="^(1|4|6)"] move workspace to output DP2-2;'i3-msg '[workspace="^(2|5|9)"] move workspace to output DP2-3;'i3-msg '[workspace="^(3|8)"] move workspace to output DP2-1;'
它适当地修正了 dpi,设置主屏幕(可能不需要?),并移动 i3 工作区。你可以通过在配置文件目录中添加一个 block 钩子来安排配置永远不会运行。如果你定期更换显示器,请看一下!via: https://www.donarmstrong.com/posts/autorandr/作者:Don Armstrong 译者:geekpi 校对:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出Media

via https://linux.cn/article-9260-1.html?utm_source=rss&utm_medium=rss
Debian 取代 Ubuntu 成为 Google 内部 Linux 发行版的新选择

Google 多年来一直使用基于 Ubuntu 的内部操作系统 Goobuntu。如今,Goobuntu 正在被基于 Debian Testing 的 gLinux 所取代。Media

via https://linux.cn/article-9265-1.html
关于 2018 云计算的四个预测:Severless、K8S、边缘计算、神龙

2010 年,没人能预见 7 年后的云会发展这么迅猛,当时李彦宏还认为云计算是新瓶装旧酒。 时至今日,企业数字化转型和人工智能的浪潮把云带到了一个新的高度。新年已至,又有哪些新的云物种和增长点值得关注呢?Media

via https://linux.cn/article-9266-1.html
如何找出并打包文件成 tar 包

我想找出所有的 *.doc 文件并将它们创建成一个 tar 包,然后存储在 /nfs/backups/docs/file.tar 中。Media

via https://linux.cn/article-9262-1.html
Wine 3.0 发布,支持 Android 图形驱动、Direct3D 11

2018 年伊始,Wine(Wine Is Not an Emulator) 项目发布了年度更新,释出了最新的 3.0 稳定版本。 Wine 是一个在 Linux 和 Unix 类操作系统上运行 Windows 应用及游戏的开源兼容层。Media

via https://linux.cn/article-9267-1.html
通过 Linux 命令行连接 Wifi

许多人喜欢用图形化的工具来管理电脑,但也有很多人不喜欢这样做。如果你比较喜欢命令行工具,管理 WiFi 会是件很痛苦的事情。然而,事情本不该如此。Media

via https://linux.cn/article-9269-1.html
修复 Debian 中的 vim 奇怪行为

我一直在想,为什么我服务器上 vim 为什么在鼠标方面表现得如此愚蠢:不能像平时那样跳转、复制、粘贴。尽管在 /etc/vim/vimrc.local 中已经设置了。Media

via https://linux.cn/article-9271-1.html
修复 Debian 中的 vim 奇怪行为

我一直在想,为什么我服务器上 vim 为什么在鼠标方面表现得如此愚蠢:不能像平时那样跳转、复制、粘贴。尽管在 /etc/vim/vimrc.local 中已经设置了。
set mouse=
最后我终于知道为什么了,多谢 bug #864074 并且修复了它。Media原因是,当没有 ~/.vimrc 的时候,vim 在 vimrc.local 之后加载 defaults.vim,从而覆盖了几个设置。在 /etc/vim/vimrc 中有一个注释(虽然我没有看到)解释了这一点:
" Vim will load $VIMRUNTIME/defaults.vim if the user does not have a vimrc." This happens after /etc/vim/vimrc(.local) are loaded, so it will override" any settings in these files." If you don't want that to happen, uncomment the below line to prevent" defaults.vim from being loaded." let g:skip_defaults_vim = 1
我同意这是在正常安装 vim 后设置 vim 的好方法,但 Debian 包可以做得更好。在错误报告中清楚地说明了这个问题:如果没有 ~/.vimrc,/etc/vim/vimrc.local 中的设置被覆盖。这在Debian中是违反直觉的 - 而且我也不知道其他包中是否采用类似的方法。由于 defaults.vim 中的设置非常合理,所以我希望使用它,但只修改了一些我不同意的项目,比如鼠标。最后,我在 /etc/vim/vimrc.local 中做了以下操作:
if filereadable("/usr/share/vim/vim80/defaults.vim") source /usr/share/vim/vim80/defaults.vimendif" now set the line that the defaults file is not reloaded afterwards!let g:skip_defaults_vim = 1" turn of mouseset mouse=" other override settings go here
可能有更好的方式来获得一个不依赖于 vim 版本的通用加载语句, 但现在我对此很满意。via: https://www.preining.info/blog/2017/10/fixing-vim-in-debian/作者:Norbert Preining 译者:geekpi 校对:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出Media

via https://linux.cn/article-9271-1.html?utm_source=rss&utm_medium=rss
最重要的 Firefox 命令行选项

本指南会列出对 FIrefox 来说比较重要的那些命令行选项。它并不包含所有的可选项,因为很多选项只用于特定的目的,对一般用户来说没什么价值。Media

via https://linux.cn/article-9272-1.html
ftrace:跟踪你的内核函数!

ftrace 是一个 Linux 内核特性,它可以让你去跟踪 Linux 内核的函数调用。为什么要这么做呢?好吧,假设你调试一个奇怪的问题,而你已经得到了你的内核版本中这个问题在源代码中的开始的位置,而你想知道这里到底发生了什么?Media

via https://linux.cn/article-9273-1.html
与 C 语言长别离

我意识到了一个让我震惊的事实 —— 我有着 35 年的 C 语言经验。每周我都要写很多 C 代码,但是我已经记不清楚上一次我 创建一个新的 C 语言项目 是在什么时候了。Media

via https://linux.cn/article-9268-1.html
使用 Vi/Vim 编辑器:高级概念

早些时候我们已经讨论了一些关于 VI/VIM 编辑器的基础知识,但是 VI 和 VIM 都是非常强大的编辑器,还有很多其他的功能可以和编辑器一起使用。在本教程中,我们将学习 VI/VIM 编辑器的一些高级用法。Media

via https://linux.cn/article-9274-1.html
为什么车企纷纷招聘计算机安全专家

Media来自 CloudFlare 公司的网络安全专家 Marc Rogers(左)和来自 Lookout 的 Kevin Mahaffey 能够通过直接连接在汽车上的笔记本电脑控制特斯拉汽车进行许多操作。图为他们在 CloudFlare 的大厅里的的熔岩灯前的合影,这些熔岩灯被用来生成密匙。(纽约时报 Credit ,Christie Hemm Klok 拍摄)大约在七年前,伊朗的几位顶级核科学家经历过一系列形式类似的暗杀:凶手的摩托车接近他们乘坐的汽车,把磁性炸弹吸附在汽车上,然后逃离并引爆炸弹。安全专家们警告人们,再过 7 年,凶手们不再需要摩托车或磁性炸弹。他们所需要的只是一台笔记本电脑和发送给无人驾驶汽车的一段代码——让汽车坠桥、被货车撞扁或者在高速公路上突然抛锚。汽车制造商眼中的无人驾驶汽车。在黑客眼中只是一台可以达到时速 100 公里的计算机。网络安全公司 CloudFlare 的首席安全研究员马克·罗杰斯Marc Rogers说:“它们已经不再是汽车了。它们是装在车轮上的数据中心。从外界接收的每一条数据都可以作为黑客的攻击载体。“两年前,两名“白帽”黑客(寻找系统漏洞并修复它们的研究员,而不是利用漏洞来犯罪的破坏者Cracker)成功地在数里之外用电脑获得了一辆 Jeep Cherokee 的控制权。他们控制汽车撞击一个放置在高速公路中央的假人(在场景设定中是一位紧张的记者),直接终止了假人的一生。黑客 Chris Valasek 和 Charlie Miller(现在是 Uber 和滴滴的安全研究人员)发现了一条 由 Jeep 娱乐系统通向仪表板的电路。他们利用这条线路控制了车辆转向、刹车和变速——他们在高速公路上撞击假人所需的一切。Miller 先生上周日在 Twitter 上写道:“汽车被黑客入侵成为头条新闻,但是人们要清楚,没有谁的汽车被坏人入侵过。 这些只是研究人员的测试。”尽管如此,Miller 和 Valasek 的研究使 Jeep 汽车的制造商菲亚特克莱斯勒Fiat Chrysler付出了巨大的代价,因为这个安全漏洞,菲亚特克莱斯勒被迫召回了 140 万辆汽车。毫无疑问,后来通用汽车首席执行官玛丽·巴拉Mary Barra把网络安全作为公司的首要任务。现在,计算机网络安全领域的人才在汽车制造商和高科技公司推进的无人驾驶汽车项目中的需求量很大。优步 、特斯拉、苹果和中国的滴滴一直在积极招聘像 Miller 先生和 Valasek 先生这样的白帽黑客,传统的网络安全公司和学术界也有这样的趋势。去年,特斯拉挖走了苹果 iOS 操作系统的安全经理 Aaron Sigel。优步挖走了 Facebook 的白帽黑客 Chris Gates。Miller 先生在发现 Jeep 的漏洞后就职于优步,然后被滴滴挖走。计算机安全领域已经有数十名优秀的工程师加入无人驾驶汽车项目研究的行列。Miller 先生说,他离开了优步的一部分原因是滴滴给了他更自由的工作空间。Miller 星期六在 Twitter 上写道:“汽车制造商对待网络攻击的威胁似乎更加严肃,但我仍然希望有更大的透明度。”像许多大型科技公司一样,特斯拉和菲亚特克莱斯勒也开始给那些发现并提交漏洞的黑客们提供奖励。通用汽车公司也做了类似的事情,但批评人士认为通用汽车公司的计划与科技公司们提供的计划相比诚意不足,迄今为止还收效甚微。在 Miller 和 Valasek 发现 Jeep 漏洞的一年后,他们又向人们演示了所有其他可能危害乘客安全的方式,包括劫持车辆的速度控制系统,猛打方向盘或在高速行驶下拉动手刹——这一切都是由汽车外的电脑操作的。(在测试中使用的汽车最后掉进路边的沟渠,他们只能寻求当地拖车公司的帮助)虽然他们必须在 Jeep 车上才能做到这一切,但这也证明了入侵的可能性。在 Jeep 被入侵之前,华盛顿大学和加利福尼亚大学圣地亚哥分校的安全研究人员第一个通过蓝牙远程控制轿车并控制其刹车。研究人员警告汽车公司:汽车联网程度越高,被入侵的可能性就越大。2015 年,安全研究人员们发现了入侵高度软件化的特斯拉 Model S 的途径。Rogers 先生和网络安全公司 Lookout 的首席技术官凯文·马哈菲Kevin Mahaffey找到了一种通过直接连接在汽车上的笔记本电脑控制特斯拉汽车的方法。一年后,来自中国腾讯的一支团队做了更进一步的尝试。他们入侵了一辆行驶中的特斯拉 Model S 并控制了其刹车器达12 米远。和 Jeep 不同,特斯拉可以通过远程安装补丁来修复那些可能被黑的安全漏洞。以上所有的例子中,入侵者都是无恶意的白帽黑客或者安全研究人员,但是给无人驾驶汽车制造商的教训是惨重的。黑客入侵汽车的动机是无穷的。在得知 Rogers 先生和 Mahaffey 先生对特斯拉 Model S 的研究之后,一位中国 app 开发者和他们联系、询问他们是否愿意分享或者出售他们发现的漏洞。(这位 app 开发者正在寻找后门,试图在特斯拉的仪表盘上偷偷安装 app)尽管犯罪分子们一直在积极开发、购买、使用能够破解汽车的关键通信数据的工具,但目前还没有证据能够表明犯罪分子们已经找到连接汽车的后门。但随着越来越多的无人驾驶和半自动驾驶的汽车驶入公路,它们将成为更有价值的目标。安全专家警告道:无人驾驶汽车面临着更复杂、更多面的入侵风险,每一辆新无人驾驶汽车的加入,都使这个系统变得更复杂,而复杂性不可避免地带来脆弱性。20 年前,平均每辆汽车有 100 万行代码,通用汽车公司的 2010 雪佛兰 Volt 有大约 1000 万行代码——比一架 F-35 战斗机的代码还要多。如今, 平均每辆汽车至少有 1 亿行代码。无人驾驶汽车公司预计不久以后它们将有 2 亿行代码。当你停下来考虑:平均每 1000 行代码有 15 到 50 个缺陷,那么潜在的可利用缺陷就会以很快的速度增加。“计算机最大的安全威胁仅仅是数据被删除,但无人驾驶汽车一旦出现安全事故,失去的却是乘客的生命。”一家致力于解决汽车安全问题的以色列初创公司 Karamba Security 的联合创始人 David Barzilai 说。安全专家说道:要想真正保障无人驾驶汽车的安全,汽车制造商必须想办法避免所有可能产生的漏洞——即使漏洞不可避免。其中最大的挑战,是汽车制造商和软件开发商们之间的缺乏合作经验。网络安全公司 Lookout 的 Mahaffey 先生说:“新的革命已经出现,我们不能固步自封,应该寻求新的思维。我们需要像发明出安全气囊那样的人来解决安全漏洞,但我们现在还没有看到行业内有人做出改变。”Mahaffey 先生说:“在这场无人驾驶汽车的竞争中,那些最注重软件的公司将会成为最后的赢家。”via: https://www.nytimes.com/2017/06/07/technology/why-car-companies-are-hiring-computer-security-experts.html作者:NICOLE PERLROTH 译者:XiatianSummer 校对:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出Media

via https://linux.cn/article-9275-1.html?utm_source=rss&utm_medium=rss
三步上手 GDB

调试 C 程序,曾让我很困扰。然而当我之前在写我的操作系统时,我有很多的 Bug 需要调试。我很幸运的使用上了 qemu 模拟器,它允许我将调试器附加到我的操作系统。这个调试器就是 gdb。Media

via https://linux.cn/article-9276-1.html
如何在 Linux 中从 PDF 创建视频

我在我的平板电脑中收集了大量的 PDF 文件,其中主要是 Linux 教程。有时候我懒得在平板电脑上看。我认为如果我能够从 PDF 创建视频,并在大屏幕设备(如电视机或计算机)中观看会更好。Media

via https://linux.cn/article-9277-1.html
2018 年 4 个需要关注的人工智能趋势

今年人工智能决策将变得更加透明吗?Media

via https://linux.cn/article-9280-1.html
python-hwinfo:使用 Linux 系统工具展示硬件信息概况

这是一个通过解析系统工具(例如 lspci 和 dmidecode)的输出,来检查硬件和设备的 Python 库。Media

via https://linux.cn/article-9278-1.html
如何根据文件权限查找文件

今天,在基于 Unix 的操作系统中,我们将见识如何通过权限查找文件。Media

via https://linux.cn/article-9279-1.html
创建一个简易 APT 仓库

Debian 仓库本质上可以看作是一个静态的网站,而且内容是经过 GPG 签名的,所以它不一定需要托管在某个可信任的地方(除非可用性对你的程序来说是至关重要的)。Media

via https://linux.cn/article-9281-1.html
创建一个简易 APT 仓库

Media作为我工作的一部分,我所维护的 PATHspider 依赖于 cURLPycURL中的一些刚刚合并或仍在等待被合并的功能。我需要构建一个包含这些 Debian 包的 Docker 容器,所以我需要快速构建一个 APT 仓库。Debian 仓库本质上可以看作是一个静态的网站,而且内容是经过 GPG 签名的,所以它不一定需要托管在某个可信任的地方(除非可用性对你的程序来说是至关重要的)。我在 Netlify(一个静态的网站主机)上托管我的博客,我认为它很合适这种情况。他们也支持开源项目。你可以用下面的命令安装 netlify 的 CLI 工具:
sudo apt install npmsudo npm install -g netlify-cli
设置仓库的基本步骤是:
mkdir repositorycp /path/to/*.deb repository/cd repositoryapt-ftparchive packages . > Packagesapt-ftparchive release . > Releasegpg --clearsign -o InRelease Releasenetlify deploy
当你完成这些步骤后,并在 Netlify 上创建了一个新的网站,你也可以通过 Web 界面来管理这个网站。你可能想要做的一些事情是为你的仓库设置自定义域名,或者使用 Let's Encrypt 启用 HTTPS。(如果你打算启用 HTTPS,请确保命令中有 apt-transport-https。)要将这个仓库添加到你的 apt 源:
gpg --export -a YOURKEYID | sudo apt-key add -echo "deb https://SUBDOMAIN.netlify.com/ /" | sudo tee -a /etc/apt/sources.listsudo apt update
你会发现这些软件包是可以安装的。注意下 APT pinnng,因为你可能会发现,根据你的策略,仓库上的较新版本实际上并不是首选版本。更新:如果你想要一个更适合平时使用的解决方案,请参考 repropro。如果你想让最终用户将你的 apt 仓库作为第三方仓库添加到他们的系统中,请查看 Debian wiki 上的这个页面,其中包含关于如何指导用户使用你的仓库。更新 2:有一位评论者指出用 aptly,它提供了更多的功能,并消除了 repropro 的一些限制。我从来没有用过 aptly,所以不能评论具体细节,但从网站看来,这是一个很好的工具。via: https://iain.learmonth.me/blog/2017/2017w383/作者:Iain R. Learmonth 译者:geekpi 校对:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出Media

via https://linux.cn/article-9281-1.html?utm_source=rss&utm_medium=rss