几个面试问题的回顾

几个面试问题的回顾

上周面试时碰到了几个问题,感觉有些陌生。回来后查了下资料,以备后用。 what does the plus sign mean in an entry in the passwd file?  (passwd 文件中某一项开始的地方的加号+是什么意思?) During a telnet session, you type in username and password, and then it hung. what happened? ( 在一个telnet会话中,输入用户名和密码后会停顿很长一段时间。什么原因?) How does re-transmit work in TCP? (TCP中的重传机制是如何工作的?) 今天先说第一个问题吧。 印象中好像有碰到过一次这样的passwd文件,但是完全忘记了。我当时回答是加号意味着这是一个LDAP用户。google了一下,原来加号是用于表示这是一个NIS用户。(我没用过Solaris的NIS系统,估计以后也没机会用了)。除了加号以外,passwd里还可以出现-减号,表示要从NIS信息中排除指定用户。看一下nsswitch.conf的手册会有更详细的信息。 For passwd and shadow databases: +user Include the specified user from the NIS passwd/shadow map. +user:::::: Include the specified user from the NIS passwd map, but override with non-empty passwd fields. +@netgroup…

Read More

Are all BSDs created equally — 一次关于BSD内核漏洞的调查

Are all BSDs created equally — 一次关于BSD内核漏洞的调查

在今年(2017)的defcon大会上,Ilja van Sprundel做了一个名为 “所有的BSD生来是平等的吗?”(Are all BSDs created equally? ),副标题: 一次关于BSD系统内核漏洞的调查(A survey of BSD kernel vulnerabilities)。我在youtube上搜了一下,目前还没有视频。   浏览了一下pdf文件。主要内容如下: 作者花了三个月时间检查了OBSD/FBSD/NBSD的内核代码,主要涉及系统调用、驱动程序、TCP/IP栈、trap handler、文件系统以及用于兼容其他系统(如Linux)的代码,截止报告期,共发现bug或漏洞约115个,其中: FBSD: ~30 OBSD: 25 NBSD: ~60   作者列出的OpenBSD相关的bug有:   Unbound malloc and out of bound read (could panic or info leak) OpenBSD 6.1 Been there since OpenBSD 4.0 Fri Apr 28 08:34:31 2006 getcwd syscall when taking data from fuse / userland   mbuf mishandling, leading to crash Doesn’t guarantee it pulls up enough mbuf data OpenBSD…

Read More

使用syspatch为OpenBSD打补丁

使用syspatch为OpenBSD打补丁

从6.1版开始,OpenBSD支持使用二进制文件为系统打补丁,结束了每个补丁要用户自己下载源文件并编译、安装的历史,就像现在所有Linux发行版一样。也算是补上了一个短板。 syspatch的使用也很简单明了:

跟syspatch相关的配置: /etc/installurl : 指定到哪里去查找并下载补丁 这个文件默认不存在,需要自己创建并配置站点。这一点需要改进。有个默认的文件以及示例更合理一下。可以自己man installurl看一下。 配置内容可以是(就是一个URL): https://ftp.openbsd.org/pub/OpenBSD/ 跟syspatch相关的文件: /bsd.syspatch${OSrev} : 初始内核的备份文件(初始安装的、未打过任何补丁的内核) /var/syspatch/* : 保存了syspatch用于撤销补丁的压缩包(所以不能删除)   示例:

最后,reboot  

Read More

[转]Monitoring and Tuning the Linux Networking Stack: Receiving Data

[转]Monitoring and Tuning the Linux Networking Stack: Receiving Data

最近在网上看到了一篇详细介绍Linux系统上接收网络数据包过程的博客(英文的),觉得很不错,特地分享一下。如果你想做Linux的网络性能优化,这是一篇很好的参考文章。 The networking stack is complex and there is no one size fits all solution. If the performance and health of your networking is critical to you or your business, you will have no choice but to invest a considerable amount of time, effort, and money into understanding how the various parts of the system interact. Ideally, you should consider measuring packet drops at each layer of the network stack. That way you can determine…

Read More

ZFS on ubuntu

ZFS on ubuntu

Ubuntu 从16.04 (AMD64架构上)开始正式支持ZFS作为数据文件系统(非root)。但是需要另外安装。过程非常简单:

验证是否ZFS是否已经安装并加载:

作为一个非常NB的文件系统,ZFS主要的特性有: 快照 写时复制(copy-on-write cloning) 数据完整性 数据压缩 自动修复 安装过程很容易,但是用起来就不会这么简单了。下面几个文档可供参考。 如果想要详细了解ZFS的功能和使用,可以参考最下面Solaris 11.3的ZFS管理指南,虽然不能保证Solaris ZFS的功能全部都可以在Ubuntu上找到。 Ubuntu官方ZFS wiki: https://wiki.ubuntu.com/ZFS Ubuntu官方ZFS参考: https://wiki.ubuntu.com/Kernel/Reference/ZFS ZFS is *the* FS for Containers in Ubuntu 16.04! Solaris 11.3 ZFS文件管理指南: http://docs.oracle.com/cd/E53394_01/html/E54801/index.html

Read More

IT培训,实验楼及其他

可达书院建立的初衷就是为了做(在线)IT培训。自它建立以来,我也一直在思考在线培训究竟要怎么做才能有效率。就像那种面对面,一对一的培训一样的效率。 刚开始的想法(2008年左右)就是录制培训视频,通过让感兴趣者通过在线观看视频来学习。这种想法的出发点是,在IT技术学习中,尤其是偏重实战的技能,视频讲解比文字叙述更有效,更容易理解。 于是经过一年多的时间,录制了一套OpenBSD绝对新手入门的视频教程。 不知不觉又过了几年,开始觉得这样还不够。如果能一边看视频,一边练习所讲的知识点,这样效果会更好一点。于是希望将原来单纯播放视频的界面改为左边播放视频,右边是一个命令行界面。这样就可以一边观看,一边练习了。但是作为系统管理员出身的我,编程并不是强项。这个想法很久都未能实现。 后来又录制了OpenBSD快速入门视频,针对有一定Linux/Unix经验的朋友。 后来一个偶然的机会遇到了实验楼这个网站,感觉这个差不多就是我想要的样子,虽然它的教程以文字为主。于是我也在那里注册了一个账号,学习了几个课程。慢慢觉得这种方式还是有些美中不足,虽然相比纯粹观看视频的方式有了不少的进步。对我来说,这个不足主要在于:一,不能以我想要的速度进行学习(有时候想要快速浏览,有时候想要慢慢思考或者状态不佳,无力以正常速度学习);二,有困惑的时候没有人指点迷津; 于是我继续思考,究竟什么样的学习方式(或者培训方式)才能让效率最大化? 对于我个人来说,学习进度上最大的问题在于,当你有困惑的时候没有人给你指点迷津。你需要停下来,去搜索,去思考,去回头复习过去的内容,想要知道是否遗漏了什么东西。可能过了很长时间,你依然没能解开心中的疑问,学习进程就此被耽搁,或不得不带着这个疑问继续,以致于后面的学习效果大打折扣。 那么,如何解决这个问题? 目前我能想到的方案,就是学习时有个一对一的辅导老师,或者一个领路者。这个人知道你大概的经验,了解你对学习目标技术的了解程度,而他/她又这方面的实际经验。当你有疑惑的时候可以马上咨询,解开心中疑团(虽然有时候未必100%能够做到这一点)。面对面的答疑解惑是最好的,其次就是借助实时网络视频。 而在这几年里,随着虚拟化、云计算和容器技术的出现,出现了很多面向云计算/容器类的工具和平台,如较早一点的OpenStack,新一点的Kubernetes,Mesos,fleet以及SmartOS/Triton,CoreOS系统等等。这些东西注定要改变系统管理员(或者称为DevOps或CloudOps)的工作方式。 我自己也一直试图跟上这个趋势。为了学习这些新的平台和工具,自己也看了不少的视频,读了很多的文档/电子书,也花了很多时间折腾这些东西。在整个过程当中,我也感觉到观看视频未必就是最好的方式。有的时候你需要一本书,最好是纸质书,这样你可以快速浏览,一目十行,或逐字逐句,慢慢思考;有时候你需要视频,可以看到实际操作时究竟是什么样子(这个时候文字表达相对就比较无力了)。 还有一点就是,如果是视频,最好是未编辑修饰过的。我自己录制视频时如果出现意外情况,我就只能暂停录制,然后停下来排错,完成后再接着录。我觉得很多时候这个排错的过程也是一个非常宝贵的学习素材,让学习者能更深入的去了解这个技术的工作机制。只是这个过程可能需要很长的时间,不太适合视频录制。  

Read More

vmm enabled on OpenBSD

As per undeadly.org: With a small commit, OpenBSD now has a hypervisor and virtualization in-tree. This has been a lot of hard work by Mike Larkin, Reyk Flöter, and many others. VMM requires certain hardware features (Intel Nehalem or later, and virtualization enabled in the BIOS) in order to provide VM services, and currently only supports OpenBSD guests. http://undeadly.org/cgi?action=article&sid=20161012092516

Read More

Windows 10上验证文件的MD5

Windows 10上验证文件的MD5

使用Windows 10自带的certutil工具来验证文件的MD5校验和。

 

Read More
1 2 3 16