mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-01-07 22:11:09 +08:00
Merge branch 'master' of https://github.com/LCTT/TranslateProject
This commit is contained in:
commit
a98a4d853c
@ -0,0 +1,65 @@
|
||||
如何使用安卓设备控制你的Linux PC
|
||||
================================================================================
|
||||
**下面的教程会指导所有的Linux用户如何在系统上安装SSH,以便通过安卓智能手机远程访问他们的电脑。**
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/news2/How-to-Control-Your-Linux-PC-with-an-Android-Device-396004-2.jpg)
|
||||
如今我们所有人都拥有一台平板或触屏手机,我们经常使用它们在深夜里看电影或电视节目,听歌或者读一本好书。你可以把本文称作是“懒人教程”,它是专门为那些在大晚上因为太过疲惫而懒得去开启他们电脑上的某些应用程序,移动、删除,复制或重命名某些文件,甚至懒得去关掉PC的人准备的。
|
||||
|
||||
的确,已经有各种各样的远程桌面解决方案,但是许多方案费用很高,或者实现效果很糟糕,无法像预期一样运行,迫使你最终还是得去电脑上做你原本想做的事情。
|
||||
|
||||
在这个教程里面,我们将使用一种简单、安全、高效的协议,它被称为SSH (Secure Shell),很容易从默认的软件仓库中安装(在Arch linx中是openssh,在Ubuntu中是openssh-server)。
|
||||
|
||||
### 配置SSH服务器 ###
|
||||
|
||||
在安装完成后,你需要为SSH服务器进行基本配置。为此,你需要使用文本编辑器编辑/etc/ssh/sshd_config这个文件。
|
||||
|
||||
1.在文件尾部添加下面一行(下面的yourusername使用你的Linux机器上存在的用户名代替)
|
||||
|
||||
AllowUsers yourusername
|
||||
|
||||
2.取消"#PermitRootLogin"这行注释,把"no"替换成"yes"(译注:下面的选项修改和是否允许ssh登录无关,只是允许root直接登录,一般而言,并不建议如下这样的远程root直接登录。):
|
||||
|
||||
PermitRootLogin no
|
||||
|
||||
3.为了安全起见,你需要修改SSH 连接默认的22端口到一个更大编号的端口,譬如在我们的例子中是55441
|
||||
(但不要使用55441,这是我举个列子,可以找另一个四位或者五位数字)。因此,取消注释并编辑"#Port 22"如下(译注:你可以选择任何一个大于1024并小于65535的端口,只要他没有被别的程序占用,为什么不试试你的幸运数字呢?):
|
||||
|
||||
Port 55441
|
||||
|
||||
### 开启SSH服务器###
|
||||
|
||||
在Ubuntu上,SSH服务通过下面的命令启动:
|
||||
|
||||
sudo /etc/init.d/ssh start
|
||||
|
||||
当你每次修改上述配置文件时,都需要通过下面的命令重启:
|
||||
|
||||
sudo /etc/init.d/ssh restart
|
||||
|
||||
在Arch Linux上,你可以使用下面的命令启动SSH服务:
|
||||
|
||||
sudo systemctl start sshd
|
||||
|
||||
### 配置安卓设备上的SSH客户端###
|
||||
|
||||
JuiceSSH似乎是安卓上最好的SSH客户端之一,而且是免费的。同时,如果你认为它的功能比较简单,可以花费少量的钱来得到更多高级的特性,譬如亚马逊 AWS/EC2 集成,团队协作,以及更多其它的特性。
|
||||
|
||||
一旦软件安装完毕,开启它,然后你会要求输入一个加密的密码以保证连接的安全。这个密码由AES-256进行加密,因此除非你的设备被偷,否则没有人能够获取它们。
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_001.jpg)
|
||||
|
||||
现在,添加一个新连接,为你的电脑选择名称、IP地址,上面设定的端口号以及一个需要被创建的身份。
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_002.jpg)
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_003.jpg)
|
||||
|
||||
这就是我的Arch Linux机器,这是通过我的安卓平板上的JuiceSSH客户端访问到的界面。如果在这个教程中你遇到问题,请在下面进行评论。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/How-to-Control-Your-Linux-PC-with-an-Android-Device-396004.shtml
|
||||
|
||||
译者:[KayGuoWhu](https://github.com/KayGuoWhu) 校对:[Caroline](https://github.com/carolinewuyan)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,6 +1,4 @@
|
||||
|
||||
|
||||
如何使用LibreOffice把DOCX, DOC, RTF, ODT 转换成PDF
|
||||
如何使用LibreOffice把DOCX,DOC,RTF,ODT转换成PDF
|
||||
================================================================================
|
||||
在学校、公司、政府,或者是在网页传播的书籍、文档、报告、教程等等文档均被封装成各种格式。
|
||||
|
||||
@ -28,7 +26,7 @@
|
||||
|
||||
via: http://iloveubuntu.net/how-convert-docx-doc-rtf-odt-pdf-libreoffice
|
||||
|
||||
译者:[NearTan](https://github.com/NearTan) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[NearTan](https://github.com/NearTan) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
160
published/The Linux Kernel/08 The Linux Kernel--Configuring the Kernel Part 4.md
Executable file
160
published/The Linux Kernel/08 The Linux Kernel--Configuring the Kernel Part 4.md
Executable file
@ -0,0 +1,160 @@
|
||||
戴文的Linux内核专题:08 配置内核(4)
|
||||
================================================================================
|
||||
|
||||
在这个第四部分里,我们将继续配置更多的设置和特性。
|
||||
|
||||
这里我们被问及关于"IBM Calgary IOMMU support (CALGARY\_IOMMU)"。这个选项将会提供对IBM xSeries x366和x460的IOMMU的支持。这也将让那些32位PCI的设备工作正常——在这些系统上不支持双地址周期(DAC : Double Address Cycle)——因为该系统设置在访问超过3GB内存的时候会有问题。如果需要这些IOMMU设备可以用"iommu=off"在启动时关闭。(这些内核/模块参数会在以后的文章中讨论)
|
||||
|
||||
IOMMU(input/output memory management unit)是一个内存管理单元(MMU),它连接具有DMA功能的I/O总线到主内存上。DMA(Direct Memory Access)是许多计算机支持的一种允许特定设备不借助CPU直接访问内存的特性。双地址周期(Double Address Cycle, DAC)是64位DMA;而通常的DMA使用32位。
|
||||
|
||||
下面,我们被问及是否默认启用Calgary(Should Calgary be enabled by default? (CALGARY\_IOMMU\_ENABLED\_BY\_DEFAULT))。Calgary与上面提到的IOMMU是同一个概念。这两者之间的不同是IOMMU可以支持许多设备而Calgary只能支持IBM IOMMU设备。如果禁用了它,但是以后需要使用到它,可以使用内核参数(iommu=calgary)。
|
||||
|
||||
这里有个问题需要小心处理(Enable Maximum number of SMP Processors and NUMA Nodes (MAXSMP))。只有在内核运行在拥有很多SMP处理器和NUMA节点的情况下才启用它,如Core i7和许多AMD CPU芯片。如果系统缺乏或者只有少量的SMP处理器和NUMA节点,内核就会变得低效。这个最好选择"No"。
|
||||
|
||||
非一致性内存访问(Non-Uniform Memory Access (NUMA))是一个每块内存都需要花费更长时间访问其他部分内存的系统。一个节点就是一组内存。例如,一个NUMA系统可能有三块内存芯片。每块芯片是一个节点,在带CPU的主板上有一个节点/芯片(这是最快的节点),另外两个在不同的总线上。这两个节点需要比第一个节点花费更长的时间去访问。
|
||||
|
||||
注意:ccNUMA和NUMA目前是一样的,至少是非常相似的。
|
||||
|
||||
对称多处理器(Symmetric Multi-Processing (SMP))是NUMA的替代品。它的内存在同一根总线上。只有限定数量的CPU可以访问总线,所以这限制了SMP系统上处理器的数量。然而它内存的访问速度一样块。
|
||||
|
||||
注意:我是在为AMD64系统在编译内核,所以我会告诉你我的选择,来帮助读者理解过程和选择。如果我没有指出我的选择,那么我用的就是默认选择。如果你在为不同的系统编译或者你有不同的需求,你需要在你的情况下做出替代的选择。
|
||||
|
||||
接下来,除非配置工具已经为你做了选择,选择一个内核需要支持的最多CPU的数量。这个配置根据你给的数量优化内核。
|
||||
|
||||
接着启用或禁用"SMT (Hyperthreading) scheduler support (SCHED\_SMT)"(超线程调度器支持)。SMT调度器提升了在使用了超线程技术的Pentium 4处理器上的CPU决策能力。然而,这会带来额外的功耗,在一些系统上最好像我一样选择"no"。
|
||||
|
||||
超线程一种专有的SMT并行微处理器(Intel 实现了它)。这是多任务/多线程(同时做许多任务)的一种特殊形式,并行多线程(Simultaneous multithreading (SMT))提升了多线程执行的效率。
|
||||
|
||||
在这之后,启用或者禁用"Multi-core scheduler support (SCHED\_MC)"。这样也是一种提升多核CPU决策的特性。然而这回带来额外功耗,我选择了"No"。
|
||||
|
||||
在下一个选项中可以选择抢占模式。
|
||||
|
||||
Preemption Model(抢占模式)
|
||||
|
||||
1\. No Forced Preemption (Server) (PREEMPT\_NONE) (非强制抢占)
|
||||
|
||||
\> 2. Voluntary Kernel Preemption (Desktop) (PREEMPT\_VOLUNTARY) (自愿内核抢占)
|
||||
|
||||
3\. Preemptible Kernel (Low-Latency Desktop) (PREEMPT) (可抢占内核)
|
||||
|
||||
choice[1-3]: 2
|
||||
|
||||
抢占就是暂停一个意图让它之后继续执行的中断任务的过程。抢占强制一个进程暂停,执行中的任务无法忽视抢占。
|
||||
|
||||
接着,我们被询问关于"Reroute for broken boot IRQs (X86\_REROUTE\_FOR\_BROKEN\_BOOT\_IRQS)"。这是一个对于假中断的简单修复。假中断是一种无用的硬件中断,这些通常是有电子干扰或者错误连接的电子产品触发。记住,中断是发送给处理器需要马上注意的信号。
|
||||
|
||||
这个选项对任何机器都很重要;我怀疑任何人可能都会有禁用这个特性的理由(Machine Check / overheating reporting (X86\_MCE))。内核必须意识到过热和数据损坏,不然,系统将会继续操作,这样只会导致进一步的破坏。
|
||||
|
||||
下面,用户可以启用禁用"Intel MCE features (X86\_MCE\_INTEL)",这是一种额外的对像热度监控的Intel MCE特性的支持。因为我是为AMD64处理器编译内核所以我选择了"no"。机器检测异常(MCE)是一种当处理器发现硬件问题时的错误输出。MCE通常会导致内核严重错误(kernel panic)(相当于Windows中的"蓝屏")。
|
||||
|
||||
这个除了是AMD设备外是同一个问题Intel MCE features (X86\_MCE\_INTEL)。
|
||||
|
||||
下一个是我会禁用的调试特性(Machine check injector support (X86\_MCE\_INJECT))。这个会允许注射检查。如果你偶尔执行机器注射,那最好编译成模块而不是编译进内核。机器注射可以使设备即使实际没有错误也可以发送一个伪造的错误信息。这个用来确认内核和其他进程可以正常处理错误。比如,如果CPU过热,接着应该关机,但是开发者如何在不损坏CPU的情况下测试代码。注射错误是一种最好的方法,因为它只是一种告诉硬件发送错误信号的软件。
|
||||
|
||||
注:模块是对可能被使用或者很少执行的特性/驱动而言的。只加入在许多使用该内核的系统中用到的特性/驱动到内核中。
|
||||
|
||||
如果内核很可能用在Dell笔记本上,那么启用这个特性(Dell laptop support (I8K))。否则,如果一些用户可能在戴尔笔记本电脑上用到这个内核,将其作为一个模块加入。如果这个内核不打算支持Dell笔记本,那就像我一样忽略掉它。特别地,这个支持是一个允许Dell Inspiron 8000系列笔记本访问处理器的系统管理模式的驱动。系统管理模式的目的是得到处理器的温度和风扇状态,这对一些需要控制风扇的系统有用。
|
||||
|
||||
下面,用户可以选择微码加载支持(CPU microcode loading support (MICROCODE))。这可以允许用户在支持这个特性的AMD或者Intel芯片上更新微码。
|
||||
|
||||
注意:为了加载微码,你必须拥有一个为你的处理器设计的合法的二进制微代码拷贝。
|
||||
|
||||
如果要加载微码补丁(修复bug或加入次要的特性)到intel芯片上(Intel microcode loading support (MICROCODE\_INTEL)),这个就必须启用。这里我禁用了它。
|
||||
|
||||
然后是AMD芯片的类似选项(AMD microcode loading support (MICROCODE\_AMD))。
|
||||
|
||||
启用这个支持(/dev/cpu/*/msr - Model-specific register support (X86\_MSR))可以允许某个处理器有权限使用x86特殊模块寄存器(Model-Specific Registers (MSRs))。这些寄存器是一些字符设备,包括major 202下minor 0到31的设备((/dev/cpu/0/msr to /dev/cpu/31/msr))。这个特性用在多处理器系统上。每个虚拟字符设备都连接到一个特定的CPU。
|
||||
|
||||
注意:MSRs被用来改变CPU设备、调试、性能监控和执行追踪。MSRs使用x86指令集。
|
||||
|
||||
在这之后,我们有一个选项"CPU information support (X86\_CPUID)",启用这个特性允许处理器访问x86 CPUID指令,这需要通过字符设备在一个特定的CPU上执行。这些字符设备包括major 202下minor 0到31的设备(/dev/cpu/0/msr to /dev/cpu/31/msr),就像上面x86\_MSR支持的这些。
|
||||
|
||||
如果处理器支持,启用内核线性映射来使用1GB的内存页(Enable 1GB pages for kernel pagetables (DIRECT\_GBPAGES))。启用这个可以帮助减轻TLB的压力。
|
||||
|
||||
页是内存本身的基本单位(位是数据的基本单位)。页的大小是由硬件自身决定的。页码表是虚拟和物理内存间的映射。物理内存是设备上的内存。虚拟内存是到内存的地址。依赖于系统架构,硬件可以访问大于实际内存地址的地址。举例来说,一个64位系统拥有6GB内存,管理员在需要时可以加上更多的内存。这是因为还有很多虚拟内存地址。然而,在很多32位系统上,系统管理员可以增加一条8GB的内存,但是系统无法完全使用它,因为系统中没有足够的虚拟内存地址去访问大容量的内存。转换后援缓冲器(Translation Lookaside Buffer (TLB))是一种提升虚拟内存转换速度的缓存系统。
|
||||
|
||||
下面,我们看到了NUMA选项(Numa Memory Allocation and Scheduler Support (NUMA))。这可以允许内核在CPU本地内存分配器上分配CPU可使用的内存。这个支持同样可使内核更好感知到NUMA。很少的32位系统需要这个特性,但是一些通用的645位处理器使用这个特性。我选择了"no"。
|
||||
|
||||
为了系统使用旧方式来检测AMD NUMA节点拓扑,启用这个特性(Old style AMD Opteron NUMA detection (AMD\_NUMA))。下一个选项是一种更新的检测方式(ACPI NUMA detection (X86\_64\_ACPI\_NUMA))。如果两个都启用,新的方式将会占支配作用。一些硬件在使用其中一种方式而不是另外一个时工作得更好。
|
||||
|
||||
如果为了调试目的的NUMA仿真,可以启用下一个特性(NUMA emulation (NUMA\_EMU))。
|
||||
|
||||
注意:如果你不打算进行调试并且你需要一个快速、轻量级系统,那么禁用尽可能多的调试特性。
|
||||
|
||||
下一个选项中,选择你的内核打算如何处理NUMA节点的最大数量。接下来选择内存模型,这里可能只有一个内存模型选择。内存模型指定了内存如何存储。
|
||||
|
||||
Maximum NUMA Nodes (as a power of 2) (NODES\_SHIFT) [6]
|
||||
|
||||
Memory model
|
||||
|
||||
\> 1. Sparse Memory (SPARSEMEM\_MANUAL)
|
||||
|
||||
choice[1]: 1
|
||||
|
||||
为了提升性能,这里有一个选项用通过虚拟内存映射(Sparse Memory virtual memmap (SPARSEMEM\_VMEMMAP))来优化pfn\_to\_page和page\_to\_pfn操作。页帧号是每页被给定的号码。这两个操作用来从号码得到页或者从页得到号码。
|
||||
|
||||
下一个选项是允许一个节点可以移除内存(Enable to assign a node which has only movable memory (MOVABLE\_NODE))。内核页通常无法移除。当启用后,用户可以热插拔内存节点,同样可移除内存允许内存整理。作为出入内存的数据,只要有可用空间一组数据可能被划分到不同内存。
|
||||
|
||||
接着前面的内存问题,我们还有更多的问题。这些可能已被配置工具预配置了。第三个选项(BALLOON\_COMPACTION),当启用时可以帮助减少内存碎片。碎片内存会减慢系统速度。第四个选项(COMPACTION)允许内存压缩。下面列到的第五个选项(MIGRATION)允许页面被移动。
|
||||
|
||||
- Allow for memory hot-add (MEMORY\_HOTPLUG) (允许内存热添加)
|
||||
- Allow for memory hot remove (MEMORY\_HOTREMOVE) (允许内存热移除)
|
||||
- Allow for balloon memory compaction/migration (BALLOON\_COMPACTION) (允许泡状内存规整和合并)
|
||||
- Allow for memory compaction (允许内存规整)
|
||||
- Page migration (MIGRATION) (页合并)
|
||||
|
||||
注意:启用可移动内存会启用以上5个特性。
|
||||
|
||||
下一步,我们可以"Enable KSM for page merging (KSM)"。内核同页合并(Kernel Samepage Merging (KSM))会查看程序认为可以合并的内核。如果两页内存完全相同这可以节约内存。一块内存可以被删除或者被合并,并且只有一块可以使用。
|
||||
|
||||
配置工具可能会自动选择保存多少内存用于用户分配(Low address space to protect from user allocation (DEFAULT\_MMAP\_MIN\_ADDR) [65536])。
|
||||
|
||||
下一个选项很重要(Enable recovery from hardware memory errors (MEMORY\_FAILURE))。如果内存故障并且系统有MCA恢复或者ECC内存,系统就可以继续运行并且恢复。要使用这个特性,硬件自身和内核都必须支持。
|
||||
|
||||
机器检测架构(Machine Check Architecture (MCA))是一个一些CPU上可以发送硬件错误信息给操作系统的特性。错误更正码内存(Error-correcting code memory (ECC memory))是一种内存设备检测和纠正错误的形式。
|
||||
|
||||
下面,配置工具会自动启用"HWPoison pages injector (HWPOISON\_INJECT)"。这个特性允许内核标记一块坏页为"poisoned",接着内核会杀死创建坏页的程序。这有助于停止并纠正错误。
|
||||
|
||||
为了允许内核使用大页(Transparent Hugepage Support (TRANSPARENT\_HUGEPAGE)),启用这个特性。这可以加速系统但是需要更多内存。嵌入式系统不必使用这个特性。嵌入式系统通常只有非常小的内存。
|
||||
|
||||
如果启用了上面的,那么必须配置大页的sysfs支持。
|
||||
|
||||
Transparent Hugepage Support sysfs defaults
|
||||
|
||||
1\. always (TRANSPARENT\_HUGEPAGE\_ALWAYS)
|
||||
|
||||
\> 2. madvise (TRANSPARENT\_HUGEPAGE\_MADVISE)
|
||||
|
||||
choice[1-2?]: 2
|
||||
|
||||
下面的选项是增加process\_vm\_readv和process\_vm\_writev这两个系统调用(Cross Memory Support (CROSS\_MEMORY\_ATTACH))。这允许特权进程访问另外一个程序的地址空间。
|
||||
|
||||
如果有tmem,启用缓存清理(cleancache)通常是一个好主意 (Enable cleancache driver to cache clean pages if Transcendent Memory (tmem) is present (CLEANCACHE))。当一些内存页需要从内存中移除时,cleancache会将页面放在cleancache-enabled的文件系统上。当需要该页时,页会被重新放回内存中。超内存(tmem)没有一组已知大小的内存,内核对此内存使用间接寻址。
|
||||
|
||||
下一个选项允许在tmen激活后缓存交换页(Enable frontswap to cache swap pages if tmem is present (FRONTSWAP))。frontswap在交换分区放置数据。交换特性的支持需要这个。
|
||||
|
||||
最好启用下一个特性(Check for low memory corruption (X86\_CHECK\_BIOS\_CORRUPTION))。这会检测低位内存的内存损坏情况。这个特性在执行期被禁止。为了启用这个特性,在内核命令行内加入 "memory\_corruption\_check=1"(这会在以后的文章中讨论;这不同于任何命令行)。即使经常执行这个特性,也只使用非常小的开销(接近没有)。
|
||||
|
||||
接下来我门可以设置内存损坏检测的默认设置(“Set the default setting of memory\_corruption\_check (X86\_BOOTPARAM\_MEMORY\_CORRUPTION\_CHECK))。这可以选择是否开启或关闭memory\_corruption\_check。最好启用内存损坏检测不然如果一部分重要内存损坏后可能会导致数据丢失和系统崩溃。
|
||||
|
||||
这个选项关注的是BIOS(Amount of low memory, in kilobytes, to reserve for the BIOS (X86\_RESERVE\_LOW) [64])。配置工具通常知道给BIOS预留内存的最佳大小。
|
||||
|
||||
对于Intel P6处理器,开发者可以启用存储区域类型寄存器(MTRR (Memory Type Range Register) support (MTRR))。这用于连接着VGA卡的AGP和PCI卡。启用这个特性内核会创建/proc/mtrr。
|
||||
|
||||
如果X驱动需要加入回写入口,那么启用下面的选项(MTRR cleanup support (MTRR\_SANITIZER))。这会将MTRR的布局从连续转换到离散。存储区域类型寄存器(Memory type range registers (MTRRs))提供了一种软件访问CPU缓存的方法。
|
||||
|
||||
下面,配置工具已经设置了一些MTRR选项
|
||||
|
||||
- MTRR cleanup enable value (0-1) (MTRR\_SANITIZER\_ENABLE\_DEFAULT) [1]
|
||||
|
||||
- MTRR cleanup spare reg num (0-7) (MTRR\_SANITIZER\_SPARE\_REG\_NR\_DEFAULT) [1]
|
||||
|
||||
为了设置页级缓冲控制,那就启用PAT属性(x86 PAT support (X86\_PAT))。页属性表(Page Attribute Table (PATs))是现在版的MTRRs并比它更灵活。如果你经历过因启用它而引发的启动问题,那么禁用这个特性后重新编译内核。我选择了"no"。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-4.4392/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,53 @@
|
||||
How to Install the Latest NVIDIA 331.20 Driver in Ubuntu 13.10
|
||||
================================================================================
|
||||
**The installation of new NVIDIA drivers can be a problem sometimes, especially if you are not accustomed with the way things usually work on a Linux operating system.**
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/news2/How-to-Install-the-Latest-NVIDIA-331-20-Drivers-in-Ubuntu-13-10-399182-2.jpg)
|
||||
|
||||
This is where this tutorial will come in handy, to help regular users benefit from the most recent NVIDIA drivers, 331.20.
|
||||
|
||||
There are just a couple of ways of installing the NVIDIA driver on an Ubuntu system, the easy way and the hard way. The easy way is also the most straightforward, but it requires a working internet connection. This method will also introduce you into the beautiful world of PPAs.
|
||||
|
||||
Ubuntu 13.10, just like its predecessors, benefits from a large repository, but Canonical developers don’t upload the most recent version of the driver for several considerations. The most important is that it they don’t risk uploading a piece of software that has yet to be proven stable.
|
||||
|
||||
Fortunately, there is a PPA available that makes available the latest versions of the drivers, a day or two after the launch. Just enter the following command in a terminal (you will need root access):
|
||||
|
||||
sudo add-apt-repository ppa:xorg-edgers/ppa
|
||||
sudo apt-get update
|
||||
sudo apt-get install nvidia-331
|
||||
|
||||
If you already have an older version of the driver you will need to replace the last command with sudo apt-get dist-upgrade
|
||||
|
||||
After the process has finished restart the computer and you’re set. The next time NVIDIA releases a new driver, you will only have to update the system, without adding the PPA.
|
||||
|
||||
The second method is a little more complicated, but you don’t need an Internet connection (you will need to download the driver at some point, but you don’t need the connection during the installation). We will be using the 64-bit driver as an example.
|
||||
|
||||
You will have to enter the virtual console with Ctrl + Alt + F1 and login into the system with the username and password. In here, you need to navigate to the location of your driver (for example Downloads) and enter the following commands
|
||||
|
||||
sudo service lightdm stop
|
||||
sudo chmod a+x NVIDIA-Linux-x86_64-331.20.run
|
||||
sudo ./NVIDIA-Linux-x86_64-331.20.run
|
||||
sudo reboot
|
||||
|
||||
This is it. Whatever method you choose, enjoy the latest NVIDIA drivers.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/How-to-Install-the-Latest-NVIDIA-331-20-Drivers-in-Ubuntu-13-10-399182.shtml
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:
|
||||
[2]:
|
||||
[3]:
|
||||
[4]:
|
||||
[5]:
|
||||
[6]:
|
||||
[7]:
|
||||
[8]:
|
||||
[9]:
|
||||
[10]:
|
||||
[11]:
|
||||
[12]:
|
39
sources/Making Linux More Accessible.md
Normal file
39
sources/Making Linux More Accessible.md
Normal file
@ -0,0 +1,39 @@
|
||||
Making Linux More Accessible
|
||||
================================================================================
|
||||
A startling fact is that there are in excess of a billion people who have some type of disability. That represents approximately 15% of the world's population with a physical, sensory or mental limitation that interferes with their ability to move, see, hear or learn. 350 million people in the world are partially sighted or blind. The faster computer technology evolves, the more excluded these individuals would become without development in computer software that seeks to address their needs.
|
||||
|
||||
Accessibility is the degree to which products, devices, services, or environments are available to as many people as possible whatever their circumstances. Accessibility can be viewed as the ability to access and benefit from a system or entity. Accessibility is paramount. Social inclusion is not an act of charity but a fundamental human right.
|
||||
|
||||
We have witnessed Linux software and distributions that have made strides to help make everyone socially inclusive. For example, the GNOME Accessibility Project develops open source accessibility solutions for graphical user interfaces. Ubuntu has an Accessibility Team that aims to make Ubuntu usable by a broad a spectrum of people as possible. Special mention should also go to the Vinux Project, which is a Ubuntu derived distribution optimised for the needs of blind and partially sighted users.
|
||||
|
||||
There are also lots of individual software applications that offer different accessibility features. This article seeks to identify some of the finest open source software that is available that helps to enable individuals make full use of computer-based technology whatever their physical or sensory abilities.
|
||||
|
||||
So let's explore the 8 universal access tools at hand. For each application we have compiled its own portal page, a full description with an in-depth analysis of its features, a screenshot, together with links to relevant resources and reviews.
|
||||
|
||||
### Universal Access ###
|
||||
|
||||
- [Easystroke][1] Gesture recognition program
|
||||
- [Simon][2] Flexible speech recognition software
|
||||
- [Orca Screen Reader][3] Scriptable screen reader
|
||||
- [Julius][4] Two-pass large vocabulary continuous speech recognition engine
|
||||
- [Florence Virtual Keyboard][5] Extensible scalable virtual keyboard
|
||||
- [Caribou][6] Configurable on screen keyboard with scanning mode
|
||||
- [Dasher][7] Graphical predictive text input system
|
||||
- [xvkbd][8] Virtual (graphical) keyboard program
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linuxlinks.com/article/20131109042823957/UniversalAccess.html
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://sourceforge.net/apps/trac/easystroke/
|
||||
[2]:http://simon-listens.org/
|
||||
[3]:https://wiki.gnome.org/Orca
|
||||
[4]:http://julius.sourceforge.jp/
|
||||
[5]:http://florence.sourceforge.net/english.html
|
||||
[6]:https://wiki.gnome.org/Caribou
|
||||
[7]:http://www.inference.phy.cam.ac.uk/dasher/
|
||||
[8]:http://homepage3.nifty.com/tsato/xvkbd/
|
@ -0,0 +1,30 @@
|
||||
Mark Shuttleworth Regrets the “Tea Party” Remarks and Other Canonical Mistakes
|
||||
================================================================================
|
||||
**Mark Shuttleworth, the founder of Canonical, has clarified his “Tea Party” comments and apologized for this rather personal remark.**
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/news2/Mark-Shuttleworth-Regrets-the-quot-Tea-Party-quot-Remarks-and-Other-Canonical-Mistakes-398819-2.jpg)
|
||||
|
||||
It's not every day that we see Mark Shuttleworth apologizing two times in a row, and most likely this is the first time that it happened.
|
||||
|
||||
[The first apology][1] came for the owner of fixubuntu.com, who was the recipient of a letter from the legal team of Canonical. Micah F. Lee, the guy behind the site, wrote an extensive blog post about these issues and the matter was discussed at length on a numerous forums and websites.
|
||||
|
||||
Mark Shuttleworth first apologized to him on Google+, but he also wrote a more formal text on his personal blog, which is usually reserved for things of great importance.
|
||||
|
||||
And since he was apologizing, he also took the time to say that he regretted [the “Tea Party”][2] comments that attracted a lot of heat towards Canonical, probably even more so than the original problems he was mad about.
|
||||
|
||||
“On another, more personal note, I made a mistake myself when I used the label ‘open source tea party’ to refer to the vocal non-technical critics of work that Canonical does. That was unnecessary and quite possibly equally offensive to members of the real Tea Party (hi there!) and the people with vocal non-technical criticism of work that Canonical does (hello there!).”
|
||||
|
||||
“There isn’t anything in what I said to suggest that I don’t welcome such technical feedback, but some assumed I was rejecting all feedback including technical commentary. I was not – I was talking about criticism of software which does not centre on the software itself, but rather on some combination of the motivations of the people who wrote it, or the particular free software license under which it is published, or the policies of the company, or the nationality of the company behind it,” said Mark Shuttleworth.
|
||||
|
||||
This will hopefully end all the discussions on the matter and people will finally be able to work together on Mir, which is actually the source of this whole debacle.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/Mark-Shuttleworth-Regrets-the-quot-Tea-Party-quot-Remarks-and-Other-Canonical-Mistakes-398819.shtml
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://news.softpedia.com/news/Mark-Shuttleworth-Apologizes-for-the-Trademark-Infringement-Letter-Sent-to-Fixubuntu-com-398583.shtml
|
||||
[2]:http://news.softpedia.com/news/Mark-Shuttleworth-Says-That-Mir-Opponents-Have-Formed-the-Open-Source-Tea-Party-392793.shtml
|
131
sources/Recoll--Text Search Tool For Unix And Linux Desktops.md
Normal file
131
sources/Recoll--Text Search Tool For Unix And Linux Desktops.md
Normal file
@ -0,0 +1,131 @@
|
||||
Recoll: Text Search Tool For Unix And Linux Desktops
|
||||
================================================================================
|
||||
[Recoll][1] is a text search tool for Unix and Linux desktops. Recoll finds keywords inside documents as well as file names.
|
||||
|
||||
Recoll will do the following for you.
|
||||
|
||||
- It can search any document format.
|
||||
- Supports wild card characters.
|
||||
- Search based on files author, type, size and format etc.
|
||||
- will search on all storage places such as files, archive members, email attachments etc.
|
||||
- supports Desktop and Website integration
|
||||
- Firefox extension is available to index visited web pages history.
|
||||
- One click will open the document inside a native editor or display a text preview.
|
||||
- The software is free, open source, and licensed under the GPL.
|
||||
|
||||
### Install Recoll On Ubuntu / Linux Mint ###
|
||||
|
||||
Recoll is available in the Ubuntu repositories, However it is better to add Recoll repository and install the latest version.
|
||||
|
||||
Add Recoll repository using command:
|
||||
|
||||
sudo add-apt-repository ppa:recoll-backports/recoll-1.15-on
|
||||
|
||||
Update the package list with command:
|
||||
|
||||
sudo apt-get update
|
||||
|
||||
Now install Recoll using the following command.
|
||||
|
||||
sudo apt-get install recoll
|
||||
|
||||
For other distros, see the [download page][2] to download and install it from source.
|
||||
|
||||
### Launch Recoll ###
|
||||
|
||||
Recoll can be launched either from Dash or Menu.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Menu_0014.jpg)
|
||||
|
||||
At first launch, you’ll be asked to do indexing your whole home directory. This will take a while depending upon the size of your Home directory and no of files you have. Press the Start indexing now button.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Recoll_002.jpg)
|
||||
|
||||
Also you can adjust the indexing configuration and indexing schedule, if you want to more control of indexing. To do so, simply click on the Indexing configuration or Indexing schedule links. If you want to do it later, you can access these tools from the Preferences menu.
|
||||
|
||||
Once the indexing is done, you can start searching files/folders. The result will be displayed according to the exact relevancy and with a small snippet of the matched content.
|
||||
|
||||
### Configuration ###
|
||||
|
||||
As i noted above, you can adjust the Recoll indexing function if you want more control.
|
||||
|
||||
There are two configuration sections in the Recoll tool.
|
||||
|
||||
1. Index configuration
|
||||
|
||||
2. Index schedule
|
||||
|
||||
Let us see a short description of above sections.
|
||||
|
||||
**Index Configuration** is the section where you want to include directories or exclude the paths from indexing. By default Home directory will be included in the index. You can just remove and add some specific directory(s) for indexing.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/home-sk-.recoll-_003.jpg)
|
||||
|
||||
Also you can define the web history queue and the max size of the web store.
|
||||
|
||||
**Index schedule** is the section where you want to define a schedule to automate batch indexing runs, or start real time indexing when you log in.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Index-scheduling-setup_004.jpg)
|
||||
|
||||
Recoll supports two indexing schedule:
|
||||
|
||||
**Cron Scheduling** – decides at what time indexing should run and installs the crontab entry.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Cron-Dialog_006.jpg)
|
||||
|
||||
As per the above screenshot, the recoll cron job will run on every day at 12 am. After setting up the cron job, click enable to make it active.
|
||||
|
||||
**Real time indexing start up** – decide if real time indexing will be started when you log in.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Real-time-indexing-automatic-start_007.jpg)
|
||||
|
||||
By enabling this option, the recoll daemon will start on every reboot. Be mindful that this settings is applicable only for default index.
|
||||
|
||||
### Basic Search ###
|
||||
|
||||
Hope you knew enough about Recoll now. It is time to search some files/folders. The beauty of this application is it finds keywords inside documents as well as file names.
|
||||
|
||||
In the Recoll interface, enter the search term(query) on the top right search box and click Search button.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Recoll_008.jpg)
|
||||
|
||||
As you see in the above picture, the result will be displayed with exact relevant contents, a small snippet and preview option of the matched contents. You can directly open the searched file by clicking on the Open button or preview it before opening using the Preview button.
|
||||
|
||||
Also you can filter the results according to their categories such as “media”, “message”, “other”, “presentation”, “spreadsheet” and “text” etc. Moreover you can choose the search results that should match “Any term”, “All terms”, “File name” or “Query language”.
|
||||
|
||||
### Advanced Search ###
|
||||
|
||||
Click the Advanced Search icon on the Menu bar or go to **Tools -> Advanced Search**. This will open a new window. From here you’ll be able to search more advanced with clauses. For example i am searching for files that contains matches keyword as “hp” and filename as “storage”.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Advanced-search_010.jpg)
|
||||
|
||||
This will find and displays the files that contains the keyword as “hp” and file name as “storage”.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Recoll_012.jpg)
|
||||
|
||||
### Unity Desktop And Website Integration ###
|
||||
|
||||
This application supports desktop and website integration. If you want to integrate this with your Ubuntu Unity desktop, install **recoll-lens** with following command.
|
||||
|
||||
sudo apt-get install recoll-lens
|
||||
|
||||
Please note that the Lens is limited to showing at most 20 results. If you want get more than 20 search results, edit **rclsearch.py**, change the “**if actual_results >= 20:**” line.
|
||||
|
||||
If you are using Firefox browser and want to search the website history that you visit everyday, you can use [this firefox extension][3]. This extension works together with Recoll to index the websites that you visit all day. After installing this extension, enable it from the Web history tab of Recoll Index Configuration.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/home-sk-.recoll-_013.jpg)
|
||||
|
||||
All Linux distributions has built-in search function in their file manager to find files/folders as easy as possible. For those who aren’t not happy with the built-in search functionality and looking for an advanced text search tool, then Recoll is a worth trying tool. For me, this tool is lot easier and more powerful for basic and as well as advanced searches.
|
||||
|
||||
Cheers!
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/recoll-text-searching-tool-linux-desktops/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.recoll.org/
|
||||
[2]:http://www.lesbonscomptes.com/recoll/download.html
|
||||
[3]:http://sourceforge.net/projects/recollfirefox/
|
41
sources/Red Hat prepares for 64-bit ARM servers.md
Normal file
41
sources/Red Hat prepares for 64-bit ARM servers.md
Normal file
@ -0,0 +1,41 @@
|
||||
Red Hat prepares for 64-bit ARM servers
|
||||
================================================================================
|
||||
> ARM processors could lead to server racks with thousands of nodes, the Red Hat ARM chief predicts
|
||||
|
||||
IDG News Service - Enterprise open-source software vendor Red Hat is keeping an eye on the development of 64-bit ARM processors for servers, building up expertise in case the nascent platform takes hold in the data center.
|
||||
|
||||
"You don't see us in the market today with commercial offerings, but what we are building a competency ahead of some of the 64-bit technology that is coming. So further down the line, if we do have a need to respond to the market, we will have the capability to do that," said Jon Masters, chief ARM architect at Red Hat. Masters spoke Friday at the USENIX LISA (Large Installation System Administration) conference in Washington, D.C.
|
||||
|
||||
The ARM processor represents a "sea change in computing," Masters said. While already the dominant architecture for smartphone and embedded computing devices, ARM processors could also play a role in the data center. Over the past year, servers based on ARM processors have started to show up in the server market. HP is already selling ARM-based servers with its Moonshot line.
|
||||
|
||||
For the data center, because of its low-power design, ARM could bring about an age of hyperscale computing, in which thousands of tiny compute nodes can be packed into a single server rack. "It is a fundamental difference in terms of the sheer scale of what we will be able to build in the near future," Masters said.
|
||||
|
||||
The ARM processors may not run at the speed of x86 processors, but they can offer most of the performance with a fraction of the energy usage, meaning more processors can be packed into a smaller space. "You can take the same technology that goes into your cell phone and make that part of a dense server design" Masters said.
|
||||
|
||||
Many jobs do not require the fastest processors available, he said. Instead the workloads can be spread across more processors. "It's about how much data I can move, not necessarily how much compute I can do," he said. Cloud computing and Web applications, for instance, would do equally well spread out across multiple servers as they would running on fewer, but faster servers.
|
||||
|
||||
ARM's design could also simplify data-center operations. ARM's system on a chip design can eliminate the need for managing many of the external components of servers. For instance, an ARM processor could offer fabric interconnectivity, reducing the need for external cables and top-of-the-rack switches.
|
||||
|
||||
"The days of having discrete cabling for every single blade are numbered," he said.
|
||||
|
||||
There is still a lot of work that needs to be done to bring about hyperscale computing, Masters said.
|
||||
|
||||
ARM licenses its architecture rather than selling processors as Intel does. As a result, there is a fair amount of variation among the different ARM processors from vendors. "There is a lot of gratuitous variation that we don't need to have," Masters said. This can be problematic for data centers that need uniform systems so they can be managed en masse.
|
||||
|
||||
[Linaro][1] is an industry group working to build core open-source software for the ARM platform and part of its mission has been to standardize ARM. Red Hat engineers play a major role in the Linaro Enterprise Group, or LEG, which has been working to standardize the software so users can get one version of Linux to run across ARM processors from multiple vendors. "Those are fundamental expectations in the enterprise space," Masters said.
|
||||
|
||||
"We do need to focus on how to make them fundamentally compatible so you can add value further up the stack," he said.
|
||||
|
||||
Another issue is the support of peripherals, which hasn't been standardized across 32-bit ARM processors. Masters said that LEG is looking into using the ACPI (Advanced Configuration and Power Interface) standard or UEFI (Unified Extensible Firmware Interface) for 64-bit ARM processors. Over time, ARM will offer an automated bus-like capability that will work like PCI buses offer on x86 machines.
|
||||
|
||||
Masters said that Red Hat has not made any announcements about when it would release a version of Red Hat Enterprise Linux for ARM, but he did note that the Fedora Project, the community Linux distribution that tests many of the applications that go into RHEL, now offers a distribution for ARM.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.computerworld.com/s/article/9243921/Red_Hat_prepares_for_64_bit_ARM_servers?taxonomyId=122
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.linaro.org/
|
@ -0,0 +1,172 @@
|
||||
SBackup: A Simple Backup Solution For Your Linux Desktop
|
||||
================================================================================
|
||||
**SBackup**, Simple Backup, is an Open Source, easy to use backup solution intended for desktop use. It can backup any subset of files and folders. All configuration is accessable via Gnome interface. File and paths can be included and excluded directly or by regex, It supports local and as well as remote backups. Though it looks simple, it has many features to meet the advanced backup functionality.
|
||||
|
||||
### Features ###
|
||||
|
||||
SBackup will do the following things for you:
|
||||
|
||||
- It creates both compressed and uncompressed backups.
|
||||
- It can split uncompressed backups into multiple parts.
|
||||
- It support of multiple backup profiles. You can create and edit the profiles as per your requirement, but you can’t delete the default profile.
|
||||
- It has options such as logging, email notification and status icon presenting progress and notifications.
|
||||
- It supports scheduled backups and manual backups.
|
||||
- It can backup files either to local destinations (e.g. hard disk) or remote destinations (e.g. NAS over FTP).
|
||||
|
||||
### Install SBackup On Ubuntu, Linux Mint and Debian ###
|
||||
|
||||
SBackup is available in the default repositories of Ubuntu, Debian and Linux Mint. So just install it using command:
|
||||
|
||||
sudo apt-get install sbackup
|
||||
|
||||
### Launch SBackup ###
|
||||
|
||||
Open up SBackup either from Dash or Menu.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Menu_0011.jpg)
|
||||
|
||||
It will look like as shown below.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_002.jpg)
|
||||
|
||||
### SBackup Profiles ###
|
||||
|
||||
Initially SBackup won’t have any user profiles. Only “default profile” will be available. Be mindful that you can’t delete the default profile. To create a new profile, go to Tools -> Profile Manager. You will have a following like window.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_003.jpg)
|
||||
|
||||
Click Add to create a new profile, let me name the profile as “sk”.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_004.jpg)
|
||||
|
||||
Now a new profile has been created. If you want to use your custom profile, just select the profile and click Edit.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Configuration-Profile-Manager_005.jpg)
|
||||
|
||||
Now you may see that SBackup profile has been switched to “sk” profile.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_006.jpg)
|
||||
|
||||
However you can use default profile and edit it as per your requirements if you wish.
|
||||
|
||||
**Important Note**: If you launch it from a normal user you can’t schedule the backup. To schedule your backup you must run SBackup as root user. As see you in the above screenshots, the schedule tab is greyed out, because i launched it from a normal user.
|
||||
|
||||
In this how-to tutorial, i am going to use **default profile** with root user privileges.
|
||||
|
||||
Open up your Terminal and run the following command to open SBackup with root user privileges.
|
||||
|
||||
sudo sbackup-config-gtk
|
||||
|
||||
The above command will open SBackup with default profile with administrative mode.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_001.jpg)
|
||||
|
||||
### General ###
|
||||
|
||||
In General section you can define how often do you want to do a full backup. The default option is 7 days. By default SBackup will do full backup every 7 days. Then you can define the compression format for your backup file.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0021.jpg)
|
||||
|
||||
### Include ###
|
||||
|
||||
This tab pretty self-explanatory. You can include the files/folders that you want to backup using SBackup. Here you can either select individual files or entire folder to backup. I deleted all directories in the include section and added single directory called “Resume”.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0031.jpg)
|
||||
|
||||
### Exclude ###
|
||||
|
||||
Just like Include tab, we can define the files/folders path to exclude from being backed-up by SBackup. Just select the path of the files/folders that needs to be excluded from backup. By default SBackup will exclude the /media, /var/run/, /var/cache/, /var/spool/ and /vat/tmp/ directories.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0041.jpg)
|
||||
|
||||
Further more, you can add the file types that you want to exclude from backup such mp3 or avi etc. By default SBackup exclude files such as mp3, avi, mpeg, mkv, ogg and iso from backup. If you want to include them in your backup, just select and click remove to add them in your backup. Also if you want to add some other file types in the exclude list, just add them by clicking on the add button.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_005.jpg)
|
||||
|
||||
By default SBackup won’t backup the folders .gvfs, .thumbnails, .Trash and .cache etc.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0061.jpg)
|
||||
|
||||
Also you can omit the files/folders of certain size from backup. Here i excluded the files/folders which are bigger than 100MB in size.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0071.jpg)
|
||||
|
||||
### Destination ###
|
||||
|
||||
This is the path where you want to store your backup file. As i mentioned above, you can backup files/folders either in your local hard drive or to an external destination such as FTP, NAS etc. Here i am going to save my backups in /home/sk/My Backup directory.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_019.jpg)
|
||||
|
||||
**Note:** Make sure that destination has enough free space to store the backup.
|
||||
|
||||
### Schedule ###
|
||||
|
||||
In this section you can schedule the backups at a particular time. Click on the **Simple** radio button and select your schedule type such as hourly, daily, weekly and monthly.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_010.jpg)
|
||||
|
||||
If you’re good at command line crontab, select custom and define the cron job. If you select the daily schedule type, a cron job will be created in the **/etc/cron.daily/** location.
|
||||
|
||||
sudo ls -l /etc/cron.daily/sbackup
|
||||
|
||||
Sample output:
|
||||
|
||||
lrwxrwxrwx 1 root root 33 Nov 8 15:34 /etc/cron.daily/sbackup -> /usr/share/sbackup/sbackup-launch
|
||||
|
||||
### Purging ###
|
||||
|
||||
This section gives you the option to delete the backup files after a particular period. By default, your backup files will be deleted after 30 days.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0111.jpg)
|
||||
|
||||
### Report ###
|
||||
|
||||
Report is the final section. From here you can define to receive the mail notification directly in your inbox after the backups got finished. Enter your mail id, smtp server address, email username and password and click Test settings. Be mindful that, before test the mail settings save the configuration by clicking on the Save Configuration button on the Tool bar.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0121.jpg)
|
||||
|
||||
You’ll see a message “Test Successful” after testing your mail settings.
|
||||
|
||||
### Start Backup ###
|
||||
|
||||
If you want to start backup immediately, click **Make Backup now button** on the SBackup tool bar.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Selection_015.jpg)
|
||||
|
||||
A new window will open. Click Yes to create backup.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/sbackup-config-gtk_024.jpg)
|
||||
|
||||
Now you can see that a backup process will be started in the background. You can monitor the progress of the backup by means of the status indicator displayed in the notification area.
|
||||
|
||||
After completing the backup, close SBackup and check for your backup in the destination directory. In my case my destination directory is /home/sk/My Backup.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Selection_020.jpg)
|
||||
|
||||
### Restore backup ###
|
||||
|
||||
From your Terminal run command:
|
||||
|
||||
sudo sbackup-restore-gtk
|
||||
|
||||
In the SBackup restoration window, select the date to get the list of the available backups and select the any one of the available snapshots. Click on the any one of the files to restore on the Restoration management pane. Once you done, click **restore** to save them in the default location or click **restore as** to save the files in a custom location.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_023.jpg)
|
||||
|
||||
Now the data will be restored from the selected backup. That’s it.
|
||||
|
||||
### Sources: ###
|
||||
|
||||
- [https://launchpad.net/sbackup][1]
|
||||
- [http://sourceforge.net/projects/sbackup/][2]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/linux-desktop-backup-made-easy-sbackup/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://launchpad.net/sbackup
|
||||
[2]:http://sourceforge.net/projects/sbackup/
|
@ -1,12 +1,12 @@
|
||||
Linux中grep命令的12个实践例子
|
||||
===
|
||||
你是否遇到过需要在文件中查找一个特定的字符串或者模式的任务,但是仍然不知道从哪开始?这儿是一些**grep**的例子可以给你帮助。
|
||||
你是否遇到过需要在文件中查找一个特定的字符串或者样式,但是不知道从哪儿开始?那么,就请**grep**来帮你吧。
|
||||
|
||||
![](http://www.tecmint.com/wp-content/uploads/2013/11/Grep-Command-Examples.png)
|
||||
|
||||
*12个grep命令的例子*
|
||||
|
||||
**grep**是每个**Linux**发行版都预装的一个强有力文件匹配搜索工具。无论何种原因,如果你的系统没有预装它的话,你可以很容易的通过你系统的包管理器来安装它(**Debian/Ubuntu**系中的**apt-get**和**RHEl/CentOS/Fedora**系中的**yum**)。
|
||||
**grep**是每个**Linux**发行版都预装的一个强有力的文件样式搜索工具。无论何种原因,如果你的系统没有预装它的话,你可以很容易的通过系统的包管理器来安装它(**Debian/Ubuntu**系中的**apt-get**和**RHEl/CentOS/Fedora**系中的**yum**)。
|
||||
|
||||
$ sudo apt-get install grep #Debian/Ubuntu
|
||||
|
||||
@ -26,13 +26,13 @@ Linux中grep命令的12个实践例子
|
||||
ii python-openssl 0.12-1ubuntu2.1 Python wrapper around the OpenSSL library
|
||||
ii python-pam 0.4.2-12.2ubuntu4 A Python interface to the PAM library
|
||||
|
||||
首先,我们运行**dpkg -l**列出你系统上安装的**.deb**包。接着,我们使用管道将输出结果传输给命令**grep -i** python,这一步可以简单解释为把结果传输给grep然后过滤出所有含有python的项,并返回结果。只要你不打算详细的指定搜索方式,那么使用选项**-i**是个好习惯。
|
||||
首先,我们运行**dpkg -l**列出你系统上安装的**.deb**包。接着,我们使用管道将输出结果传输给命令**grep -i** python,这一步可以简单解释为把结果传输给grep然后过滤出所有含有python的项,并返回结果。–i选项用于忽略大小写,因为 grep 是大小写敏感的。使用选项**-i**是个好习惯,除非你打算进行更细节的搜索。
|
||||
|
||||
###2.搜索和过滤文件
|
||||
|
||||
grep还可以在一个或多个文件夹里用于搜索和过滤。让我们来看一个这样的情景:
|
||||
grep还可以在一个或多个文件里用于搜索和过滤。让我们来看一个这样的情景:
|
||||
|
||||
你的**Apache网页服务器**出现了问题,你不得不从许多专业网站找一个发帖询问。好心的回复你的人会让你粘贴你的**/etc/apache2/sites-available/default-ssl**文件。网友帮助了你,而假如你能移除掉所有的注释行,那么今后大家都能阅读到这个解决方案,这对你来说会会困难吗?你当然可以很容易的做到!只需这样做就可以了:
|
||||
你的**Apache网页服务器**出现了问题,你不得不从许多专业网站找一个发帖询问。好心的回复你的人让你粘贴你的**/etc/apache2/sites-available/default-ssl**文件内容。假如你能移除掉所有的注释行,那么对你,对帮你的人,以及所有阅读该文件的人,不是更容易发现问题吗?你当然可以很容易的做到!只需这样做就可以了:
|
||||
|
||||
$ sudo grep -v "#" /etc/apache2/sites-available/default-ssl
|
||||
|
||||
@ -56,7 +56,7 @@ grep还可以在一个或多个文件夹里用于搜索和过滤。让我们来
|
||||
$ sudo ifconfig | grep -B 2 UP
|
||||
|
||||
###5.在匹配字符串周围打印出行号
|
||||
grep命令的**-C**选项和例4中的很相似,不过打印的行号并不是在匹配字符串的前面或后面而是而是按照顺序打印出匹配的行:
|
||||
grep命令的**-C**选项和例4中的很相似,不过打印的并不是在匹配字符串的前面或后面的行,而是打印出两个方向都匹配的行:
|
||||
$ sudo ifconfig | grep -C 2 lo
|
||||
|
||||
###6.计算匹配项的数目
|
||||
@ -64,7 +64,7 @@ grep命令的**-C**选项和例4中的很相似,不过打印的行号并不是
|
||||
|
||||
$ sudo ifconfig | grep -c inet6
|
||||
|
||||
###7.通过给定字符串搜索文件
|
||||
###7.按给定字符串搜索文件
|
||||
|
||||
当你在编译出错时需要调试时,**grep**命令的**-n**选项是个非常有用的功能。它能告诉你所搜索的内容在文件的哪一行:
|
||||
|
||||
@ -72,12 +72,12 @@ grep命令的**-C**选项和例4中的很相似,不过打印的行号并不是
|
||||
|
||||
###8.在所有目录里递归的搜索
|
||||
|
||||
假若你要在当前文件夹里搜索一个东西,而当前文件夹里又有很多子目录,你可以指定一个**-r**选项以便于递归的搜索:
|
||||
假若你要在当前文件夹里搜索一个字符串,而当前文件夹里又有很多子目录,你可以指定一个**-r**选项以便于递归的搜索:
|
||||
$ sudo grep -r "function" *
|
||||
|
||||
###9.进行完全匹配搜索
|
||||
|
||||
传递**-w**选项给grep命令可以在字符串中进行完全匹配搜索。例如,向下面这样输入:
|
||||
传递**-w**选项给grep命令可以在字符串中进行完全匹配搜索。例如,像下面这样输入:
|
||||
|
||||
$ sudo ifconfig | grep -w “RUNNING”
|
||||
|
||||
@ -89,30 +89,30 @@ grep命令的**-C**选项和例4中的很相似,不过打印的行号并不是
|
||||
|
||||
###10.在Gzip压缩文件中搜索
|
||||
|
||||
我们还要关注一下grep的衍生应用。第一个是**zgrep**,这个与**zcat**很相似,可以用于在**gzip**压缩过的文件中进行搜索。它有与**grep**相似的命令,使用方式也一样:
|
||||
我们还要关注一下grep的衍生应用。第一个是**zgrep**,这个与**zcat**很相似,可以用于**gzip**压缩过的文件。它有与**grep**相似的命令选项,使用方式也一样:
|
||||
|
||||
$ sudo zgrep -i error /var/log/syslog.2.gz
|
||||
|
||||
###11.在文件中匹配正则表达式
|
||||
|
||||
**egrep**是另一个衍生应用,代表着“**扩展全局正则表达式**”。它可以识别更多的正则表达式元字符,例如**at + ?** | 和**()**。在搜索源代码文件时,egrep是一个非常有用的工具,还有其他的一些零碎代码文件的搜索需要,使得这样的搜索能力成为必需。也可以grep命令中指定选项**-E**来获得加强正则表达式搜索的能力。
|
||||
**egrep**是另一个衍生应用,代表着“**扩展全局正则表达式**”。它可以识别更多的正则表达式元字符,例如**at + ?** | 和**()**。在搜索源代码文件时,egrep是一个非常有用的工具,还有其他的一些零碎代码文件的搜索需要,使得这样的搜索能力成为必需。可以在grep命令中使用选项**-E**来启用它。
|
||||
|
||||
$ sudo grep -E
|
||||
|
||||
###12.搜索一个固定匹配字符串
|
||||
|
||||
**fgrep**用以在一个文件或文件列表中搜索固定匹配的字符串。功能与**grep -F**同。**fgrep**的一个通常用法为传递一个含有匹配字符串的文件给它:
|
||||
**fgrep**用于在一个文件或文件列表中搜索固定样式的字符串。功能与**grep -F**同。**fgrep**的一个通常用法为传递一个含有样式的文件给它:
|
||||
|
||||
$ sudo fgrep -f file_full_of_patterns.txt file_to_search.txt
|
||||
|
||||
这仅仅是**grep**命令的开始,但是你可能已经注意到,它对于实现各种各样的目的简直是太有用了。除了这种我们实施的只有一行的命令,**grep**还可以写成**cron**任务或者自动的**shell脚本**去执行。保持好奇心,试验一下**man页**的各个选项,为实现你的目的写出一些**grep表达式**。
|
||||
这仅仅是**grep**命令的开始,你可能已经注意到,它对于实现各种各样的需求简直是太有用了。除了这种我们实施的只有一行的命令,**grep**还可以写成**cron**任务或者自动的**shell脚本**去执行。保持好奇心,试验一下**man页**的各个选项,为实现你的目的写出一些**grep表达式**吧。
|
||||
|
||||
---
|
||||
|
||||
|
||||
via: http://www.tecmint.com/12-practical-examples-of-linux-grep-command/
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[jasminepeng](https://github.com/jasminepeng)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
|
@ -1,66 +0,0 @@
|
||||
KayGuoWhu翻译中
|
||||
使用安卓设备控制你的Linux PC
|
||||
================================================================================
|
||||
**下面的教程会指导所有的Linux使用者如何在系统上安装SSH,以便通过安卓智能手机远程访问他们的电脑。**
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/news2/How-to-Control-Your-Linux-PC-with-an-Android-Device-396004-2.jpg)
|
||||
如今我们所有人都拥有一台平板或出触屏手机,我们经常使用它们在深夜里看电影或电视秀,听歌或者阅读一本好书。你可以把这篇文章称作是为那些在大晚上因为太过疲惫而懒得去开启他们电脑上的某些应用程序,移动、删除,复制或重命名某些文件,甚至关掉PC的懒人们准备的教程。
|
||||
|
||||
的确,已经有各种各样的远程桌面解决方案,但是许多方案费用很高,或者实现效果很糟糕,无法像预期一样运行,迫使你最终还是得去电脑上做你原本想做的事情。
|
||||
|
||||
在这个教程里面,我们将使用一种简单、安全、高效的协议,它被称为SSH (Secure Shell),很容易从默认的软件仓库中安装(在Arch linx中是openssh,在Ubuntu中时openssh-server)。
|
||||
|
||||
### 配置SSH服务器 ###
|
||||
|
||||
在安装完成后,你需要为SSH服务器进行基本配置。为此,你需要使用文本编辑器编辑/etc/ssh/sshd_config这个文件。
|
||||
|
||||
1.在文件尾部添加下面一行(yourusername的地方会被你的Linux机器上真实的用户名代替)
|
||||
|
||||
AllowUsers yourusername
|
||||
|
||||
2.取消"#PermitRootLogin"这行注释,把"no"替换成"yes":
|
||||
|
||||
PermitRootLogin no
|
||||
|
||||
3.为了安全起见,你需要修改SSH 连接默认的port 22端口到一个更大编号的端口,譬如在我们的例子中是55441
|
||||
(但不要使用55441,这是初始的,找另一个四位或者五位数字)。因此,取消注释并编辑"#Port 22"如下:
|
||||
|
||||
Port 55441
|
||||
|
||||
### 开启SSH服务器###
|
||||
|
||||
在Ubuntu上,SSH服务通过下面的命令启动:
|
||||
|
||||
sudo /etc/init.d/ssh start
|
||||
|
||||
当你每次修改上述配置文件时,都需要通过下面的命令重启:
|
||||
|
||||
sudo /etc/init.d/ssh restart
|
||||
|
||||
在Arch Linux上,你可以使用下面的命令启动SSH服务:
|
||||
|
||||
sudo systemctl start sshd
|
||||
|
||||
### 配置安卓设备上的SSH客户端###
|
||||
|
||||
JuiceSSH似乎是安卓上最好的SSH客户端之一,而且是免费的。同时,如果你认为它的功能不好,可以花费少量的资金去获取更多高级的特性,譬如亚马逊 AWS/EC2 集成,团队协作,以及更多其它的特性。
|
||||
|
||||
一旦软件安装完毕,开启它,然后你会要求输入一个加密的密码以保证安全连接的安全。这个密码由WES-256进行加密,因此除非你的设备被偷,否则没有人能够获取他们。
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_001.jpg)
|
||||
|
||||
现在,添加一个新连接,选择名称,你的电脑的IP地址,上面设定的端口号和一个需要被创建的身份。
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_002.jpg)
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_003.jpg)
|
||||
|
||||
这就是我的Arch Linux盒子,可以通过我的安卓平板上的JuiceSSH客户端访问到。如果在这个教程中你遇到问题,请在下面进行评论。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/How-to-Control-Your-Linux-PC-with-an-Android-Device-396004.shtml
|
||||
|
||||
译者:[KayGuoWhu](https://github.com/KayGuoWhu) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,151 +0,0 @@
|
||||
08 Linux 内核: 配置内核(Part 4)
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.392/)
|
||||
|
||||
在“The Linux kernel: Configuring the Kernel”的第四部分里,我们将继续配置更多的设置和特性。
|
||||
|
||||
这里我们被问及关于"IBM Calgary IOMMU support (CALGARY_IOMMU)"。这个选项将会提供对IBM xSeries x366和x460的IOMMU的支持。这也将让那些32位PCI,这些系统上不支持双地址周期(DAC (Double Address Cycle))的设备正常运行,因为该系统设置在访问超过3GB内存的时候会有问题。如果需要这些IOMMU设备可以用"iommu=off"在启动时关闭。(这些内核/模块参数会在以后的文章中讨论)
|
||||
|
||||
IOMMU(input/output memory management unit)是一个内存管理单元(MMU),它连接具有DMA功能的I/O总线到主内存上。DMA(Direct Memory Access)是许多计算机支持的一种允许特定设备不借助CPU直接访问内存的特性。双地址周期(Double Address Cycle, DAC)是64位DMA;通常的DMA使用32位。
|
||||
|
||||
下面,我们被问及是否默认启用Calgary(Should Calgary be enabled by default? (CALGARY_IOMMU_ENABLED_BY_DEFAULT))。Calgary与上面提到的IOMMU是同一个概念。这两者之间的不同是IOMMU可以支持许多设备而Calgary只能支持IBM IOMMU设备。如果禁用了它但是以后需要使用到它,可以使用内核参数(iommu=calgary)。
|
||||
|
||||
这里有个问题需要小心处理(Enable Maximum number of SMP Processors and NUMA Nodes (MAXSMP))。只有在内核运行在拥有很多SMP处理器和NUMA节点的情况下如Core i7和许多AMD CPU芯片才启用它。如果系统缺乏或者只有少量的SMP处理器和NUMA节点,内核就会变得低效。这个最好选择"No"。
|
||||
|
||||
非一致性内存访问(Non-Uniform Memory Access (NUMA))是一个每部分内存都需要花费更长时间访问其他部分内存的系统。一个节点就是一组内存。例如,一个NUMA系统可能有三块内存芯片。每块芯片是一个节点。在带CPU的主板上有一个节点/芯片(这是最快的节点)。另外两个在不同的总线傻nag。这两个节点需要比第一个节点花费更长的时间去访问。
|
||||
|
||||
注意:ccNUMA和NUMA目前是相同的至少是非常相似的。
|
||||
|
||||
对称多处理器(Symmetric Multi-Processing (SMP))是NUMA的替代品。它的内存在同一根总线上。只有这么多的CPU可以访问总线,所以这限制了SMP系统上处理器的数量。然而它内存的访问速度一样块。
|
||||
|
||||
记住:我是在为AMD64系统在编译内核,所以我会告诉你我的选择来帮助读者理解过程和选择。如果我没有指出我的选择,那么我用的就是默认选择。如果你在为不同的系统编译或者你有不同的需求,你需要在你的情况下做出替代的选择。
|
||||
|
||||
接下来,除非配置工具已经为你做了选择,选择一个内核需要支持的最多CPU的数量。这个配置根据你给的数量优化内核。
|
||||
|
||||
接着启用或禁用"SMT (Hyperthreading) scheduler support (SCHED_SMT)"。SMT调度器提升了在使用了超线程技术的Pentium 4处理器上的CPU决策。然而,这会带来额外的功耗,在一些系统上最好像我一样选择"no"。
|
||||
|
||||
超线程一种专有的SMT并行微处理器(Intel 实现了它)。这是多任务/多线程(同时做许多任务)的一种特殊形式。同时多线程(Simultaneous multithreading (SMT))提升了多线程的效率。
|
||||
|
||||
在这之后,启用或者禁用"Multi-core scheduler support (SCHED_MC)"。这样也是一种提升多核CPU决策的特性。然而这回带来额外功耗。我选择了"No"。
|
||||
|
||||
在下一个选项中可以选择抢占式模式。
|
||||
|
||||
Preemption Model
|
||||
1. No Forced Preemption (Server) (PREEMPT_NONE)
|
||||
> 2. Voluntary Kernel Preemption (Desktop) (PREEMPT_VOLUNTARY)
|
||||
3. Preemptible Kernel (Low-Latency Desktop) (PREEMPT)
|
||||
choice[1-3]: 2
|
||||
|
||||
抢占就是暂停一个意图让它之后继续执行的中断任务的过程。抢占强制一个进程暂停。任务无法忽视抢占。
|
||||
|
||||
接着,我们被询问关于"Reroute for broken boot IRQs (X86_REROUTE_FOR_BROKEN_BOOT_IRQS)"。这是一个对于假中断的简单修复。假中断是一种不需要的硬件中断。这些通常是有电子干扰或者错误连接的电子产品触发。记住,中断是发送给处理器需要马上注意的信号。
|
||||
|
||||
这个选项对任何机器都很重要;我怀疑任何人可能都会有禁用这个特性的理由(Machine Check / overheating reporting (X86_MCE))。内核必须意识到过热和数据损坏,不然,系统将会继续操作,这样只会导致进一步的破坏。
|
||||
|
||||
下面,用户可以启用禁用"Intel MCE features (X86_MCE_INTEL)",这是一种额外的对像热度监控的Intel MCE特性的支持。因为我是为AMD64处理器编译内核所以我选择了"no"。机器检测异常(MCE)是一种当处理器发现硬件问题时的错误输出。MCE通常会导致内核严重错误(kernel panic)(相当于Windows中的"蓝屏")。
|
||||
|
||||
这个除了是AMD设备外是同一个问题Intel MCE features (X86_MCE_INTEL)。
|
||||
|
||||
下一个是我会禁用的调试特性(Machine check injector support (X86_MCE_INJECT))。这个会允许注射机检查。如果你偶尔执行机器注射,那最好编译成模块而不是编译进内核。机器注射可以使设备即使实际没有错误也可以发送一个错误信息。这个用来确认内核和其他进程可以正常处理错误。比如,如果CPU过热,接着应该关机,但是开发者如何在不损坏CPU的情况下测试代码。注射错误是一种最好的方法,因为它只是一种告诉硬件发送错误信号的软件。
|
||||
|
||||
注:模块是对可能被使用或者很少执行的特性/驱动而言的。只加入在许多使用该内核的系统中用到的特性/驱动到内核中。
|
||||
|
||||
如果内核很可能用在Dell笔记本上,那么启用这个特性(Dell laptop support (I8K))。否则,如果一些用户可能在戴尔笔记本电脑上使用这个内核,将其作为一个模块加入。如果这个内核不打算支持Dell笔记本,那就像我一样注释掉它。特别地,这个支持是一个允许Dell Inspiron 8000系列笔记本访问处理器的系统管理模式的驱动。系统管理模式的目的是得到处理器的温度和风扇状态,这对一些需要控制风扇的系统有用。
|
||||
|
||||
下面,用户可以选择微代码加载支持(CPU microcode loading support (MICROCODE))。这可以允许用户在支持这个特性的AMD或者Intel芯片上更新微代码。
|
||||
|
||||
注意:为了加载微代码,你必须拥有一个为你的处理器设计的合法的二进制微代码拷贝。
|
||||
|
||||
为了加载微代码补丁(修复bug或加入次要的特性)到intel芯片上(Intel microcode loading support (MICROCODE_INTEL)),这个必须启用。我禁用了它。
|
||||
|
||||
除了是AMD芯片外这个与上面的相同(AMD microcode loading support (MICROCODE_AMD))。
|
||||
|
||||
启用这个支持(/dev/cpu/*/msr - Model-specific register support (X86_MSR))可以允许某个处理器有权限使用x86特殊模块寄存器(Model-Specific Registers (MSRs))。这些寄存器是一些字符设备包括主要的202和次要的0到21((/dev/cpu/0/msr to /dev/cpu/31/msr))。这个特性用在多处理器系统上。每个虚拟字符设备都连接到一个特定的CPU。
|
||||
|
||||
注意:MSRs是用来改变CPU设备、调试、性能监控和执行追踪。MSRs使用x86指令集。
|
||||
|
||||
在这之后,我们有一个选项"CPU information support (X86_CPUID",启用这个特性允许处理器访问x86 CPUID指令,这需要通过字符设备在一个特定的CPU上执行。这些字符设备包括主要的202和次要的0到31(/dev/cpu/0/msr to /dev/cpu/31/msr),就像x86_MSR支持上面这些。
|
||||
|
||||
对于支持它的处理器,启用内核线性映射来使用1GB的页(Enable 1GB pages for kernel pagetables (DIRECT_GBPAGES))。启用这个可以帮助减轻TLB的压力。
|
||||
|
||||
页是内存本身的基本单位(位是数据的基本单位)。页的大小是由硬件自身决定的。页码表是虚拟和物理内存间的映射。物理内存是设备上的内存。虚拟内存是到内存的地址。依赖于系统架构,硬件可以访问大于实际内存地址的地址。举例来说,一个64位系统拥有6GB内存,管理员在需要时可以加上更多的内存。这是因为还有很多虚拟内存地址。然而,在很多32位系统上,系统管理员可以增加一条8GB的内存,但是系统无法完全使用它,因为系统中没有足够的虚拟内存地址去访问大容量的内存。转换后援缓冲器(Translation Lookaside Buffer (TLB))是一种提升虚拟内存转换速度的缓存系统。
|
||||
|
||||
下面,我们有了一个NUMA选项(Numa Memory Allocation and Scheduler Support (NUMA))。这可以允许内核在CPU本地内存分配器上分配CPU使用的内存。这个支持同样内核更好感知到NUMA。很少的32位系统需要这个特性,但是一些通用的645位处理器使用这个特性。我选择了"no"。
|
||||
|
||||
|
||||
为了系统使用旧方式来检测AMD NUMA节点拓扑,启用这个特性feature (Old style AMD Opteron NUMA detection (AMD_NUMA))。下一个选项是一种更新的检测方式(ACPI NUMA detection (X86_64_ACPI_NUMA))。如果两个都启用,新的方式将会占支配作用。一些硬件在使用其中一种方式而不是另外一个时工作得更好。
|
||||
|
||||
至于为了调试目的的NUMA仿真,启用下一个特性(NUMA emulation (NUMA_EMU))。
|
||||
|
||||
注意:如果你不打算调试并且你需要一个快速、轻量级系统,那么禁用尽可能多的调试特性。
|
||||
|
||||
下一个选项中,选择你的内核打算如何处理NUMA节点的最大数量。接下来选择内存模型。这里可能只有一个内存模型选择。内存模型指定了内存如何存储。
|
||||
|
||||
Maximum NUMA Nodes (as a power of 2) (NODES_SHIFT) [6]
|
||||
Memory model
|
||||
> 1. Sparse Memory (SPARSEMEM_MANUAL)
|
||||
choice[1]: 1
|
||||
|
||||
为了有助于性能,这里有一个选项用通过虚拟内存映射(Sparse Memory virtual memmap (SPARSEMEM_VMEMMAP))来优化pfn_to_page和page_to_pfn操作。页帧号是每页被给定的号码。这两个操作用来从号码得到页或者从页得到号码。
|
||||
|
||||
下一个选项是允许一个节点可以移除内存(Enable to assign a node which has only movable memory (MOVABLE_NODE))。内核页通常无法移除。当启用后,用户可以热插拔内存节点。同样可移除内存允许内存整理。作为出入内存的数据,只要有可用空间一组数据可能被划分到不同内存。
|
||||
|
||||
接着前面的内存问题,我们还有更多的问题。这些可能已被配置工具预配置了。第三个选项(BALLOON_COMPACTION),当启用时可以帮助减少内存碎片。碎片内存会减慢系统速度。第四个选项(COMPACTION)允许内存压缩。下面列到的第五个选项(MIGRATION)允许页面被移动。
|
||||
|
||||
Allow for memory hot-add (MEMORY_HOTPLUG)
|
||||
Allow for memory hot remove (MEMORY_HOTREMOVE)
|
||||
Allow for balloon memory compaction/migration (BALLOON_COMPACTION)
|
||||
Allow for memory compaction ()
|
||||
Page migration (MIGRATION)
|
||||
|
||||
注意:启用可移动内存会启用以上5个特性。
|
||||
|
||||
下一步,我们可以"Enable KSM for page merging (KSM)"。内核同页合并(Kernel Samepage Merging (KSM))会查看程序认为可以合并的内核。如果两页内存完全相同这可以节约内存。一块内存可以被删除或者被合并,并且只有一块可以使用。
|
||||
|
||||
配置工具可能会自动选择使用多少内存保存用户分配(Low address space to protect from user allocation (DEFAULT_MMAP_MIN_ADDR) [65536])。
|
||||
|
||||
下一个选项很重要(Enable recovery from hardware memory errors (MEMORY_FAILURE))。如果内存故障并且系统有MCA恢复或者ECC内存,系统就可以继续运行并且恢复。要有这个特性,硬件自身和内核都必须支持。
|
||||
|
||||
机器检测架构(Machine Check Architecture (MCA))是一个一些CPU上可以发送硬件错误信息给操作系统的特性。错误更正码内存(Error-correcting code memory (ECC memory))是一种内存设备检测和纠正错误的形式。
|
||||
|
||||
下面,配置工具会自动启用"HWPoison pages injector (HWPOISON_INJECT)"。这个特性允许内核标记一块坏页为"poisoned",接着内核会杀死创建坏页的程序。这有助于停止并纠正错误。
|
||||
|
||||
为了允许内核使用大页(Transparent Hugepage Support (TRANSPARENT_HUGEPAGE)),启用这个特性。这可以加速系统但是需要更多内存。嵌入式系统不必使用这个特性。嵌入式系统通常只有非常小的内存。
|
||||
|
||||
如果启用了上面的,那么巨大页的sysfs支持必须配置。
|
||||
|
||||
Transparent Hugepage Support sysfs defaults
|
||||
1. always (TRANSPARENT_HUGEPAGE_ALWAYS)
|
||||
> 2. madvise (TRANSPARENT_HUGEPAGE_MADVISE)
|
||||
choice[1-2?]: 2
|
||||
|
||||
下面的选项是增加process_vm_readv和process_vm_writev这两个系统调用(Cross Memory Support (CROSS_MEMORY_ATTACH))。这允许特权进程访问另外一个程序的地址空间。
|
||||
|
||||
如果有tmem,启用缓存清理(cleancache)通常是一个好主意 (Enable cleancache driver to cache clean pages if Transcendent Memory (tmem) is present (CLEANCACHE))。当一些内存页需要从内存中移除时,cleancache会将页面放在cleancache-enabled的文件系统上。当需要该页时,页会被重新放回内存中。超绝记忆体(tmem)没有一组一直大小的内存。内核对此内存使用间接寻址。
|
||||
|
||||
下一个选项允许在tmen激活后缓存交换页(Enable frontswap to cache swap pages if tmem is present (FRONTSWAP))。frontswap在交换分区放置数据。交换特性的支持需要这个。超绝记忆体
|
||||
|
||||
最好启用下一个特性(Check for low memory corruption (X86_CHECK_BIOS_CORRUPTION))。这会检测低位内存的内存损坏情况。这个特性在执行期被禁止。为了启用这个特性,在内核命令行内加入"memory_corruption_check=1"(这会在以后的文章中讨论;这不同于任何命令行)。即使经常执行这个特性,也只使用非常小的开销(接近没有)。
|
||||
|
||||
接下来我门可以设置内存损坏检测的默认设置(“Set the default setting of memory_corruption_check (X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK))。这可以选择是否开启或关闭memory_corruption_check。最好启用内存损坏检测不然如果一部分重要内存损坏后可能会导致数据丢失和系统崩溃。
|
||||
|
||||
这个选项关注的是BIOS(Amount of low memory, in kilobytes, to reserve for the BIOS (X86_RESERVE_LOW) [64])。配置工具通常知道给BIOS预留内存的最佳大小。
|
||||
|
||||
对于Intel P6处理器,开发者可以启用存储区域类型寄存器(MTRR (Memory Type Range Register) support (MTRR))。这用于连接着VGA卡的AGP和PCI卡。启用这个特性内核会创建/proc/mtrr。
|
||||
|
||||
如果X驱动需要加入回写入口,那么启用下面的选项(MTRR cleanup support (MTRR_SANITIZER))。这会将MTRR的布局从连续转换到离散。存储区域类型寄存器(Memory type range registers (MTRRs))提供了一种软件访问CPU缓存的方法。
|
||||
|
||||
下面,配置工具已经设置了一些MTRR选项
|
||||
|
||||
MTRR cleanup enable value (0-1) (MTRR_SANITIZER_ENABLE_DEFAULT) [1]
|
||||
MTRR cleanup spare reg num (0-7) (MTRR_SANITIZER_SPARE_REG_NR_DEFAULT) [1]
|
||||
|
||||
为了设置页级缓冲控制,那就启用PAT属性(x86 PAT support (X86_PAT))。页属性表(Page Attribute Table (PATs))是现在版的MTRRs并比它更灵活。如果你经历过因启用它而引发的启动问题,那么禁用这个特性后重新编译内核。我选择了"no"。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-4.4392/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
Loading…
Reference in New Issue
Block a user