IT 评论

Lennart Poettering 宣布召开首届 systemd.conf 会议

备受争议的 Linux 初始化系统和服务管理器 Systemd 的创始人 Lennart Poettering 宣布即将召开首届systemd会议 :systemd.conf,它将于11月5日到7日在德国柏林举办。 systemd 项目是当今大多数 Linux 发行版的核心部件。在 systemd.conf 2015 上,将讨论 Linux 核心平台的现状和发展。参会者主要是开发者、发行版打包人员等。会议还包括一个黑客节活动。 本次大会的网址是: https://systemd.events/  注册地址: https://systemd.events/systemdconf-2015/registration ,在 8/16 前注册会有折扣。 本次大会也在征集演讲: https://systemd.events/systemdconf-2015/add/session 。 来源:https://linux.cn/article-5946-1.html

GitHub融资2.5亿美元,估值约20亿美元

据《华尔街日报》网络版报道,开源代码托管网站GitHub称,本周从知名硅谷风险投资公司融资2.5亿美元。据知情人士透露,本轮融资对GitHub估值增长至约20亿美元,其融资总额也增长至3.5亿美元。 GitHub本轮融资彰显出软件对所有产业日益增长的重要性,以及协作开发软件和分享代码日趋受到欢迎。迄今为止,GitHub成功的基础主要是开源软件的流行。 GitHub创办于2008年,被市场研究公司Forrester称作“开发者的Facebook”,有逾1000万名注册用户在协作开发2500万个软件项目。个人开发者利用GitHub存储、编写代码,并与其他开发者进行协作;企业和政府机构则利用它托管和管理软件项目。 GitHub对不公开的软件项目收费。机构可以通过付费在内部托管GitHub,方便内部人员分享代码。GitHub其他服务则是免费的。 投资者称,他们相信GitHub的管理团队。GitHub联合创始人、首席执行官克里斯·万斯特拉斯(Chris Wanstrath)对公司面临的机遇非常乐观,“我们希望进行大手笔投资”,在国际市场上扩张,并投资新产品,“目前全球有数以百万计的开发者,每天都有更多人在学习开发代码。我们的平台能‘孕育’优秀软件”。 红杉资本是GitHub这轮(B轮)融资的领投投资方,其他投资方包括Institutional Venture Partners、Thrive Capital和Andreessen Horowitz。Andreessen Horowitz 2012年曾对GitHub投资1亿美元。 来源:http://tech.ifeng.com/a/20150730/41406376_0.shtml

Slashdot 和 SourceForge 将再次被出售

Slashdot和SourceForge的母公司DHI Group Inc.(旧称Dice Holdings Inc.)在最新财报中宣布了出售 Slashdot Media的计划,它正在寻找买家。 DHI Group是在2012年收购了Geeknet的在线媒体业务,其中包括Slashdot、SourceForge,以及Linux、Unix等跨平台软件索引网站Freecode。DHI Group决定出售的理由是Slashdot业务不再符合该公司的策略,它要把精力集中在在线招聘业务上。   来源:http://www.solidot.org/story?sid=44933

阿里巴巴集团60亿增资阿里云 与用友签署战略合作

60亿战略增资阿里云  7月29日消息,阿里巴巴集团(BABA)宣布对旗下阿里云战略增资60亿元(约折合10亿美元),用于国际业务拓展,云计算、大数据领域基础和前瞻技术的研发,以及DT生态体系的建设。阿里巴巴集团CEO张勇认为,阿里云已迎来最好的机遇,在技术和商业上更进一步,成为DT世界的引擎。   获得战略增资后,阿里云将加速在全球部署下一代的数据中心,开发更加丰富、高性能的计算和数据产品,提供更优质的网络,并在全球寻找更有潜力的DT(Data Technology)合作伙伴。   阿里巴巴集团CEO张勇表示:”经过六年多的持续投入和建设,阿里云已经成为中国最大,全球领先的云计算服务平台。今天,数据经济和实体经济大融合的趋势下,阿里云本质上应是新经济的引擎。60亿投入只是开始,我们希望阿里云能不断赋予所有商家、合作伙伴新的能力,帮助所有企业升级基础设施,直接连接消费者,将数据转化为生产力,最终从IT走向DT。这不仅对阿里自身,对整个社会新经济来讲,都是最重要的事。”   国际业务拓展方面,目前,阿里云开放了包括硅谷、香港在内的6个数据中心,为超过百万的各类客户提供服务,业务正以超过100%的速度增长。同时,阿里云正计划在香港、美国设立第2个数据中心,并在新加坡、中东、日本、欧洲部署新的数据中心。阿里云还将投资国际网络建设,提升云计算用户在中国与海外之间的通信访问质量。   基础和前瞻技术领域的研发方面,阿里云将加大对芯片、存储、网络硬件、大规模计算集群和软硬件一体化的研发投入,在人类科技最前沿的通信领域投入研究,在技术战略层面进行深度资源整合,提升核心技术竞争力。   在DT生态体系建设方面,阿里云将在大数据领域进行前沿探索投资;制定针对合作伙伴向DT转型的扶持计划;开展高校合作,进行云计算科普教育,培养更多人掌握云计算和大数据的知识技能。   经过6年的技术沉淀,阿里云在云计算基础设施领域,覆盖了从域名、备案、解析、计算、网络、存储、数据库、安全、海量数据分析到互联网中间件等一站式服务,并已在众多领域步入全球TOP行列,向全球顶尖的云计算公司迈进。   几天前,阿里云在一天内集中发布并预告了21款新产品。新品包括读写性能超群的SSD云盘、可一键搭建混合云的VPC服务、基于PostgreSQL并兼容Oracle的云数据库、支持Redis的KV数据库、以及应用于基因测序与渲染等行业的批量计算等。即将推出的产品包括了金融级自研数据库Oceanbase、SSD本地盘、海外CDN节点、StreamSQL等。此外,阿里云还透露即将推出基于GPU的高性能计算与加速器,支持深度学习领域的应用。   张勇表示,商业变革的奇点临近,从IT向DT的转型中,云计算是引擎,大数据是新能源。阿里巴巴集团积累了全球最丰富的大数据实践,这些技术和经验也将通过阿里云平台,以产品服务的方式分享给全球的公司和合作伙伴,共建DT世界。 阿里巴巴与用友签署全面战略合作协议 7月29日,阿里巴巴集团同用友网络签署战略合作协议,云计算成为两大行业巨头共同谋求的发展重点。 用友网络董事长兼CEO王文京在现场发言中透露了合作的初衷。他说,希望通过对接阿里巴巴的生态资源,把电子商务和云计算服务与企业管理和运营服务打通,为企业客户创造出聚合效应和全新价值。“在全面服务中国及全球企业互联网化的同时,也将加速用友自身的创新发展。” 在云计算领域,具体合作内容包括:用友将旗下多款产品逐步迁入阿里云,在云上向企业提供SaaS化的服务。企业将可一站式获得阿里云提供的高可靠、强性能的云计算支持,以及用友网络提供的多样化行业解决方案和企业互联网服务。阿里巴巴和用友网络这两大生态体系也将在阿里云平台上实现融通。 以用友旗下畅捷通为例。畅捷通面向不同成长阶段的小微企业提供基于云计算的财务、销售、管理等服务,是国内SaaS领域第一家上市公司。此次合作之后,畅捷通产品将陆续迁入阿里云平台,小微企业将可获得更为稳定、可靠、强悍的云计算支撑。如果恰好这些企业在天猫、淘宝等开展业务,那他们有望享受到数据带来的创新动力。 按照阿里云业务总经理刘松的描绘:未来你在天猫上对某一款产品的评价在经过语义识别后,将会通过阿里云实时传输到企业的前、中、后端。产品经理的年终奖不仅你说了算,可能下一代产品都将为你量身打造。 如果觉得这还太遥远,那就在眼下的是:阿里云上将迎来一大波SaaS化的服务和行业解决方案,阿里云生态优势迅速拉升。 用友网络是亚太本土最大的企业管理软件与服务提供商,拥有超过200万的企业及政府客户。通过27年的行业积累,用友网络的产品和服务在财务、汽车、金融、医疗、能源等垂直领域均有广泛应用。 面对企业互联网化的浪潮,用友很早之前就启动了对软件系统“云+端”的改造。同阿里云的合作,将进一步加速这一进程。显然,改造后的软件必将在阿里云上向企业开放,这对丰富阿里云的生态而言意义重大。 对用友而言,这一模式的发展空间不可限量,Salesforce堪称典型。在美国,Salesforce只有十多年的时间,却让发展了四、五十年的企业软件巨头Oracle(甲骨文)在CRM领域岌岌可危。Salesforce基于SaaS模式,为企业按需提供云CRM服务,让用户在电脑、手机端实现同步管理客户关系,促进销售。其不用安装服务器、无需前期开发和复杂后台管理、还能连接最流行的社交网络和企业端等特性,顿时甩了传统CRM几条街。 行业观察人士分析,用友是国内最大的SaaS服务商,阿里云是国内最大的IaaS平台,二者的结合将至少带动中国30%的企业加速采用云计算。同时,双方的联合进一步推高了云计算的准入门槛,创业窗口期已然关闭,纯粹基于技术和产品的竞争已属于过去式。阿里云除了提供强大和丰富的产品技术之外,在与之搭档的生态方面也树立了难以企及的高度。简而言之,云计算全面进入了生态级竞争阶段。 阿里云总裁胡晓明认为,在数据经济和实体经济全面融合的时代,大数据是新经济的能源,云计算将成为引擎。同用友网络的全面合作,将为企业输送云计算和大数据能力,助力企业向DT转型。 更多了解阿里云:http://click.aliyun.com/m/1334/

Linux有问必答:如何为在Linux中安装兄弟牌打印机

提问: 我有一台兄弟牌HL-2270DW激光打印机,我想从我的Linux机器上打印文档。我该如何在我的电脑上安装合适的驱动并使用它? 兄弟牌以买得起的紧凑型激光打印机而闻名。你可以用低于200美元的价格得到高质量的WiFi/双工激光打印机,而且价格还在下降。最棒的是,它们还提供良好的Linux支持,因此你可以在Linux中下载并安装它们的打印机驱动。我在一年前买了台HL-2270DW,我对它的性能和可靠性都很满意。 下面是如何在Linux中安装和配置兄弟打印机驱动。本篇教程中,我会演示安装HL-2270DW激光打印机的USB驱动。 首先通过USB线连接你的打印机到Linux上。 准备 在准备阶段,进入兄弟官方支持网站,输入你的型号(比如:HL-2270DW)搜索你的兄弟打印机型号。 进入下面页面后,选择你的Linux平台。对于Debian、Ubuntu或者其他衍生版,选择“Linux (deb)”。对于Fedora、CentOS或者RHEL选择“Linux (rpm)”。 下一页,你会找到你打印机的LPR驱动和CUPS包装器驱动。前者是命令行驱动,后者允许你通过网页管理和配置你的打印机。尤其是基于CUPS的图形界面对(本地、远程)打印机维护非常有用。建议你安装这两个驱动。点击“Driver Install Tool”下载安装文件。 运行安装文件之前,你需要在64位的Linux系统上做另外一件事情。 因为兄弟打印机驱动是为32位的Linux系统开发的,因此你需要按照下面的方法安装32位的库。 在早期的Debian(6.0或者更早期)或者Ubuntu(11.04或者更早期),安装下面的包。 $ sudo apt-get install ia32-libs 对于已经引入多架构的新的Debian或者Ubuntu而言,你可以安装下面的包: $ sudo apt-get install lib32z1 lib32ncurses5 上面的包代替了ia32-libs包。或者你只需要安装: $ sudo apt-get install lib32stdc++6 如果你使用的是基于Red… read more »

如何在 Fedora 22 上面配置 Apache 的 Docker 容器

在这篇文章中,我们将会学习关于Docker的一些知识,如何使用Docker部署Apache httpd服务,并且共享到Docker Hub上面去。首先,我们学习怎样拉取和使用Docker Hub里面的镜像,然后在一个Fedora 22的镜像上交互式地安装Apache,之后我们将会学习如何用一个Dockerfile文件来以一种更快,更优雅的方式制作一个镜像。最后,我们将我们创建的镜像发布到Docker Hub上,这样以后任何人都可以下载并使用它。 安装并初体验Docker 要求 运行Docker,你至少需要满足这些: 你需要一个64位的内核,版本3.10或者更高 Iptables 1.4 – Docker会用它来做网络配置,如网络地址转换(NAT) Git 1.7 – Docker会使用Git来与仓库交流,如Docker Hub ps – 在大多数环境中这个工具都存在,在procps包里有提供 root – 尽管一般用户可以通过TCP或者其他方式来运行Docker,但是为了简化,我们会假定你就是root 使用dnf安装docker 以下的命令会安装Docker dnf update && dnf install docker 注意:在Fedora 22里,你仍然可以使用Yum命令,但是它被DNF取代了,而且在纯净安装时不可用了。… read more »

HTTP 的内容安全策略(CSP)

本文介绍的是W3C的Content Security Policy,简称CSP。顾名思义,这个规范与内容安全有关,主要是用来定义页面可以加载哪些资源,减少XSS的发生。 Chrome扩展已经引入了CSP,通过manifest.json中的content_security_policy字段来定义。一些现代浏览器也支持通过响应头来定义CSP。下面我们主要介绍如何通过响应头来使用CSP,Chrome扩展中CSP的使用可以参考Chrome官方文档。 浏览器兼容性 早期的Chrome是通过X-WebKit-CSP响应头来支持CSP的,而firefox和IE则支持X-Content-Security-Policy,Chrome25和Firefox23开始支持标准的的Content-Security-Policy,见下表。 响应头 Chrome Firefox Safari IE Content-Security-Policy 25+ 23+ – – X-Content-Security-Policy – 4.0+ – 10.0(有限的) X-Webkit-CSP 14+ – 6+ – 完整的浏览器CSP支持情况请移步CanIUse。 如何使用 要使用CSP,只需要服务端输出类似这样的响应头就行了: Content-Security-Policy: default-src ‘self’ default-src是CSP指令,多个指令之间用英文分号分割;’self’是指令值,多个指令值用英文空格分割。目前,有这些CSP指令: 指令 指令值示例… read more »

一些安全相关的 HTTP 响应头

现代浏览器提供了一些安全相关的响应头,使用这些响应头一般只需要修改服务器配置即可,不需要修改程序代码,成本很低。本文介绍一些这样的响应头: 1. Strict-Transport-Security HTTP Strict Transport Security,简称为HSTS。它允许一个HTTPS网站,要求浏览器总是通过HTTPS来访问它。现阶段,除了Chrome浏览器,Firefox4+,以及Firefox的NoScript扩展都支持这个响应头。 我们知道HTTPS相对于HTTP有更好的安全性,而很多HTTPS网站,也可以通过HTTP来访问。开发人员的失误或者用户主动输入地址,都有可能导致用户以HTTP访问网站,降低了安全性。一般,我们会通过Web Server发送301/302重定向来解决这个问题。现在有了HSTS,可以让浏览器帮你做这个跳转,省一次HTTP请求。另外,浏览器本地替换可以保证只会发送HTTPS请求,避免被劫持。 要使用HSTS,只需要在你的HTTPS网站响应头中,加入下面这行: strict-transport-security: max-age=16070400; includeSubDomains includeSubDomains是可选的,用来指定是否作用于子域名。支持HSTS的浏览器遇到这个响应头,会把当前网站加入HSTS列表,然后在max-age指定的秒数内,当前网站所有请求都会被重定向为https。即使用户主动输入http://或者不输入协议部分,都将重定向到https://地址。 Chrome内置了一个HSTS列表,默认包含Google、Paypal、Twitter、Linode等等服务。我们也可以在Chrome输入chrome://net-internals/#hsts,进入HSTS管理界面。在这个页面,你可以增加/删除/查询HSTS记录。例如,你想一直以https访问某网址,通过“add Domain”加上去就好了。查看Chrome内置的全部HSTS列表,或者想把自己的网站加入这个列表,请点这里。 2. X-Frame-Options X-Frame-Options,已经转正为Frame-Options,但现阶段使用最好还是带上X-。Chrome4+、Firefox3.6.9+、IE8+均支持,详细的浏览器支持情况看这里。使用方式如下: x-frame-options: SAMEORIGIN 这个响应头支持三种配置: DENY:不允许被任何页面嵌入; SAMEORIGIN:不允许被本域以外的页面嵌入; ALLOW-FROM uri:不允许被指定的域名以外的页面嵌入(Chrome现阶段不支持); 如果某页面被不被允许的页面以或的形式嵌入,IE会显示类似于“此内容无法在框架中显示”的提示信息,Chrome和Firefox都会在控制台打印信息。由于嵌入的页面不会加载,这就减少了点击劫持(Clickjacking)的发生。 3. X-XSS-Protection 顾名思义,这个响应头是用来防范XSS的。最早我是在介绍IE8的文章里看到这个,现在主流浏览器都支持,并且默认都开启了XSS保护,用这个header可以关闭它。它有几种配置: 0:禁用XSS保护; 1:启用XSS保护; 1; mode=block:启用XSS保护,并在检查到XSS攻击时,停止渲染页面(例如IE8中,检查到攻击时,整个页面会被一个#替换); 浏览器提供的XSS保护机制并不完美,但是开启后仍然可以提升攻击难度,总之没有特别的理由,不要关闭它。… read more »

lsyncd 实时同步搭建指南

1. 几大实时同步工具比较 1.1 inotify + rsync 最近一直在寻求生产服务服务器上的同步替代方案,原先使用的是inotify + rsync,但随着文件数量的增大到100W+,目录下的文件列表就达20M,在网络状况不佳或者限速的情况下,变更的文件可能10来个才几M,却因此要发送的文件列表就达20M,严重减低的带宽的使用效率以及同步效率;更为要紧的是,加入inotifywait在5s内监控到10个小文件发生变化,便会触发10个rsync同步操作,结果就是真正需要传输的才2-3M的文件,比对的文件列表就达200M。使用这两个组合的好处在于,它们都是最基本的软件,可以通过不同选项做到很精确的控制,比如排除同步的目录,同步多个模块或同步到多个主机。 1.2 sersync 后来听同事说 sersync 这么个工具可以提高同步的性能,也解决了同步大文件时出现异常的问题,所以就尝试了一下。sersync是国内的一个开发者开源出来的,使用c++编写,采用多线程的方式进行同步,失败后还有重传机制,对临时文件过滤,自带crontab定时同步功能。网上看到有人说性能还不错,说一下我的观点: 国产开源,文档不是很全,在2011年之后就没更新了(googlecode都要快关闭了,其实可以转交其他人维护),网上关于它的使用和讨论都止于10年了 采用xml配置文件的方式,可读性比较好,但是有些原生的有些功能没有实现就没法使用了 无法实现多目录同步,只能通过多个配置文件启动多个进程 文件排除功能太弱。这个要看需求,不是每个人都需要排除子目录。而对于我的环境中,这个功能很重要,而且排除的规则较多 虽然提供插件的功能,但很鸡肋,因为软件本身没有持续更新,也没有看到贡献有其它插件出现(可能是我知识面不够,还用不到里面的refreshCDN plugin)。 虽然不懂c++,但大致看了下源码 FileSynchronize,拼接rsync命令大概在273行左右,最后一个函数就是排除选项,简单一点可以将–exclude=改成–eclude-from来灵活控制。有机会再改吧。 另外,在作者的文章 Sersync服务器同步程序 项目简介与设计框架 评论中,说能解决上面 rsync + inotify中所描述的问题。阅读了下源码,这个应该是没有解决,因为在拼接rsync命令时,后面的目的地址始终是针对module的,只要执行rsync命令,就会对整个目录进行遍历,发送要比对的文件列表,然后再发送变化的文件。sersync只是减少了监听的事件,减少了rsync的次数——这已经是很大的改进,但每次rsync没办法改变。(如有其它看法可与我讨论) 其实我们也不能要求每一个软件功能都十分健全,关键是看能否满足我们当下的特定的需求。所谓好的架构不是设计出来的,而是进化来的。目前使用sersync2没什么问题,而且看了它的设计思路应该是比较科学的,特别是过滤队列的设计。双向同步看起来也是可以实现。 1.3 lsyncd 废话说这么多,本文就是介绍它了。有些博客说lsyncd是谷歌开源的,实际不是了,只是托管在了googlecode上而已,幸运的是已经迁移到github了:https://github.com/axkibe/lsyncd 。 Lysncd 实际上是lua语言封装了 inotify 和 rsync 工具,采用了 Linux 内核(2.6.13… read more »

PHP 7.0 升级备注

PHP 7.0.0 beta1 发布了,在带来了引人注目的性能提升的同时,也带来了不少语言特性方面的改变。以下由 LCTT 翻译自对官方的升级备注,虽然目前还不是正式发布版,不过想必距离正式发布的特性已经差别不大了。(本文会持续追踪更新)   1. 向后不兼容的变化 语言变化 变量处理的变化 间接变量、属性和方法引用现在以从左到右的语义进行解释。一些例子: $$foo[‘bar’][‘baz’] // 解释做 ($$foo)[‘bar’][‘baz’] $foo->$bar[‘baz’] // 解释做 ($foo->$bar)[‘baz’] $foo->$bar[‘baz’]() // 解释做 ($foo->$bar)[‘baz’]() Foo::$bar[‘baz’]() // 解释做 (Foo::$bar)[‘baz’]() 要恢复以前的行为,需要显式地加大括号: ${$foo[‘bar’][‘baz’]} $foo->{$bar[‘baz’]} $foo->{$bar[‘baz’]}() Foo::{$bar[‘baz’]}() 全局关键字现在只接受简单变量。像以前的 global… read more »

从 Vim 到 Emacs 到 Evil

半个多月前,缘由 Vim 的一点小需求无法实现,我开始尝试 Emacs。从初窥门径到配置出完全满足我的一切,中途曾一度不可自拔,工作之余、入睡之前都在看 Emacs 的文档资料。发现我的控制欲特别强,不达目的不愿罢休。好在 Emacs 的确是个强大的平台,不负我望,在积累了一定的 elisp 基础之后就很快突破瓶颈,轻松定制出自己的编辑器。折腾 Emacs 就是 “山重水复疑无路,柳暗花明又一村”,时而线索终端而疲惫不堪,时而找到突破而满是成就感。总的来说 Emacs 的许多功能都无法 work out of the box,很多地方缺少面对新手的文档。只有熟悉了 Emacs 的理念,学习了 elisp 这门语言后再去 hack 他,才能为我所用。像 Gentoo 一样,Emacs 非常适合以及需要折腾,因为他只是个 Platform,而非 Editor。 Why 我使用 Linux 和… read more »

诊断并解决 SSH 连接慢的方法

每次PuTTY使用SSH登录到远程的Linux进行管理的时候,远程登录的过程都非常慢——输入完用户名之后,非要等到30秒左右才会出来输入密码的提示。在实际处理问题的时候,特别需要快速响应的时候,这种状况着实让人难以忍受。 但后来具体测试了一下,发现这又并非是每种系统的通病,出现问题的机器主要集中的CentOS上,同样的Debian系统,在远程连接的过程就是健步如飞,丝毫没有卡顿犹豫的感觉。这难道是CentOS的问题? 出于好奇,查看了下两个系统在SSH时的差别 CentOS: ssh -v ssh_test@192.168.128.137 SSH远程登录的时候显示的信息如下: OpenSSH_6.0p1 Debian-4, OpenSSL 1.0.1e 11 Feb 2013 …Some sensitive information… debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3 debug1: match: OpenSSH_5.3 pat OpenSSH_5* debug1: Enabling compatibility… read more »

如何让你的 Docker 镜像更小

Docker是个好东西毋庸置疑,甚至可以称其为万金油,什么场合都看到他的身影。自14年底开始,小到防污染的DNS、CoreOS的socks5代理,大点到开发团队的CI系统,一些Web项目等等,都有在用,并且稳定性非常好,使用起来也方便,但是最近经常发现各大论坛、网站、文档在使用Docker镜像的时候常常发现的一个误区,谨以此文抛砖引玉。 让我们从一个dockerfile说起,缘起我5月写的一个2048的Docker镜像,当时是在csphere的群里,以游戏的形式,教人快速的集成Web服务,提供服务。我们首先来看一个传统的镜像写法: FROM ubuntu:12.04 RUN apt-get update RUN apt-get install -y nginx zip curl RUN echo “daemon off;” >> /etc/nginx/nginx.conf RUN curl -o /usr/share/nginx/www/master.zip -L https://codeload.github.com/gabrielecirulli/2048/zip/master RUN cd /usr/share/nginx/www/ && unzip master.zip && mv 2048-master/* . && rm -rf 2048-master master.zip EXPOSE 80 CMD [“/usr/sbin/nginx”, “-c”, “/etc/nginx/nginx.conf”] 解读一下: 基于ubuntu12.04,先来一个更新,然后安装nginx、zip、curl,配置nginx,下载2048代码,解压再放到指定位置,删除原始文件,抛出80端口,最后是执行命令。 这样的dockerfile再熟悉不过了吧,随便docker hub或者其他教学文档都是这样,接下来,我们来谈谈中间的毛病。 pull一个ubuntu需要多少时间,占多大的空间?(初学者好多在这一步就头痛) ubuntu在没有添加中国镜像源的情况,更新是个多么痛苦的事?(灯,等等等等) 配置啰嗦(麻烦,麻烦) 整个生成的镜像硕大无比,玩个2048不需要这么复杂。 光提问题,不给解决方案就是耍流氓,还是看dockerfile: FROM alpine:latest MAINTAINER alex alexwhen@gmail.com RUN apk –update add nginx COPY . /usr/share/nginx/html EXPOSE 80 CMD [“nginx”, “-g”, “daemon off;”] 极简化的利用dockerfile和base镜像和github的特性,能少一句就少一句,动动手试一下,这样build出来,整个镜像不超过10M,回过头来看看前面的镜像,光一个ubuntu得多大啊,实在是居家必备。   Docker是个好东西,应用的时候充分考虑自己的使用环境,不要动不动就FROM ubuntu、debian、centos。alpine是一个非常好的base,包管理系统比较完善,神器啊。 本人的docker-2048,可以从以下方式获得: github:https://github.com/alexwhen/docker-2048注:你可以在此基础上玩出更多你想要的东西 直接运行: docker run -d… read more »

Centos 中如何快速定制二进制的内核 RPM 包

随着Linux服务器越来越多了,底层系统内核想要保持版本统一就需要定制专门的二进制安装包来便捷的升级和管理。 RedHat系那当然就是使用rpmbuild来做定制化管理了。 今天我们分俩个部分(root和普通用户)来讲解如何制作内核的二进制rpm包。 Building主机系统环境约定: OS : CentOS release 6.6 Arch : i686 一,rpm包简单定制 注意: 这里我们首先要预留至少20GB的临时文件空间。 1、rpm 制作前的环境准备: yum -y groupinstall “Development Tools” yum -y install ncurses-devel qt-devel yum -y install rpm-build redhat-rpm-config asciidoc hmaccalc perl-ExtUtils-Embed… read more »

互联网扫描器 ZMap 完全手册

初识 ZMap ZMap被设计用来针对整个IPv4地址空间或其中的大部分实施综合扫描的工具。ZMap是研究者手中的利器,但在运行ZMap时,请注意,您很有可能正在以每秒140万个包的速度扫描整个IPv4地址空间 。我们建议用户即使在实施小范围扫描之前,也联系一下本地网络的管理员并参考我们列举的最佳扫描体验。 默认情况下,ZMap会对于指定端口实施尽可能大速率的TCP SYN扫描。较为保守的情况下,对10,000个随机的地址的80端口以10Mbps的速度扫描,如下所示: $ zmap –bandwidth=10M –target-port=80 –max-targets=10000 –output-file=results.csv 或者更加简洁地写成: $ zmap -B 10M -p 80 -n 10000 -o results.csv ZMap也可用于扫描特定子网或CIDR地址块。例如,仅扫描10.0.0.0/8和192.168.0.0/16的80端口,运行指令如下: zmap -p 80 -o results.csv 10.0.0.0/8 192.168.0.0/16 如果扫描进行的顺利,ZMap会每秒输出类似以下内容的状态更新: 0% (1h51m left);… read more »

Dockerfile 命令介绍及实例

基础镜像可以用于创建Docker容器。镜像可以非常基础,仅仅包含操作系统;也可以非常丰富,包含灵巧的应用栈,随时可以发布。当你在使用Docker构建镜像的时候,每一个命令都会在前一个命令的基础上形成一个新层。这些基础镜像可以用于创建新的容器。本篇文章将手把手教您如何从基础镜像,一步一步,一层一层的从Dockerfile构建容器的过程。 Docker简介 Docker项目提供了构建在Linux内核功能之上,协同在一起的的高级工具。其目标是帮助开发和运维人员更容易地跨系统跨主机交付应用程序和他们的依赖。Docker通过Docker容器,一个安全的,基于轻量级容器的环境,来实现这个目标。这些容器由镜像创建,而镜像可以通过命令行手工创建或者通过Dockerfile自动创建。 Dockerfile Dockerfile是由一系列命令和参数构成的脚本,这些命令应用于基础镜像并最终创建一个新的镜像。它们简化了从头到尾的流程并极大的简化了部署工作。Dockerfile从FROM命令开始,紧接着跟随者各种方法,命令和参数。其产出为一个新的可以用于创建容器的镜像。 Dockerfile 语法 在我们深入讨论Dockerfile之前,让我们快速过一下Dockerfile的语法和它们的意义。 什么是语法? 非常简单,在编程中,语法意味着一个调用命令,输入参数去让应用执行程序的文法结构。这些语法被规则或明或暗的约束。程序员遵循语法规范以和计算机交互。如果一段程序语法不正确,计算机将无法识别。Dockerfile使用简单的,清楚的和干净的语法结构,极为易于使用。这些语法可以自我释义,支持注释。 Dockerfile 语法示例 Dockerfile语法由两部分构成,注释和命令+参数 # Line blocks used for commenting command argument argument .. 一个简单的例子: # Print “Hello docker!” RUN echo “Hello docker!” Dockerfile 命令 Dockerfile有十几条命令可用于构建镜像,下文将简略介绍这些命令。… read more »

Linux 的 OOM 终结者

现在是早晨6点钟。已经醒来的我正在总结到底是什么事情使得我的起床闹铃提前了这么多。故事刚开始的时候,手机铃声恰好停止。又困又烦躁的我看了下手机,看看是不是我自己疯了把闹钟调得这么早,居然是早晨5点。然而不是,而是我们的监控系统显示,Plumbr服务出故障了。 作为这个领域的经验丰富的老鸟,我打开了咖啡机,这是正确解决问题的第一步。一杯咖啡在手之后,现在我可以开始处理故障了。首先要怀疑的是应用程序本身,因为它在崩溃之前一点异常也没有。应用程序日志中没有错误,没有警告,也没有任何可疑的信息。 我们部署的监控系统发现进程已经挂掉了并重启了服务。由于现在咖啡因已经流淌在我的血液中了,我开始变得信心十足。果然在30分钟后,我在/var/log/kern.log日志中发现了下面的信息: Jun 4 07:41:59 plumbr kernel: [70667120.897649] Out of memory: Kill process 29957 (java) score 366 or sacrifice child Jun 4 07:41:59 plumbr kernel: [70667120.897701] Killed process 29957 (java) total-vm:2532680kB, anon-rss:1416508kB, filers:0kB 很明显我们被Linux内核给坑了。你知道的,Linux里面有许多邪恶的怪物(也叫作守护进程)。这些守护进程是由几个内核作业所看管的,其中的一个犹为恶毒。所有的现代Linux内核中都会有一个内存不足终结者(Out… read more »

SSL/TLS 原理详解

本文大部分整理自网络,相关文章请见文后参考。 SSL/TLS作为一种互联网安全加密技术,原理较为复杂,枯燥而无味,我也是试图理解之后重新整理,尽量做到层次清晰。正文开始。 1. SSL/TLS概览 1.1 整体结构 SSL是一个介于HTTP协议与TCP之间的一个可选层,其位置大致如下: SSL:(Secure Socket Layer,安全套接字层),为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络上之传输过程中不会被截取。当前版本为3.0。它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。 TLS:(Transport Layer Security,传输层安全协议),用于两个应用程序之间提供保密性和数据完整性。TLS 1.0是IETF(Internet Engineering Task Force,Internet工程任务组)制定的一种新的协议,它建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本,可以理解为SSL 3.1,它是写入了 RFC 的。该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。较低的层为 TLS 记录协议,位于某个可靠的传输协议(例如 TCP)上面。… read more »

关于 MySQL 密码你应该知道的那些事

本文将介绍MySQL用户密码相关的一些知识,以及5.6中对于安全性的一些改进 MySQL用户密码是如何生成和保存的 如果你已经接触MySQL一段时间了,那么想必你一定知道MySQL把所有用户的用户名和密码的密文存放在mysql.user表中。大致的形式如下: mysql [localhost] {msandbox} (mysql) > select user,password from mysql.user; +—————-+——————————————-+ | user | password | +—————-+——————————————-+ | root | *6C387FC3893DBA1E3BA155E74754DA6682D04747 | | plain_password | *861D75A7F79DE84B116074893BBBA7C4F19C14FA | | msandbox | *6C387FC3893DBA1E3BA155E74754DA6682D04747 | |… read more »

Linux mkdir、tar 和 kill 命令的 4 个有用小技巧

我们一直以常规的方式完成一个任务,直到我们知道有更好的处理方法。作为 Linux 技巧和绝招系列 的后续,我会在这里介绍能在各个方面给你帮助的 4 个小技巧。开始吧! 4 个有用的 Linux 小技巧 1. 假设你要创建一个类似于下面很长的/复杂的目录树。实现这最有效的方法是什么呢? 类似下面要实现的目录树结构。 $ cd /home/$USER/Desktop $ mkdir tecmint $ mkdir tecmint/etc $ mkdir tecmint/lib $ mkdir tecmint/usr $ mkdir tecmint/bin $ mkdir tecmint/tmp $… read more »

在 RHEL/CentOS 上为Web服务器架设 “XR”(Crossroads) 负载均衡器

Crossroads 是一个独立的服务,它是一个用于Linux和TCP服务的开源负载均衡和故障转移实用程序。它可用于HTTP,HTTPS,SSH,SMTP 和 DNS 等,它也是一个多线程的工具,在提供负载均衡服务时,它可以只使用一块内存空间以此来提高性能。 首先来看看 XR 是如何工作的。我们可以将 XR 放到网络客户端和服务器之间,它可以将客户端的请求分配到服务器上以平衡负载。 如果一台服务器宕机,XR 会转发客户端请求到另一个服务器,所以客户感觉不到停顿。看看下面的图来了解什么样的情况下,我们要使用 XR 处理。 安装 XR Crossroads 负载均衡器 这里有两个 Web 服务器,一个网关服务器,我们将在网关服务器上安装和设置 XR 以接收客户端请求,并分发到服务器。     XR Crossroads 网关服务器:172.16.1.204     Web 服务器01:172.16.1.222     Web 服务器02:192.168.1.161 在上述情况下,我们网关服务器(即 XR Crossroads)的IP地址是172.16.1.204,webserver01 为172.16.1.222,它监听8888端口,webserver02 是192.168.1.161,它监听端口5555。… read more »

PHP 安全编程建议

简介 要提供互联网服务,当你在开发代码的时候必须时刻保持安全意识。可能大部分 PHP 脚本都对安全问题都不在意,这很大程度上是因为有大量的无经验程序员在使用这门语言。但是,没有理由让你因为对你的代码的不确定性而导致不一致的安全策略。当你在服务器上放任何涉及到钱的东西时,就有可能会有人尝试破解它。创建一个论坛程序或者任何形式的购物车,被攻击的可能性就上升到了无穷大。 背景 为了确保你的 web 内容安全,这里有一些常规的安全准则: 别相信表单 攻击表单很简单。通过使用一个简单的 JavaScript 技巧,你可以限制你的表单只允许在评分域中填写 1 到 5 的数字。如果有人关闭了他们浏览器的 JavaScript 功能或者提交自定义的表单数据,你客户端的验证就失败了。 用户主要通过表单参数和你的脚本交互,因此他们是最大的安全风险。你应该学到什么呢?在 PHP 脚本中,总是要验证 传递给任何 PHP 脚本的数据。在本文中,我们向你演示了如何分析和防范跨站脚本(XSS)攻击,它可能会劫持用户凭据(甚至更严重)。你也会看到如何防止会玷污或毁坏你数据的 MySQL 注入攻击。 别相信用户 假定你网站获取的每一份数据都充满了有害的代码。清理每一部分,即便你相信没有人会尝试攻击你的站点。 关闭全局变量 你可能会有的最大安全漏洞是启用了 register_globals 配置参数。幸运的是,PHP 4.2 及以后版本默认关闭了这个配置。如果打开了 register_globals,你可以在你的… read more »

十个问题带你了解 Windows Docker

微软在5月份Build大会上的官方说法,说是这个夏天会放出Windows Server Container的测试版。也就是说,目前我们还无法看到Windows Docker的测试版本,无法直接上手测试。接下来我就大家关心的十大问题进行介绍: 1. Windows Docker和Hyper-V有啥区别? Hyper-V和VMware/Xen/KVM等类似,都是硬件虚拟化,安全但笨重。 Windows Docker是OS虚拟化技术,具备一定的隔离能力,性能更好、容易移植。 两者不是互相取代的关系。 注意:Windows Docker并不是我们在Docker 1.6时见到的Windows Docker Client,也不是Boot2docker这个Windows下的linux虚拟机,而是真正的Windows版本的Docker。其实其正式名称并不叫Docker,而是叫做Windows Server Container,还有Hyper-V Container,有2个产品,其中Windows Server Container类似于linux Docker,而Hyper-V Container有些类似于clear linux或者Hyper Docker。 这是因为Docker是商标名称,微软不能直接拿来使用。 2. Windows Docker和Softgrid(APP-V)/Thinstall等有啥区别? Docker是OS虚拟化,主要场景是服务端应用,这些容器(应用)之间通过标准的网络接口进行通信,好像虚拟机一样。 Softgrid是应用程序虚拟化,主要用于客户端应用部署。例如Office,这些应用在同一个会话里运行,完全就是传统的应用,彼此之 间可以进行进程间通信,例如Word可以OLE调用Excel的表单等等。不同的进程,看到的文件系统不会隔离。适用于批量部署客户端应用。 3. 容器和沙盒是什么关系? 曾经看到一句很棒的评语,必须分享给诸位:… read more »

为 Kodi 自制遥控器

通过运行在 Android 手机上的自制遥控器来控制你的家庭媒体播放器。 Kodi 是一款很优秀的软件,能够将几乎所有电脑变身成媒体中心。它可以播放音乐和视频,显示图片,甚至还能显示天气预报。为了在配置成家庭影院后方便使用,你可以通过手机 app 访问运行在连接到 Wi-Fi 的 XBMC 机器上的服务来控制它。可以找到很多这种工具,几乎覆盖所有智能手机系统。 XBMC Kodi 原名叫做 XBMC,在你阅读这篇文章的时候,XBMC 已经成为历史。因为法律原因(因为名字 XBMC 或 X-Box Media Center 里引用了不再支持的过时硬件)项目组决定使用新的名字 Kodi。不过,除了名字,其他的都会保持原样。或者说除开通常新版本中所期待的大量新改进。这一般不会影响到遥控软件,它应该能在已有的 XBMC 系统和新的 Kodi 系统上都能工作。 我们目前已经配置好了一个用于播放音乐的 Kodi 系统,不过我们找到的所有 Kodi 遥控没一个好用的,特别是和媒体中心连接的电视没打开的时候。它们都有点太复杂了,集成了太多功能在手机的小屏幕上。我们希望能有这样的系统,从最开始就是设计成只用于访问音乐库和电台插件,所以我们决定自己实现一个。它不需要用到 Kodi 的所有功能,因为除了音乐以外的任务,我们可以简单地切换使用通用的 Kodi… read more »

如何管理 Vim 插件

Vim是Linux上一个轻量级的通用文本编辑器。虽然它开始时的学习曲线对于一般的Linux用户来说可能很困难,但比起它的好处,这些付出完全是值得的。vim 可以通过完全可定制的插件来增加越来越多的功能。但是,由于它的功能配置比较难,你需要花一些时间去了解它的插件系统,然后才能够有效地去个性化定置Vim。幸运的是,我们已经有一些工具能够使我们在使用Vim插件时更加轻松。而我日常所使用的就是Vundle。 什么是Vundle Vundle意即Vim Bundle,是一个vim插件管理器。Vundle能让你很简单地实现插件的安装、升级、搜索或者清除。它还能管理你的运行环境并且在标签方面提供帮助。在本教程中我们将展示如何安装和使用Vundle。 安装Vundle 首先,如果你的Linux系统上没有Git的话,先安装Git。 接着,创建一个目录,Vim的插件将会被下载并且安装在这个目录上。默认情况下,这个目录为~/.vim/bundle。 $ mkdir -p ~/.vim/bundle 现在,使用如下指令安装Vundle。注意Vundle本身也是一个vim插件。因此我们同样把vundle安装到之前创建的目录~/.vim/bundle下。 $ git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim 配置Vundle  现在配置你的.vimrc文件如下: set nocompatible ” 必需。 filetype off ” 必须。 ” 在这里设置你的运行时环境的路径。 set rtp+=~/.vim/bundle/Vundle.vim ” 初始化vundle call… read more »

使用这些去重加密工具来备份你的数据

无论是体积还是价值,数据都在不断增长。快速而可靠地备份和恢复数据正变得越来越重要。社会已经适应了技术的广泛使用,并懂得了如何依靠电脑和移动设备,但很少有人能够面对丢失重要数据的现实。在遭受数据损失的公司中,30% 的公司将在一年内损失一半市值,70% 的公司将在五年内停止交易。这更加凸显了数据的价值。 随着数据在体积上的增长,提高存储利用率尤为重要。从计算机的角度说,数据去重是一种特别的数据压缩技术,因为它可以消除重复数据的拷贝,所以这个技术可以提高存储利用率。 数据并不仅仅只有其创造者感兴趣。政府、竞争者、犯罪分子、偷窥者可能都热衷于获取你的数据。他们或许想偷取你的数据,从你那里进行敲诈,或看你正在做什么。因此,对于保护你的数据,加密是非常必要的。 所以,解决方法是我们需要一个可以去重的加密备份软件。 对于所有的用户而言,做文件备份是一件非常必要的事,至今为止许多用户还没有采取足够的措施来保护他们的数据。一台电脑不论是工作在一个合作的环境中,还是供私人使用,机器的硬盘可能在没有任何警告的情况下挂掉。另外,有些数据丢失可能是人为的错误所引发的。如果没有做经常性的备份,数据也可能不可避免地丢失,即使请了专业的数据恢复公司来帮忙。 这篇文章将对 6 个去重加密备份工具进行简要的介绍。 Attic Attic 是一个可用于去重、加密,验证完整性的压缩备份程序,它是用 Python 写的。Attic 的主要目标是提供一个高效且安全的方式来备份数据。Attic 使用的数据去重技术使得它适用于每日备份,因为只需存储改变的数据。 其特点有: 易用 可高效利用存储空间,通过检查冗余的数据,对可变块大小的去重可以减少存储所用的空间 可选的数据加密,使用 256 位的 AES 加密算法。数据的完整性和可靠性使用 HMAC-SHA256 来校验 使用 SDSH 来进行离线备份 备份可作为文件系统来挂载 网站: attic-backup.org Borg Borg… read more »

Arch Linux 下的 QQ 解决方案

Linux 上面玩 QQ 一直都是一个问题。Wine 算是一个解决方案,但是也有不少人失败了。由于 QQ 的特殊性,采取了一系列的保护措施,导致 QQ 这个 Windows 程序非常复杂,因此 Wine 在运行 QQ 时表现差强人意。本文将要安装的是 QQ6.3 ,更高的版本除非对 QQ 做出修改,否则很难安装成功,即使成功了,问题也挺多的(笔者已试验过 QQ7.4 安装)。写这个的目的主要是方便有人遇到问题截图提问,毕竟 Linux 的普及工作还得靠大家,对于日常聊天还是建议使用手机QQ 。 本文环境 Arch Linux (其他发行版仅供参考) KDE4 & LXDE & GNOME (其它请自测) 准备工具… read more »

MYSQL 调优和使用必读

MYSQL 应该是最流行了 WEB 后端数据库。WEB 开发语言最近发展很快,PHP, Ruby, Python, Java 各有特点,虽然 NOSQL 最近越來越多的被提到,但是相信大部分架构师还是会选择 MYSQL 来做数据存储。 MYSQL 如此方便和稳定,以至于我们在开发 WEB 程序的时候很少想到它。即使想到优化也是程序级别的,比如,不要写过于消耗资源的 SQL 语句。但是除此之外,在整个系统上仍然有很多可以优化的地方。 1. 选择合适的存储引擎: InnoDB 除非你的数据表使用来做只读或者全文检索 (相信现在提到全文检索,没人会用 MYSQL 了),你应该默认选择 InnoDB 。 你自己在测试的时候可能会发现 MyISAM 比 InnoDB 速度快,这是因为: MyISAM 只缓存索引,而 InnoDB 缓存数据和索引,MyISAM 不支持事务。但是… read more »

秒杀SSD,ubuntu极速开发环境搭建

ubuntu打开的正确方式(笑) 在这个快节奏的时代。能够使用最快速度最低代价完成任务具有非常重要的意义,对于现代开发者来说,Linux是生活中必不可少且不可替代的工具,如果我们在开发少或学习中少一些遇到环境的坑,会节省很多时间,潜伏在各种Linux群中数年,发现大家都有手贱(操作失误,笑),因此在本文中给出终极解决方案: 直接使用Ubuntu Live CD 来完成系统的启动。 那么最快的Linux安装办法又是什么呢?其实经过严谨的思考之后我个人觉得是不安装。我们可以准备从grub启动ubuntu操作系统把系统放到内存中,再预制出各种情况的环境包,也就是环境模块化,因为系统是在整个内存中所以速度非常非常快,需要模块化的内容并不多,比如说ssh vim tmux 为一组工具,开机后一个命令就可以激活工具包,不到几秒钟的时间即可完成,其他的如Chrome浏览器一类的都可以快速完成在内存上的安装。通过这种方式让环境更加灵活更加快速准备好开发环境。 这是一个思路上的变化,从我需要什么就安装什么一起都准备好给你用->变成了只启动基础的系统然后我需要什么我就后加载什么。 最后的准备在于容器,Docker 以及RKT与RunC的准备,在团队内可以秒级推送运行的环境。 本文依然有它的缺点: 主要体现在两个方面 如果默认驱动不好使会造成很多麻烦。 对于内存小的开发机器还是做快照比较好。最少4G内存,我们推荐内存在8G以上最好是16G或者32G内存的机器上采用此方案。 因为本方案整个操作系统都是加载到内存中的,硬盘速度即为内存的速度,我这里实测可以达到4.5Gb/s,所以你准备好屌丝逆袭(买不起SSD)秒杀高富帅了吗? ubuntu 对于它的简单介绍可以参考这里。当然对于我本人而言选择Ubuntu主要原因仅仅是对他比较熟悉。并不限制使用什么发行版本。如果您要是选本方案搭建环境,并且选择其他发行版本请选择LiveCD尽量小一点的,如果能自己裁剪LiveCD就更好了,另外尽量选择64位架构。当然自己越熟悉越好。 虽然Ubuntu有一点不自由,但是我个人觉得包的质量管理还是非常好的,的确适合开发者使用。 Docker 官方:https://www.docker.com/ 它对于我来说,几乎就像是水,如果没有他就没有今天的丰富多彩的运行方式,它可以让程序连同环境一起打包运行,使得部署备份等等非常方便,对于本次环境构建而言我们可以在个人的registry上备份自己的环境,只需要一小段时间就可以克隆回来。再加上现在各种永久免费的国内加速服务这种环境部署就是程序员天堂。更多细节请关注这里。 在本文中我们使用单文件版本的Docker文件,方便可控。无任何累赘。本人不喜脚本安装。 RunC && RKT 这两种产品是libcontainer的代表。相对于Docker来说,它是一个容器只需要一个进程,对于Docker来说,他需要一个守护进程。在本文中(本博主)不评价任何产品的好坏,只说什么时候适合用什么。当然在我们这里利用了它启动方便,挂载方便的特性让我们的工作更方便更方便更方便! 由于现在RunC还没有发布1.0版本文档几乎没有,因此我这里会给出我的详细研究结果。至于RKT还是大家自己摸索,文档已经很全了。 CoreOS 作为专门运行容器的操作系统,稳定性可不属性都是前所未有,当然我们的容器可以跑在这个上面本文中会提及两个系统的兼容性方案。 Ubuntu适合程序开发的情况。启动速度可能在1分钟左右(有点慢)。但是有图形界面,有定制基础环境的方案。 CoreOS适合跑程序,启动速度在10秒以下适合释放更多内存来跑临时业务,做测试的时候实用此方案。 从Grub开始… read more »

新手指南: 手把手教你安装 Ubuntu 和 Fedora

Linux 由于开源,所以具备可定制性,因此衍生了许多发行版。Ubuntu 和 Fedora 算是其中对新手比较友好的两个发行版,主要是其安装较为简单,用户群多,有问题搜索出相关的信息或者找前辈解决。此文为 Linux 新手准备,通过展示整个安装过程来使 Linxu 新手完成安装 Ubuntu 或 Fedora ,也恳请各位前辈指出不足之处。 阅读建议 本文将包含 Ubuntu 和 Fedora 两个发行版的安装,请先通篇浏览全文,再决定安装哪个发行版,并且配图有相应的文字说明,请不要忽视。 如果你是一位新手,强烈建议使用虚拟机操作;如果你相信自己可以解决问题,也可使用 ultraiso 、USBWriter 和 dd命令写入 U 盘,进行实体机安装,此处不详述。 有任何问题都可以加入 Linux中国-新手村 QQ 群提问,QQ 群号 198889109 ,验证信息 LINUX.CN 。 Ubuntu 简介 Ubuntu 是一个基于 Debian 的 GNU/Linux 操作系统,支持 X86 、64以及… read more »

Sidebar