Linux入门

Linux 入门

Linux 概述

Unix 介绍

UNIX操作系统(尤尼斯),是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,最早由KenThompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发。目前它的商标权由国际开放标准组织所拥有,只有符合单一UNIX规范的UNIX系统才能使用UNIX这个名称,否则只能称为类UNIX(UNIX-like)。

Linux 介绍

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。伴随着互联网的发展,Linux得到了来自全世界软件爱好者、组织、公司的支持。它除了在服务器操作系统方面保持着强劲的发展势头以外,在个人电脑、嵌入式系统上都有着长足的进步。使用者不仅可以直观地获取该操作系统的实现机制,而且可以根据自身的需要来修改完善这个操作系统,使其最大化地适应用户的需要。

Linux不仅系统性能稳定,而且是开源软件。其核心防火墙组件性能高效、配置简单,保证了系统的安全。在很多企业网络中,为了追求速度和安全,Linux操作系统不仅仅是被网络运维人员当作服务器使用,Linux既可以当作服务器,又可以当作网络防火墙是Linux的 一大亮点。

Linux与其他操作系统相比 ,具有开放源码、没有版权、技术社区用户多等特点 ,开放源码使得用户可以自由裁剪,灵活性高,功能强大,成本低。尤其系统中内嵌网络协议栈 ,经过适当的配置就可实现路由器的功能。这些特点使得Linux成为开发路由交换设备的理想开发平台

Linux 的历史

Linux操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:Unix操作系统、MINIX操作系统、GNU计划、POSIX标准和Internet网络。

20世纪80年代,计算机硬件的性能不断提高,PC的市场不断扩大,当时可供计算机选用的操作系统主要有Unix、DOS和MacOS这几种。Unix价格昂贵,不能运行于PCDOS显得简陋,且源代码被软件厂商严格保密;
MacOS是一种专门用于苹果计算机的操作系统。此时,计算机科学领域迫切需要一个更加完善、强大、廉价和完全开放的操作系统。由于供教学使用的典型操作系统很少,因此当时在荷兰当教授的美国人AndrewS.Tanenbaum编写了一个操作系统,名为MINIX,为了向学生讲述操作系统内部工作原理。MINIX虽然很好,但只是一个用于教学目的的简单操作系统,而不是一个强有力的实用操作系统,然而最大的好处就是公开源代码。全世界学计算机的学生都通过钻研MINIX源代码来了解电脑里运行的MINIX操作系统,芬兰赫尔辛基大学大学二年级的学生Linus Torvalds就是其中一个,在吸收了MINIX精华的基础上,Linus于1991年写出了属于自己的Linux操作系统,版本为Linux0.01,是Linux时代开始的标志。他利用Unix的核心,去除繁杂的核心程序,改写成适用于一般计算机的x86系统,并放在网络上供大家下载,1994年推出完整的核心Version1.0,至此,Linux逐渐成为功能完善、稳定的操作系统,并被广泛使用。

Linux 系统的应用

服务器系统:Web应用服务器、数据库服务器、接口服务器、DNS、FTP等等;
嵌入式系统:路由器、防火墙、手机PDA、IP分享器、交换器、家电用品的微电脑控制器等等,高性能运算、计算密集型应用;Linux有强大的运算能力。
桌面应用系统
移动手持系统

Linux 的版本

Linux的版本分为两种:内核版本和发行版本。
内核版本是指在linus领导下的内核小组开发维护的系统内核的版本号。
发行版本是一些组织和公司根据自己发行版的不同而自定的。

Linux 的主流版本

Linux Mint

Linux Mint是一个基于Ubuntu的发行版,最早于2006年由居住在爱尔兰的法国出生的IT专家Clement Lefebvre发布。最初维护一个专门为新Linux用户提供帮助,技巧和文档的Linux网站,笔者看到了开发Linux发行版的必要性,该发行版致力于解决那些技术性较强的产品的使用问题,让它们更易于使用。在他的网站上向访问者征求反馈意见之后,他继续把许多人提到的“改进的Ubuntu”或“Ubuntu完善版”的东西建立起来。注:Ubuntu就是以易用,对新手友好著称的。可想而知Mint的目标更进一步,让Linux更加的贴近了普通用户

但是,Linux Mint不仅仅是一个具有新的应用程序和更新的桌面主题的Ubuntu。自开始以来,开发人员一直在增加各种Mint下的图形工具以提高可用性;这包括mintDesktop – 用于配置桌面环境的实用程序,mintMenu – 一个新的,优雅的菜单结构,以方便导航,mintInstall – 一个易于使用的软件安装程序,mintUpdate – 一个软件更新程序,提供了一些更突出的几个工具和数百个额外的改进。该项目还开发了很多替代的专有程序以避免一些潜在的法律版权问题,其中包括专利和专利设计的多媒体编解码器,这些编解码器在很多发行版中通常是不存在的。因此,Mint在易用性方面的声誉得到了进一步的加强,也许Linux Mint的最佳特性之一就是开发人员倾听用户的意见,并总是快速地实施好的建议。

因为Linux Mint是可以免费下载,因此该项目通过捐赠,广告和专业支持服务获得收入。它没有固定的发布时间表或者计划的功能列表,但是在每个Ubuntu长期支持版本发布几周后,可以预期Linux Mint的新版本。除Mint的MATE和Cinnamon桌面两个主要版本之外,该项目还使用包括KDE和Xfce在内的其他桌面版本构建版本。这些版本通常在两个“主要”版本几周后完成,有时可能会缺少一些主要分支中中的一些“Mint”工具和其他功能。 Mint系列的另一个版本是基于Debian稳定版分支的“Debian版”。 Linux Mint的Debian版本提供了非常稳定的基础,而桌面软件包的更新速度比Mint的“主要分支”版本更快。 Linux Mint不适用软件自由原则,也不会发布安全公告。

优点:精心整理的内部开发的“Mint”工具,数百个用户友好的增强功能,包含多媒体编解码器缺点:“社区”版本,因此可能并不总是包含最新的功能。另外,项目不会发布安全建议软件包管理: mintInstall包管理器,使用DEB包(与Ubuntu兼容)可用的版本:“主”版本(MATE和Cinnamon桌面),“社区”版本(KDE和Xfce桌面),Linux Mint“Debian”版本(MATE或Cinnamon桌面)

Ubuntu

Ubuntu的推出是在2004年9月首次宣布的。尽管这个项目在Linux发行版中是一个相对较新的,但是它的邮件列表很快就被热情的用户和开发人员所占领。随后的几年中,Ubuntu发展成为最受欢迎的桌面Linux发行版,并为开发易于使用和免费的桌面操作系统做出了巨大贡献,该操作系统成为市场上专有桌面操作系统强有力的竞争者。

Ubuntu成功的原因是什么?首先,这个项目是由南非千万富翁,前Debian开发人员和全球第二位太空游客Mark Shuttleworth共同创建的,该公司是位于马恩岛的Canonical Ltd公司,目前正在为该项目提供资金。其次,Ubuntu从其他类似项目的错误中吸取教训,并从一开始就避免了这些错误 – 它创建了一个优秀的基于Web的基础架构,其中包含Wiki风格的文档,创造性的bug报告功能以及专业的管理方法。第三,由于其富有的创始人,Ubuntu能够向所有感兴趣的用户免费发送CD,从而有助于分发的快速普及。

在技术方面,Ubuntu基于Debian“Sid”(不稳定分支),但是使用的是GNOME,Firefox和LibreOffice等一些著名软件包的最新版本。它使用称为“Unity”独创的用户界面。它具有可预测的6个月发布时间表,外加一个长期支持(LTS)版本,支持5年的安全更新,具体取决于版本(非LTS版本支持9个月)。 Ubuntu的其他特殊功能包括可安装的Live DVD,独占应用和桌面主题,Windows用户的迁移助理,支持3D桌面效果等最新技术,为ATI和NVIDIA图形卡以及无线网络轻松安装专有设备驱动程序,并为非免费或专利设计的媒体编解码器提供按需支持。

优点:固定发布周期和支持期; 具有5年安全更新的长期支持(LTS)变体;新手友好; 丰富的文档,官方和用户无私贡献缺点:与Debian有一定的兼容性问题; 频繁的重大更新可能流失一些用户,Unity用户界面被批评为更适合移动设备,而不是电脑; 非LTS版本只有9个月的安全支持软件包管理:使用DEB包的高级包工具(APT)其他衍生版:Ubuntu,Kubuntu,Xubuntu,Lubuntu,Ubuntu GNOME,Ubuntu MATE,Ubuntu Budgie,Ubuntu Kylin,适用于64位(x86_64)处理器的Ubuntu Studio;基于Ubuntu的发行版: Linux Mint (桌面版本), elementary OS (桌面版本), Zorin OS (桌面版本), Pinguy OS (桌面版本),Trisquel GNU/Linux (自由软件), Bodhi Linux (Enlightenment桌面)

Debian GNU/Linux

Debian GNU / Linux于1993年首次公布。它的创始人Ian Murdock的初始想法是在空闲时间创建一个由数百名志愿者开发的完全非商业项目。当时怀疑论者远远超过乐观主义者,似乎注定要夭折收尾,但实际情况却恰恰相反。 Debian不仅幸存下来,而且还在不到十年的时间里成为了最大的Linux发行版,也是有史以来创建的最大的协作软件项目!

Debian GNU / Linux的成功可以用下面的数字来说明。它由1000多名志愿者开发,它的软件库包含近50,000个二进制包(编译为8个处理器架构),有120个基于Debian的发行版和live CD。这些数字是任何其他基于Linux的操作系统无法比拟的。 Debian主要有三个主要分支(或四个,如果包括增加稳定性的“实验”分支):“unstable”(也称为“sid”),“testing”和“stable ”。软件包和功能的逐步整合和稳定性,以及项目完善的质量控制机制,使得Debian获得了今天可用的最佳测试和无缺陷发行版之一的声誉。

然而,这种冗长而复杂的开发风格也有一些缺点:Debian的稳定版本并不是特别新,特别是因为新的稳定版本每1 – 3年才会发布一次。那些喜欢最新软件包和技术的用户被迫使用Debian testing(测试)或unstable(不稳定)分支。 Debian高度民主的结构导致了有争议的决定,并引发了开发者之间的分歧。这导致了项目的停滞不前,没有能将项目快速推进。

优点:非常稳定;卓越的质量控制;包括超过30,000个软件包;支持比任何其他Linux发行版更多的处理器体系结构缺点:保守 – 由于支持许多处理器架构,并不总是包含更新的技术;缓释周期(每1 – 3年稳定释放一次);对开发者邮件列表和博客的讨论有时是不可能的软件包管理:使用DEB包的高级包工具(APT)可用的版本:12个处理器架构的安装CD/DVD和live CD映像,包括来自Intel,AMD,Power和其他所有32位和64位处理器基于Debian的替代方案:Ubuntu, SparkyLinux(Enlightenment, JWM, LXDE, MATE, Openbox, Razor-qt, Xfce桌面), SolydXK (Xfce或KDE), KNOPPIX (LXDE), Tanglu(GNOME, KDE), siduction (LXQt)

Mageia

Mageia可能是这个列表中的最新发行版,但它的来源可以追溯到1998年7月,当时GalDuval发布了Mandrake Linux。当时它只是一个红帽Linux的分支,KDE作为默认的桌面,更完善的硬件支持和一些用户友好的功能,加上媒体的积极评论,它获得了一定的知名度。Mandrake Linux后来变成了一个商业版本,并在2010年几乎破产之前更名为Mandriva(为了避免一些与商标有关的麻烦,并纪念与巴西的Conectiva合并),最终由一家俄罗斯风险投资公司拯救了,新管理层因为巨大的开支而决定在该公司巴黎总部裁减大部分的Mandriva开发人员。在没有工作的情况下,他们决定组建一个Mageia,这个社区项目是Mandrake和Mandriva的核心延续,或许比Mandriva本身更为合理。

Mageia主要是一个桌面版本。其最受欢迎的功能是最优秀的软件应用,精良的系统管理套件(Mageia控制中心),吸引了大量志愿者贡献者以及广泛的国际化支持。它具有最简单但功能强大的系统安装程序之一,同时还可以使用KDE或GNOME桌面和全面的语言支持。而且可以来直接从桌面安装系统,无需刻录到U盘。该发行版具有良好的软件包管理功能,具有强大的命令行选项和图形化软件管理模块,可以轻松访问数千个软件包。独特的Mageia控制中心随着每个版本的不断改进,为Linux的新手提供了一个强大的工具来配置他们的计算机的任何方面,而无需使用终端命令行。

尽管Mageia自2010年9月成立以来一直处于起步阶段,但仍有人担心其是否有能力维持长期开发的工作,毕竟大部分工作是由志愿者在完成的。此外,它缺乏一些更大的Linux发行版的完善的基础架构。项目的文档也需要做一些改进,而9个月的发布周期在引起新闻和媒体兴趣方面也可以被视为一个缺点,特别是与其他使用6个月的短期开发过程的主要发行版相比。

优点:适合初学者;优秀的中央配置工具;支持数十种语言的开箱即用支持;可安装的Live镜像缺点:与Mandriva分开之后,缺乏声誉和资源,有人担心开发者没有能力长期维持开发软件包管理:使用RPM软件包,Rpmdrake(URPMI的图形前端)的URPMI包管理器可用版本:用于32位(i586)和64位(x86_64)处理器的安装DVD;可安装32位(i586)处理器的live CD

Fedora

虽然Fedora仅在2004年9月才正式发布,但它的起源可追溯到1995年,当时它是由Bob Young和Marc Ewing以Red Hat Linux的名义发布的。该公司的第一款产品Red Hat Linux 1.0“母亲节”在同一年发布,之后很快又进行了一些错误修复更新。 1997年,红帽公司推出了革命性的RPM软件包管理系统,具有依赖解决方案和其他先进功能,极大地促进了分发的迅速普及并超越Slackware Linux成为世界上使用最广泛的Linux发行版。在以后的几年中,红帽将按照正常的6个月发布时间表进行开发。

在2003年刚发布Red Hat Linux 9之后,该公司对其产品系列进行了一些根本性的改变。它保留了红帽商业产品的商标,特别是红帽企业Linux,并引入了Fedora Core(后来改名为Fedora),这是一个红帽赞助的,但面向社区的发行版,专为“Linux爱好者”设计。从刚开始的批评后,Linux社区接受了“新的”发行版作为Red Hat Linux的核心延续版本。 Fedora重新成为一个高质量的版本,成为市场上最受欢迎的操作系统之一。与此同时,红帽公司迅速成为全球规模最大,盈利能力最强的Linux公司,拥有创新的产品阵容,出色的客户支持以及红帽认证工程师(RHCE)认证计划等其他受欢迎的计划。

尽管Fedora的方向仍然由Red Hat,Inc.主要控制,并且该产品有时被看作是对红帽企业Linux的测试平台(小白鼠),无论是正确的还是错误的,无可否认,Fedora是最具创新性的分发版之一。它对Linux内核,glibc和GCC的贡献是众所周知的,它最近集成了SELinux功能,虚拟化技术,系统服务管理器,先进的日志文件系统以及其他企业级功能, 。不利的一面是,Fedora仍然缺乏明确的面向桌面的策略,以使产品更容易用于“Linux爱好者”目标以外的用户。

优点:高度创新;突出的安全功能;大量支持的软件包;严格遵守自由软件的理念;具有许多流行桌面环境的Live CD的可用性缺点:Fedora的优先级倾向于倾向于企业功能,而不是桌面可用性;一些出色的边缘功能,比如早期切换到KDE 4和GNOME 3,偶尔会疏远一些桌面用户软件包管理:使用RPM软件包的YUM图形和命令行工具可用的版本:用于32位(i386)和64位(x86_64)处理器的Fedora;还有GNOME,KDE,LXDE,MATE和Xfce桌面的CD版本

CentOS

CentOS于2003年底推出,是一个社区项目,目标是将红帽企业Linux(RHEL)的源代码重建为可安装的Linux发行版,并为所有包含的软件包提供及时的安全更新。更直白地说,CentOS是一个RHEL克隆版。这两个发行版之间唯一的技术差异就是品牌 – CentOS用自己的所有代码取代了所有的红帽商标和标识。尽管如此,红帽与CentOS之间的关系仍然保持友好,许多CentOS开发者与Red Hat保持着紧密的联系,甚至直接受雇于Red Hat。

CentOS经常被看作是一个可靠的服务器发行版。它配备了经过良好测试和稳定的Linux内核和软件包,构成了其母公司Red Hat Enterprise Linux的基础。尽管是志愿者维护的一个社区项目,但它已经赢得了市场上更高端服务器产品(尤其是经验丰富的Linux系统管理员)的稳定,免费替代品的声誉。 CentOS也适合作为企业桌面解决方案,特别是在稳定性,可靠性和长期支持优于最新软件和功能的地方。像RHEL一样,CentOS支持大约7 – 10年的安全更新。

尽管有其优势,CentOS可能不是所有部署方案中的最佳解决方案。那些喜欢使用最新的Linux技术和最新的软件包进行发布的用户应该到别处去看看。主要的CentOS版本是在RHEL版本的基础上发布的,每2 – 3年才会发布一次,而小版本(例如5.1)则以6到9个月为间隔。小发行通常不包含任何主要功能(虽然有时包括支持更新的硬件),只有少数软件包可能会更新到新版本。 Linux内核,基本系统和大多数应用程序版本保持不变,但偶尔也可以在试验的基础上提供重要软件包(例如LibreOffice或Firefox)的新版本。当然也有一个分支项目,CentOS也为其发行版的用户构建了更新的软件包,但是包含它们的软件库默认是不启用的,因为它们可能会破坏上游的兼容性。

优点:非常稳定和可靠;免费下载和使用;有7年以上的免费安全更新;缺点:缺乏最新的Linux技术;有时该项目未能履行其及时提供安全更新和新稳定版本的承诺软件包管理:使用RPM软件包的YUM图形和命令行工具可用版本:用于i386和x86_64处理器的安装DVD和可安装的Live CD(GNOME);旧版本(3.x和4.x)也可用于Alpha,IA64和IBM z系列(s390,s390x)处理器。其他RHEL克隆和基于CentOS的发行版:Scientific Linux,Springdale Linux,SME服务器,Rocks Cluster Distribution,Oracle Enterprise Linux

PCLinuxOS

PCLinuxOS于2003年由比尔·雷诺兹(Bill Reynolds)首先宣布,被称为“Texstar”。在创建自己的发行版之前,Texstar已经是Mandrake Linux社区用户的知名开发人员构建的最新的RPM包,并提供免费下载。 2003年,他决定建立一个新的发行版,最初基于Mandrake Linux,但有几个显著的可用性改进。理念是应该对初学者是友好的,具有专有内核模块,浏览器插件和媒体编解码器的开箱即用的支持,并应作为一个简单直观的图形安装程序的Live CD

几年后的发展,PCLinuxOS正在迅速接近其预期的状态。就可用性而言,该项目为大多数Windows到Linux移民希望从他们的新操作系统中获得的许多技术提供了开箱即用的支持。在软件方面,PCLinuxOS是一个面向KDE的发行版,具有定制且始终最新版本的流行桌面环境。不断增长的软件存储库包含其他桌面,并为许多常见任务提供各种各样的桌面软件包。对于系统配置,PCLinuxOS保留了很多Mandriva优秀的控制中心,但是用APT和Synaptic(一个图形化的包管理前端)取代了它的包管理系统。

不利的一面是,PCLinuxOS缺乏任何形式的路线图或发布目标。尽管越来越多的社区参与这个项目,大多数的发展和决策仍然掌握在Texstar的手中,他们在判断发布的稳定性时倾向于保守的一面。因此,PCLinuxOS的开发过程往往是艰巨的。例如,尽管频繁要求64位版本,但开发者直到最近才开始生产64位版本。此外,该项目不提供任何安全建议,而是依靠用户通过所包括的管理工具保持系统最新的状态。

优点:对图形驱动程序,浏览器插件和媒体编解码器的开箱即用支持;滚动更新机制;最新的软件缺点:对非英语语言没有开箱即用的支持;缺乏发布计划和安全建议软件包管理:使用RPM包的高级包工具(APT)可用的版本:KDE,完整的Monty,KDE Minime,LXDE,LXDE Mini,Openbox,Openbox盆景,用于64位(x86_64)处理器体系结构的KDE

Linux 目录结构


/

  • root — 启动Linux时使用的一些核心文件。如操作系统内核、引导程序Grub等。
  • home — 存储普通用户的个人文件
    • ftp — 用户所有服务
    • httpd
    • samba
    • user1
    • user2
  • bin — 系统启动时需要的执行文件(二进制)
  • sbin — 可执行程序的目录,但大多存放涉及系统管理的命令。只有root权限才能执行
  • proc — 虚拟,存在linux内核镜像;保存所有内核参数以及系统配置信息
    • 1 — 进程编号
  • usr — 用户目录,存放用户级的文件
    • bin — 几乎所有用户所用命令,另外存在与/bin,/usr/local/bin
    • sbin — 系统管理员命令,与用户相关,例如,大部分服务器程序
    • include — 存放C/C++头文件的目录
    • lib — 固定的程序数据
    • local — 本地安装软件保存位置
    • man — 手工生成的目录
    • info — 信息文档
    • doc — 不同包文档信息
    • tmp
    • X11R6 — 该目录用于保存运行X-Window所需的所有文件。该目录中还包含用于运行GUI要的配置文件和二进制文件。
    • X386 — 功能同X11R6,X11 发行版5 的系统文件
  • boot — 引导加载器所需文件,系统所需图片保存于此
  • lib — 根文件系统目录下程序和核心模块的公共库
    • modules — 可加载模块,系统崩溃后重启所需模块
  • dev — 设备文件目录
  • etc — 配置文件
    • skel — home目录建立,该目录初始化
    • sysconfig — 网络,时间,键盘等配置目录
  • var
    • file
    • lib — 该目录下的文件在系统运行时,会改变
    • local — 安装在/usr/local的程序数据,变化的
    • lock — 文件使用特定外设或文件,为其上锁,其他文件暂时不能访问
    • log — 记录日志
    • run — 系统运行合法信息
    • spool — 打印机、邮件、代理服务器等假脱机目录
    • tmp
    • catman — 缓存目录
  • mnt — 临时用于挂载文件系统的地方。一般情况下这个目录是空的,而在我们将要挂载分区时在这个目录下建立目录,再将我们将要访问的设备挂载在这个目录上,这样我们就可访问文件了。
  • tmp — 临时文件目录,系统启动后的临时文件存放在/var/tmp
  • lost+found — 在文件系统修复时恢复的文件

/:根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中

/bin:/usr/bin:可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。

/boot:放置linux系统启动时用到的一些文件。/boot/vmlinuz为linux的内核文件,以及/boot/gurb。建议单独分区,分区大小100M即可

/dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount /dev/cdrom /mnt。

/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有/etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d修改配置文件之前记得备份。

注:/etc/X11存放与x windows有关的设置。

/home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~test表示用户test的家目录。建议单独分区,并设置较大的磁盘空间,方便用户存放数据

/lib:/usr/lib:/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为/lib/modules。

/lost+fount:系统异常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在装置目录下。如加载硬盘于/disk 中,此目录下就会自动产生目录/disk/lost+found

/mnt:/media:光盘默认挂载点,通常光盘挂载于/mnt/cdrom下,也不一定,可以选择任意位置进行挂载。

/opt:给主机额外安装软件所摆放的目录。如:FC4使用的Fedora 社群开发软件,如果想要自行安装新的KDE 桌面软件,可以将该软件安装在该目录下。以前的 Linux 系统中,习惯放置在 /usr/local 目录下

/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有/proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/*等

/root:系统管理员root的家目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下。

/sbin:/usr/sbin:/usr/local/sbin:放置系统管理员使用的可执行命令,如fdisk、shutdown、mount等。与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能”查看”而不能设置和使用。

/tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下

/srv:服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内

/usr:应用程序存放目录,/usr/bin存放应用程序,/usr/share存放共享数据,/usr/lib存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。/usr/local:存放软件升级包。/usr/share/doc:系统说明文件存放目录。/usr/share/man: 程序说明文件存放目录,使用 man ls时会查询/usr/share/man/man1/ls.1.gz的内容建议单独分区,设置较大的磁盘空间

/var:放置系统执行过程中经常变化的文件,如随时更改的日志文件/var/log,/var/log/message:所有的登录文件存放目录,/var/spool/mail:邮件存放的目录,/var/run:程序或服务启动后,其PID存放在该目录下。建议单独分区,设置较大的磁盘空间

Linux 的常用命名

磁盘管理

ls 命令

  • ls(list)功能:列出目录内容
  • 格式:ls [参数] [文件或目录]
    -a或–all   显示所有文件和目录。注意隐藏文件、特殊目录、. 和 .. 。
    -l   使用详细格式列表,ls -l 可简化成 ll 。
    -t   用文件和目录的更改时间排序。
    -r   反向排序
    –help   在线帮助

cd 命令

  • cd(change directory)功能:切换目录
  • 语法:cd [目录]
  • 常用
    cd ~ ,切换到当前用户目录
    cd / ,切换到根目录
    cd - ,切换到上一次访问的目录
    cd .. ,切换到上一级目录
    cd ,切换到缺省当前用户目录

pwd 命令

  • pwd(print working directory)功能:显示工作目录

mkdir 命令

  • mkdir(make directory)功能:创建目录
    -p   父目录不存在情况下先生成父目录(parents)
    -v   显示命令执行过程中的详细信息

文件管理 - 文件浏览

cat 命令

  • cat(catenate)功能:显示文本文件内容
  • 语法:cat [文件] ,显示指定文件的所有内容

more 命令

  • more功能:分页显示文件内容,还支持直接跳转行等功能。
  • 语法:more file
  • 操作
    Enter   向下n行,需要定义。默认1行
    空格键   向下滚动一屏 或 Ctrl+F
    B   返回上一页 或 Ctrl+B
    q   退出more

less 命令

  • less 功能:分页显示文件内容,操作更详细。
  • 语法:less[参数] 文件
    -m   显示类似 more 命令的百分比
    -N   显示每行的行号
  • 操作
    空格键:前进一页 或 page down
    b:后退一页 或 page up
    d:前进半页
    u:后退半页
    回车键:前进一行 或 方向键向下
    y:后退一行 或 方向键向上
    /字符串:向下搜索
    ?字符串:向上搜索
    v:进入vim编辑器
    左右方向键:相当于水平滚动条
    q:退出

tail 命令

  • 功能:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
  • 格式:tail[必要参数] [选择参数] [文件]
    -n<行数>   显示行数
    -f   循环读取
  • & 表示后台运行,否则占用终端
  • ctrl+C退出

文件管理-文件操作

cp 命令

  • cp(copy)功能:复制文件或目录
  • 语法:cp [参数] [源文件或目录] [目标文件或目录]
    -r 或 –recursive 递归处理,将指定目录下的文件与子目录一并处理。

mv 命令

  • mv(move)功能:移动或更名现有的文件或目录。
  • 语法:mv [源文件或目录] [目标文件或目录]
    -f 或 –force   若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件 或 目录。

rm 命令

  • rm(remove) rm 功能:删除文件或目录
  • 语法:rm[-dfirv] [–help] [–version] [文件或目录…]
    -f 或 –force   强制删除文件或目录
    -r 或 -R 或 –recursive   递归处理,将指定目录下的所有文件及子目录一并处理。

find 命令

  • find 功能:查找文件或目录
  • 语法:find [目录…] [参数]
    -name   指定字符串作为寻找文件或目录的范本样式。

文档编辑

vi 或 vim 命令

基本操作
  • 输入 “vim 文件名” 进入 “一般模式”
  • 按下 “i” 从一般模式,进入 “插入模式”
  • 按下 “esc” 从 “插入模式” 退出到 “一般模式”
  • 在 “一般模式” 下,输入 “:wq”,退出编辑
vi 基本概念
  • 基本上 vi 可以分为三种状态,分别是命令模式(command mode)、插入模式(insert mode)和底行模式(last line mode),各模式的功能区分如下:
  1. 命令行模式 command mode
    控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入 inert mode 下,或者到 last line mode。
  2. 插入模式(insert mode)
    只有在 insert mode 下,才可以做文字输出,按 [ESC] 键可回到命令行模式。
  3. 底行模式(last line mode)
    将文件保存或退出 vi,也可以设置编辑环境,如寻找字符串、列出行号….等。
常用命令
分组命令描述
i在光标前插入
shift + i在光标当前行开始插入
插入a在光标后插入
(从一般模式进入到插入模式)shift+a在光标当前行末尾插入
o在光标当前行的下一行插入新行
shift+o在光标当前行的上一行插入新行
复制或粘贴
(在插入模式下)
yy单行复制
将光标移动到将要复制的行处
复制或粘贴
(在插入模式下)
nyy多行复制
将光标移动到将要复制的首行处
复制或粘贴
(在插入模式下)
p粘贴
将光标移动到将要粘贴的行处
定位gg到文本的第一行
定位shift+g到文本的最后一行
删除dd删除光标所在行
删除ndd删除n行
退出:q退出vi(没有做任何修改时)
退出:q!强制退出文件
退出:w保存不退出
退出:wq保存后退出

管道 |

  • linux提供管道符号 “|”。作用是 “命令1” 的输出内容,将作为 “命令2” 的输入内容,一般与 grep 命令一起使用。
  • 格式: 命令1 | 命令2

grep 命令

grep 全称是 Global Regular Expression Print,表示全局正则表达式版本

  • 功能:用于过滤/搜索的特定字符。可使用正则表达式能多种命令配合使用,使用上十分灵活。
  • 格式:grep [option] pattern [file]
    -i 或 –ignore-case   #忽略字符大小写的差别

系统命令

ps 命令

  • 功能:ps命令是Process Status的缩写。提供对进程的一次性查看。及执行 ps 命令的那个时刻进程信息
  • 格式:ps[参数]
    -e   此参数的效果和指定 “A” 参数相同,显示所有程序
    -f   显示UID,PPIP,C与STIME栏位

kill 命令

  • kill功能:删除执行中的程序或工作。
  • 语法:kill[参数] [程序]
    -l<信息编号>   若不加<信息编号>选项,则-l参数会列出全部的信息名称。
    kill -9   表示强制终止

ifconfig 命令

  • 功能:显示网络设备
  • 命令:ifconfig

ping 命令

  • 功能:测试与目标主机的连通性
  • 命令:ping 主机名或ip地址

备份压缩:tar命令

  • tar功能:文件备份压缩
  • 语法:tar命令
    -c   建立一个压缩文件的参数指令(create)–压缩
    -x   解开一个压缩文件的参数指令(extract)–解压
    -z   是否需要用 gzip 压缩
    -v   压缩的过程中显示文件(verbose)
    -f   使用档名,在 f 之后要立即接档名(file)
    常用解压参数组合:zxvf
    常用压缩参数组合:zcvf

关机重启

  • 重启命令:reboot
  • 关机命令:halt 立刻关机

文件权限:chmod 命令

  • chmod(change mode)功能:变更文件或目录的权限。
  • 语法:chmod[参数] [<权限范围><符号><权限代号>]
    • -R 或 –recursive 递归处理,将指定目录下的所有文件及目录一并处理。
    • 权限范围的表示法如下:
      u: User,即文件或目录的拥有者。
      g: Group,即文件或目录的所属群组。
      o: Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。
      a: All,即全部的用户,包含拥有者,所属群组以及其他用户
    • 符号:
      +   添加权限
        取消权限
    • 有关权限代号的部分,列表于下:
      r:读取权限,数字代码为 “4”。
      w:写入权限,数字代号为 “2”。
      x:执行或切换权限,数字代号为 “1”。
      -:不具有任何权限,数字代号为 “0”。
  • 本文作者: 在线分享网
  • 本文链接: https://me.obey.fun/Linux入门.html
  • 版权声明: 本博客所有文章除特别声明外,均为原创。转载请注明出处!
-------------本文结束 感谢您的阅读-------------
文章对我有益,我要小额赞赏...