4年多前,刚到上海时报过一个关于Oracle的培训班,在那里接触到了Linux,不过一直都没真正去试着使用它。现在经过慢慢的成长,越来越觉得,Linux是每一个服务端工程师必须掌握的系统,即使是现在最为火热的.NET开源潮流,也离不开对Linux系统的学习。本系列学习将以鸟哥真神的《鸟哥私房菜》一书作为基础,最新的Ubuntu16系统(相比CentOS,其界面更加友好,使用起来比较嗨森,快乐是坚持学习的源泉哈)作为环境来进行,让我们和Linux企鹅一起飞向星辰大海吧。

Linux系列文章

快速入门系列--Linux--01基础概念

快速入门系列--Linux--02文件系统管理

快速入门系列--Linux--03系统管理

快速入门系列--Linux--04扩展知识

Linux的内核是有Linus Torvalds在1991年在芬兰的赫尔辛基大学开发出来的,使用GLP(GNU General Public License)许可证,其代表自由软件的版权,这儿的自由(Free software)表示具有自由度的软件,即用户可以自由执行、复制、再发型、学习、修改和强化自由软件,而不是强调免费(Freeware),自由软件往往是通过售后服务来获得商业价值的。

对于Open Source来说,常见的授权包括:GPL,BSD(Berkeley Software Distribution),Apache License 2.0

Linux Distributions非常多,主要分为两大系统:一种是使用RPM方式安装软件的系统,如RedHat,Fedora,SuSE等;另一种就是使用Debian的dpkg方式安装软件的系统,如Debian、Ubuntu等,这儿为了学习首推Ubuntu,相关软件下载请见如下地址。

虚拟机VmWare:使用开发版的Vmware Workstation 12 Player,https://www.vmware.com/cn/products/player/playerpro-evaluation.html

Ubuntu最新版:http://www.ubuntu.com/download

Linux主要使用场景:WWW、Mail Server、FileServer等各类网络服务器;关键任务的应用,如金融数据库库、大型企业网管环境;高性能运算等。

这部分内容比较简单,主要涉及资源规划和磁盘分区等内容。由于不同设备在linux的名称各不相同,接下来通过一个简单的图表了解各类常见设备在Linux中的名称。

设备 名称
IDE硬盘 /dev/hd[a-d]
SCSI/SATA/USB硬盘 /dev/sd[a-p]
DVD ROM /dev/cdrom

在介绍磁盘分区前,先来回顾下磁盘相关知识,磁盘主要由盘片、机械手臂、磁头和主轴马达组成,数据写入到盘片中。盘片上细分出扇区Sector和柱面Cylinder,其中每个扇区为512bytes(随着固盘的增多,相关技术相对过时)。对于整块磁盘来说,第一扇区最重要,其中包含:主引导分区MBR(Master Boot Record,MBR),可以安装引导加载程序,有446bytes;分区表partion table,记录整个硬盘分区的状况,有64bytes。系统的开机主要涉及两个东西,CMOS和BIOS,前者记录各项硬件参数且嵌入在主板上,后者是主板上的固件,包含开机时主动执行的第一个程序。改程序会根据用户设置去取得能够开机的硬盘,并读取该硬盘第一扇区的MBR位置。该MBR中放置了指定操作系统最基本的引导加载程序,该程序的作用就是加载OS的内核文件。由于现在大家普遍使用云服务,至少是IAAS级别的,因此该部分内容就到此为止。比如我个人就是使用的阿里云,系统选用小规模适用的ubuntu14.0版本,具体的分区等内容已经由服务提供商处理好,只要知道通常会建立/,/boot,/home,/swap等4个分区即可,其中/boot需要强制为主分区并占据硬盘前面的位置,/swap分区为物理内存的1.5-2倍左右。

Linux常见的文件类型包括:ext2/ext3,后者支持日志记录;physical volume(LVM),可以弹性调整文件系统大小;software RAID,可以仿真磁盘阵列;vfat,同时支持windows和linux。

最后附上一些最为基本的常见命令,请见下表。

命令 解释
echo $LANG,$PATH 输出常见环境变量
ls -a 列出文件夹中内容,-a现实隐藏文件
date 显示当前时间
[tab] 命令、文件名补齐
[Ctrl+C],[Ctrl+D] 终止命令,终止输入
man page,info page 在线帮助
exit 注销账号
sync 数据同步到磁盘
shutdown,reboot,halt,poweroff 关机,重启

此外,当忘记root密码时,可以在系统重启读秒时按任意键进入控制菜单,输入e进入grub编辑模式,然后再kernel那行末尾添加:空格 single即可,最后输入passwd即可并输入新密码即可。

对于ubuntu来说,通过sudo passwd可以设置root密码,可以通过如下命令默认进入命令行界面:sudo gedit /etc/default/grub, GRUB_CMDLINE_LINUX="text", sudo update-grub

对于centOS来说,通过vi /etc/inittab,将默认runlevel从5设置为3即可,如果需要图形界面startx即可(ubuntu也是)。
 

参考资料:

  1. 鸟哥. 鸟哥的Linux私房菜基础学习篇(第三版)[M]. 北京:人民邮电出版社, 2010.

Linux快速入门01-基础概念的更多相关文章

  1. JavaWeb零基础入门-01 基础概念说明

    一.序言 从学校出来到实习,发现学校学的东西太过基础,难于直接运用于工作中.而且工作中,现在都以web开发为主,学校开了web开发相关课程.自己学的不够深入,所以本人自学JavaWeb开发,介于学习巩 ...

  2. Git 快速入门--Git 基础

    Git 快速入门 Git 基础 那么,简单地说,Git 究竟是怎样的一个系统呢? 请注意接下来的内容非常重要,若你理解了 Git 的思想和基本工作原理,用起来就会知其所以然,游刃有余. 在开始学习 G ...

  3. Linux快速入门打开你的学习之道

    Linux快速入门打开你的学习之道 相信看到这篇文章的你一定是想要学习Linux,或者已经在学习Linux的人了,那我们就可以一起探讨一下,学习Linux如何快速入门呢? 首先,希望大家弄清楚自己为什 ...

  4. Linux快速入门教程-进程管理ipcs命令学习

    使用Linux系统必备的技能之一就是Linux进程管理,系统运行的过程正是无数进程在运行的过程.这些进程的运行需要占用系统的内存等资源,做好系统进程的管理,对于我们合理分配.使用系统资源有非常大的意义 ...

  5. Linux Capabilities 入门教程:概念篇

    原文链接:Linux Capabilities 入门教程:概念篇 Linux 是一种安全的操作系统,它把所有的系统权限都赋予了一个单一的 root 用户,只给普通用户保留有限的权限.root 用户拥有 ...

  6. 一步步Cobol 400 上手自学入门教程01 - 基础概念

    先学习基础概念 1.COBOL字符:包含: User-defined words 用户定义字符 ŸSystem-names ŸReserved words 关键字 2.用户定义字符User-defin ...

  7. Linux快速入门02-文件系统管理

    继续进入Linux文件系统的学习,加油,早日突破MS压在自己身上的那道束缚. Linux系列文章 快速入门系列--Linux--01基础概念 快速入门系列--Linux--02文件系统管理 快速入门系 ...

  8. Linux快速入门03-系统管理

    这部分将涉及常用的各类linux命令和一些系统高级管理特性,尤其是shell script的创建,这部分在系统自动化运维时会很有作用. Linux系列文章 快速入门系列--Linux--01基础概念 ...

  9. Linux快速入门04-扩展知识

    这部分是快速学习的最后一部分知识,其中最重要的内容就是源码的打包和软件的安装的学习,由于个人的Linux学习目的就是自己能在阿里云Ubuntu上搭建一个简单的nodejs发布环境. Linux系列文章 ...

随机推荐

  1. 置入式模型inclusion model和显示具现化

    1.置入式模型 链接错误: 大多数非模板程序代码的组织如下:A,类声明在头文件中: B:全局变量和非inline函数在cpp文件中定义 但是,如果模板程序也这样组织,则会出错.原因在于:函数模板的定义 ...

  2. what is a ear

    http://docs.oracle.com/javaee/6/tutorial/doc/bnaby.html An EAR file (see Figure 1-6) contains Java E ...

  3. A List of Social Tagging Datasets Made Available for Research

    This list is not exhaustive - help expand it! Social Tagging Systems Research Group Source Year Obta ...

  4. 写好Hive 程序的若干优化技巧和实际案例

    使用Hive可以高效而又快速地编写复杂的MapReduce查询逻辑.但是一个”好”的Hive程序需要对Hive运行机制有深入的了解,像理解mapreduce作业一样理解Hive QL才能写出正确.高效 ...

  5. js中,var 修饰变量名和不修饰的区别

    js中 允许在定义变量的时候 不加var 修饰符.js会在当前作用域下寻找上下文是否定义了此变量, 如果没有找到则会为这个变量分配内存.当且将其视为window的成员. 也就是全局变量. 如果加了va ...

  6. HttpURLConnection使用getInputStream无法执行

    url = new URL(urlStr); urlConn = (HttpURLConnection) url.openConnection(); // 设置请求方式为"GET" ...

  7. (转载)JAVA敏捷开发环境搭建

    整个软件项目分为四个环境 开发本地环境.开发环境.测试环境.IDC环境.和传统C++开发不一样的模式是多了第一个开发本地环境.这是为什么呢,因为目前大部分开发人员还是比较熟悉windows下开发.对于 ...

  8. java jinfo命令详解

    jinfo (configuration info): 功能:输出Java进程的系统信息与jvm参数. 摘要: jinfo [ option ] pid jinfo [ option ] execut ...

  9. 关于echart横轴颜色 纵轴颜色 以及文本颜色的修改

    xAxis : [ { type : 'category', boundaryGap : false, data : ['周一','周二','周三','周四','周五','周六','周日'], axi ...

  10. 微软四十周年 Microsoft’s 40th anniversary

    比尔-盖茨在4月3日给微软全体员工写了这封邮件,原文是英文,我们翻译了中文.图片是后加上的. 明天将是特殊的一天:微软的40周年纪念日. Tomorrow is a special day: Micr ...