Linux快速入门01-基础概念

时间:2022-04-24
本文章向大家介绍Linux快速入门01-基础概念,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

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

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等各类网络服务器;关键任务的应用,如金融数据库库、大型企业网管环境;高性能运算等。

 virtualbox:https://www.virtualbox.org/wiki/Downloads

centos:https://www.centos.org/download/

Debian,优于CentOS,关键就是简单易用,而且系统稳定,但安装包和国内支持很一般

 https://www.debian.org/

官网只提供最新下载,比较蛋疼,推荐:http://cdimage.debian.org/cdimage/archive/

最后选择boot2docker,Tiny版本的linux内核,非常的棒。 

这部分内容比较简单,主要涉及资源规划和磁盘分区等内容。由于不同设备在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也是)。

  • 常用工具

当linux开始ssh服务时(默认端口22),可以通过SSH Secure shell工具连接linux系统,非常的方便,尤其是部署文件时。SSHSecureShellClient3.2.9.rar

更简易的链接工具:putty,PuTTY_0.67.0.0.rar

docker2boot,其使用的是debian4,其端口映射一般为:2022->22

直接通过git获取代码,编译发布即可

常见端口:ftp 21, ssh 22, telnet 23

linux不同版本安装软件:http://www.cnblogs.com/jyginger/archive/2010/07/25/1784599.html

查看网络状态:ifconfig, netstat

http://www.cnblogs.com/allenblogs/archive/2010/07/28/1786950.html

  •  补充命令

输入"uname -a ",可显示电脑以及操作系统的相关信息

输入"cat /proc/version",说明正在运行的内核版本

输入"cat /etc/issue", 显示的是发行版本信息,lsb_release -a 

grep 同时满足多个关键字和满足任意关键字

① grep -E "word1|word2|word3"   file.txt

   满足任意条件(word1、word2和word3之一)将匹配。

② grep word1 file.txt | grep word2 |grep word3

   必须同时满足三个条件(word1、word2和word3)才匹配。

参考资料:

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