一、什么是linux操作系统?
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。
二、linux操作系统下载
经常有新接触 Linux的同学问,“Linux操作系统从哪里下载啊?”这种问题,对于熟手来说要么不屑一提,要么就引来了各种 Linux 发行版之争,让初学者无所适从。 其实,对于新接触 Linux 操作系统的人来说,很多人都不知道 “Linux” 原来不是一个!而是有林林总总上千种发行版,甚至你乐意的话,都可以制作发行自己的发行版。而各种不同的发行版也各有特色,还层出不穷的推出新版本。这简直让初学者如置身森林,茫然不知所措~
三、linux操作系统常用命令
●man :任何时候你觉得对一个命令行不是很确定,都可以通过输入“man + 命令”了解这个命令能确切是做什么的。
●ls :列出目录内容。
●pwd :在终端中显示当前工作目录的全路径。
●cd :要变更你当前所在的目录。
●mkdir :创建一个新的目录。
●cp :复制文件/重命名文件。
●mv :移动文件。
●find 和 locate:搜索文件。
●kill :快速关闭一个进程。
●passwd :更改密码。
●md5sum :计算和检验MD5信息签名
●history :查询历史记录命令。
●sudo :(super user do)命令允许授权用户执行超级用户或者其它用户的命令。
●touch :创建一个新文件,或者将文件的访问和修改时间更新为当前时间。
●chmod :修改文件的访问权限。
●chown :改变文件拥有者和所在用户组。
●apt :APT是一个为Debian系列系统(Ubuntu,Kubuntu等等)开发的高级包管理器,在Gnu/Linux系统上,它会为包自动智能地搜索、安装、升级以及解决依赖问题。
四、学习linux操作系统新手常犯的几个错误
●不要以根用户登录:这是使用Unix的惯例,除非必须那么不要轻易在根用户下运行任何东西。
●文件命名混乱:避免使用美元符($),括弧和百分号(%)等特殊字符,这些字符对于shell有着特殊意义,可能会引起冲突。避免使用空格,不要使用无效字符,“/”是根目录专用的。
●所有文件都混在一起:将Home目录放在一个独立的分区上,可以在你重装系统甚至升级你的整个版本而不会丢失你的数据和个人设置。
●试图点击运行.exe文件:除非你安装了WINE,双击那些.exe文件毫无用处。新用户需要知道,无论是Linux还是Windows,都只会运行针对自身系统开发的应用程序。
●以默认格式向微软Office用户发送OpenOffice文档:微软产品对其它操作系统和其它应用程序的友好性并不强,许多新Linux用户在共享文件给朋友时往往会遇到麻烦,因为对方无法阅读他们共享的文件格式,因此新Linux用户要注意存储文件的格式,确保它们能够被微软类似应用所打开。
●忽视更新:新的更新可以为一些新的漏洞打上补丁。维持更新可以在一个易受损的系统与一个安全的系统之间构造分水岭。Linux的安全来自于不断地维护。
五、如何保护你的linux操作系统
在现在这个世道中,Linux操作系统的安全是十分重要的。但是,你得知道怎么干。一个简单反恶意程序软件是远远不够的,你需要采取其它措施来协同工作。那么试试下面这些手段吧。
1. 使用SELinux
SELinux是用来对Linux进行安全加固的,有了它,用户和管理员们就可以对访问控制进行更多控制。SELinux为访问控制添加了更细的颗粒度控制。与仅可以指定谁可以读、写或执行一个文件的权限不同的是,SELinux可以让你指定谁可以删除链接、只能追加、移动一个文件之类的更多控制。(LCTT译注:虽然NSA也给SELinux贡献过很多代码,但是目前尚无证据证明SELinux有潜在后门)
2. 订阅漏洞警报服务
安全缺陷不一定是在你的操作系统上。事实上,漏洞多见于安装的应用程序之中。为了避免这个问题的发生,你必须保持你的应用程序更新到最新版本。此外,订阅漏洞警报服务,如SecurityFocus。
3. 禁用不用的服务和应用
通常来讲,用户大多数时候都用不到他们系统上的服务和应用的一半。然而,这些服务和应用还是会运行,这会招来攻击者。因而,最好是把这些不用的服务停掉。(LCTT译注:或者干脆不安装那些用不到的服务,这样根本就不用关注它们是否有安全漏洞和该升级了。)
4. 检查系统日志
你的系统日志告诉你在系统上发生了什么活动,包括攻击者是否成功进入或试着访问系统。时刻保持警惕,这是你第一条防线,而经常性地监控系统日志就是为了守好这道防线。
5. 考虑使用端口试探
设置端口试探(Port knocking)是建立服务器安全连接的好方法。一般做法是发生特定的包给服务器,以触发服务器的回应/连接(打开防火墙)。端口敲门对于那些有开放端口的系统是一个很好的防护措施。
6. 使用Iptables
Iptables是什么?这是一个应用框架,它允许用户自己为系统建立一个强大的防火墙。因此,要提升安全防护能力,就要学习怎样一个好的防火墙以及怎样使用Iptables框架。
7. 默认拒绝所有
防火墙有两种思路:一个是允许每一点通信,另一个是拒绝所有访问,提示你是否许可。第二种更好一些。你应该只允许那些重要的通信进入。(LCTT译注:即默认许可策略和默认禁止策略,前者你需要指定哪些应该禁止,除此之外统统放行;后者你需要指定哪些可以放行,除此之外全部禁止。)
8. 使用入侵检测系统
入侵检测系统,或者叫IDS,允许你更好地管理系统上的通信和受到的攻击。Snort是目前公认的Linux上的最好的IDS。
9. 使用全盘加密
加密的数据更难窃取,有时候根本不可能被窃取,这就是你应该对整个驱动器加密的原因。采用这种方式后,如果有某个人进入到你的系统,那么他看到这些加密的数据后,就有得头痛了。根据一些报告,大多数数据丢失源于机器被盗。
六、自学Linux操作系统命令的四种方法
如果你想成为Linux高手,那么掌握一些Linux命令是必不可少的。下面是自学Linux命令的四种方法。
自学Linux操作系统----每日提示
学习Linux命令的一种渐进式方法是:在每次打开终端时,让它显示“每日提示”。这会向你介绍一些有用的命令及其高级使用技巧。在.bashrc中(/home/.bashrc)增加如下一行:
你只需要增加这行就够了!如果你想让它更娱乐化一些,你可以安装cowsay。Ubuntu/Debian下安装cowsay:
Fedora下安装cowsay:
除了安装cowsay,还需要在.bashrc中增加:
然而,上述使用cowsay的方法并不是在所有Linux发行版下均可运行成功。
自学Linux操作系统----使用“whatis”
如果你不喜欢学习随机的命令,或许你喜欢在使用某种命令的时候学习它的用法。这时你只需要在其前面加上whatis即可。Whatis会逐条的解释你输入的命令。
上图的whatis sudo yum install cheese例子清楚的告诉你:
1)sudo是让你具有管理员权限;
2)yun是软件包管理器;
3)install是让YUM安装软件包;
4)cheese是你打算安装的软件。
这种方法在复杂的或者不常见的命令前执行的效果并不好。但是如果你想了解某个命令的大概用途,这种方法还是值得一试。
自学Linux操作系统----浏览命令的所有可用选项
如果你正在使用一个新的命令,那么有两种途径可以查看它的详细用法。一种途径是“man <程序>”,其中<程序>是你要运行的程序名字。例如,“man cp”会在man文件浏览器中告诉你cp的详细用法。
另一种途径可以更快的查看某个命令的主要用法——“ -help”。例如,“cp -help”会在终端中直接打印出cp命令的大量用法。换句话讲,-help选项在所有的Linux命令中具有相同的含义。
自学Linux操作系统----速成班!是的,现在!
最后,你可以在这里学习Linux命令的语法!了解Linux命令的基本语法对于理解命令很有益处,很值得一学。所有的Linux命令都具有相同的结构:
让我来分段剖析上述的结构:
1.如果一个命令需要管理员权限(root访问权限)才能运行,那么必须在它之前加上“sudo”。这使得在运行命令之输入管理员的密码。
2.“program”是应用程序的名字。它包括yum, apt-get, cheese, tar, cp, mv和firefox等等。如果没有经过额外的配置,所有可以通过这种方法访问的命令均放在/usr/bin目录下(译者注:默认情况下其它一些目录下的程序也可以这样运行,如/bin下的命令)。对于很多程序,你只需要在终端中输入其名字。例如,在终端中输入”firefox”,然后按Enter键,Firefox就运行起来了。
3.在程序名字的后面,你可以使用不同的参数和标志。不同程序在这方面差别很大。例如,命令“cp file1 file2”在file1的所在目录下将其复制一份并另存为file2。这里的“file1”和“file2”是命令“cp”的两个参数。一些命令也通过使用不同的标志来改变其行为。例如,命令“sudo yum install cheese -y”中的“install”是yum的参数,“cheese”是install的参数,“-y”是yum的标志——当yum询问你是否继续的时候,一律默认回答“yes”。需要注意的是,一些标志有自己的参数,而另一些则没有。这里就不给出具体的例子了。每个Linux名字都有自己的一套标志设定,掌握这些需要长时间的积累。
七、一个愚蠢的极客把戏:在linux终端上看电影
时至今日,随处可见高分辨率的视频(youtube上也是如此),只有那些真正的怪人才会去使用ascii文本来在终端上播放电影。不过令人惊讶的是,一些视频用这种方法竟然效果还行!
我发现动画视频的显示效果最好,这可能是因为它们对细节的要求不是很高。
用ascii文本播放电影
首先,你要确认mplayer已经装好,你只需执行下面这条命令:
接下来,为了在linux操作系统播放电影,你需要执行下面的命令,记得把MovieName.avi改成你电脑里面电影文件的名字:
“caca”命令代表着彩色文本播放引擎,你也可以使用“-vo aa”命令来替代它,这样你就可以把彩色的文本变成黑白两色 = = ,这看起来真是愚蠢。
上面这个截图可能并不是很客观,不过如果你自己亲自在linux操作系统试试的话,就会发现情况好不到哪去。
如果对比度大的话,看起来会好一点。
不过别指望离屏幕两米远会对观看有什么帮助。
唉,在linux操作系统看电影真是个愚蠢的极客把戏。