鸟哥私房菜基础系列第1篇

鸟哥私房菜基础篇系列

# 续篇和第一篇

续篇

从字符界面开始,这是基础,一定要从下往上学,而不是从上往下学,不然这样子早晚都要找回来的。

第1篇 Linux是什么以及如何学习linux

1.1 linux的发展简史,按时间轴来说

  • 先是出现了早起的Multics,研发这个团队的成员在这个项目结束之后就解散了,其中包括Ken,和Richie
  • Rechite在bell工作,工作需要,用C语言重写了一个精简的Multics,后来另个牛人Ken用更高级的C语言改写了Rechie的作品,并且命名为Unix。没想到这个操作系统是非流行,收人追捧
  • 时间接着往后走,这个时候有一个交Stallman的。这个历史背景下,软件版权之风开始盛行。但是Stallman特例独行,认为软件应当free,应当OpenSource促进文明的发展,成立了一个free software fundation(FSF),后来又发型了Gpl协议。当然,stallman必有过人之处,有很多牛叉的作品。GNU也是这位先生提出的 GNU is Not Unix,gun就是一个概念,这个概念的核心就是"自由软件"
  • 反正Unix变的很火,很多地方都用,当然都是一些大型机和工作站。为了普及在86年的时候,出现了一个XFree86计划,研制出unix配套的gui界面x-windows
  • 时间接着往后,开始出现小型机,intel公司揭竿而起,出现了一些列的x86系列的兼容机。就在这个背景之下,芬兰的一名大学生linus在gun上以及学到了很多unix内核相关的东西,于是就自己你想出来一个适合在intelx86系列小型机上跑的操作系统,名字linux。

1.2 linux到底是个啥

其实linux这是一个kernel内核,这个内核集中了一些核心的功能:

system callinterface
Process ctroll
memory management
file system management
device driver

1.linux的distro

发行版本,其实linux只是一个核心而已,基于GNU的GPl协议,很多公司都自己加了很多别的功能,然后刻录成盘发行。
因为Linux具有硬件需求低、架构开放、系统稳定性及保密性都够强、完全免费的特点。

第1篇 Linux主机的规划

Linux中的硬件文件代号:

IDE硬盘/dev/hd[a-d]
SCSI硬盘/dev/sd[a-p]
光驱/dev/cdrom
软驱/dev/fd[0-1]
打印机/dev/lp[0-2]
鼠标/dev/mouse
磁盘 /dev/ht0(IDE)或/dev/st0(SCSI界面)
网卡 /dev/ethn(n由0开始)

硬盘的知识

  • 基本上,硬盘是由最小的存储单位扇区sector组成,而数个扇区又组成一个磁珠cylinder,最后构成整个硬盘的容量大小。然后一块硬盘,总的来看,就分为两部分:一个用于存放硬盘的信息,称为主引导分区(master boot partion,MBR),另一大块是数据区域。
硬盘
|————MBR
|————数据区域
  • 这其中,MBR这个区域主要是用来记录两个东西的,一个是启动管理程序,一个是硬盘分区表(partition table)。启动管理程序,在开机启动的时候决定如果是多系统的话,考虑哪个系统先启动,到哪个分区去寻找系统文件。分区里面更加关注的是硬盘分区表,我们所谓的分区其实就是修改跟去表的内容,分区表中记录的是磁盘区块的其实为止。而且当年设计的时候,硬盘分区块被设计的只能记录四个分区块的位置,沿用至今。
MBR 记录的内容
|————启动管理程序
|————partition table

MBR只能记录分割的四个分割快的位置,这四个分割快就是所谓的主分区primary和拓展分区extended,也就是说硬盘分区primary加extended只能是4个,而且有extended的话只能有一个,所以4个分区的时候只能是下面的组合:

P + P + P + P
P + P + P + E 

但是注意了,extended不能使用,要想使用extended的话,就必须吧extended分出来逻辑分区logical。扩展分区中分出逻辑分区的好处,就是我们可以打破只能分4区的数量限制。

淡然你也可以分成单个分区,里面可以没有Extended。

3P+E,4个分区表记录,一共6个可用的分区规划,这6个分区的代号如下图:
分区代号示意图
实际可以使用的是/dev/hda1,/dev/hda2,/dev/hda3,/dev/hda5,/dev/hda6和/dev/hda7这6个分区。而/dev/hda4这个扩展分区仅是用来规划出让逻辑分区可以利用的磁盘空间而已。
注意hda1~4食欲留下来的,只能给primary或者extended用,比如下面只有连个分组的情况,如图:
两个分区

分区的时候起码有这么几个分区要考虑到

/ 根目录必须要有的,
swap 交换分区必须要有的
/user 相当于dindows先的programfile文件夹,而且linux本身作为一个安装文件,许多文件存放在这里
/home 必须要有的,而且注意大小
/var 必须要有的,整个系统中,会动态变化的文件都会放到这里,比如一些log都是放到这里的。
/boot 这个是启动目录,推荐有,存放启动是的核心文件,方便系统的回复

第4章 开机关机及帮助

初次登录,我们使用的是“管理员身份”,也就是系统中的超级用户(super user),具有无穷的权利,这个时候会看到提示:
[root@iZ0zpl7q0nklmuZ ~]#
root是我们登录系统的身份,中间的iZ0zpl7q0nklmuZ表示我们登录的主机的名字,最后的~表示用户登录之后所在的家目录。

注:关于登入的身份。为安全起见,我们希望一般时候不要以root身份登入Linux
系统。这里有必要说明root身份与一般用户身份的区别。在Linux上实际记录用户身份的是UID与GID,分别代表用户ID与群组ID。系统管理员(root)的号码即是0,所以您进入/etc/passwd文件即可看到root的两个ID号都是0,基本上,您只要建立一个账号,并且将其UID设定为0,那么它就具有root的身份了。而一般用户的ID号通常在500以后,1~499之间多会留给系统使用,原因是这仅是一个习惯而已。我们都知道root具有无穷大的权力,例如它可以删除任何一个文件或目录,因此,若您以root身份登入Linux系统,不小心删除了任何一个文件,就有可能造成非常大的麻烦。除此之外,使用root身份登入系统最大的问题就是不安全,容易被有心人监听到您对主机下达的命令,使得密码或数据外泄。因此,称职的网管人员通常具有两个账号,平时以一般用户账号使用Linux主机,除非系统的主要功能需要修改设定时,才以root身份登入系统。所以建议您建立一个普通账号供自己平时使用,尤其是远程登入时(如telnet与SSH服务器),最好不要以root身份登入。

退出系统 exit,退出不等于关机,这是你自己这个账户注销掉了,而已,可能别的用户还在系统中。

图形模式和问及界面的切换

这一块不同的发行版本可能略有不同
Ctrl + Alt + [F1] ~ [F6] :文字界面tty1 ~ tty6终端
Ctrl + Alt + [F7] :图形界面
如果初次登入的是文字界面,你只能在6个tty之间来回切换,不能从登入的文字界面切换到图形界面,如果你登入的是文字界面,可以从文字界面通过上面的文字界面切换到字符界面。当然也可以在登入的文字界面,通过一条指令打开图形界面:
startx

指令的输入与基本的指令:

指令组成图解
linux的一个设计特色是,指令名都是小写,选项可能有大写。

显示是简单额指令

date    现实当前的时间
    date +%Y/%m/%d    加上时间现实的格式
    date +%H:%M

显示月份的日历

cal [month] [year]
cal         //现实当前的日历
cal 2017    //现实全年的日历

计算器

bc    //进入bash自带的计算器
quit   //退出上面的计算器

在bc下面基本上可以实现C语言的常规编程,是与类型的与javascript相似。

中断进程

ctrl + c        // 结束一个不停运行的指令
q可以退出当前进入的指令,比如正在使用 more 或者 man指令的时候

查看帮助

man command     // manpages的缩写,可以查看某一个指令的具体用法
info command 和man的功能一样,但是感觉没有man好用
· 空格键: 向下翻页;
· page up: 向上翻页;
· page down: 向下翻页;
· home: 回到最前面;
· end: 转到最终页;
· /word: 搜寻word所代表的文件。接着,按n寻找下一个关键词,按N寻找上一个关键词。    
#### **打开的manpage也都放在/user/share/man文件夹中**

正确的关机方式,只有root用户才有关机的权利,

关机之前应当查看一下系统的状态,who可以查看当前系统登录的都有哪些用户,netstat -a可以查看当前系统的联网状态,ps -aux 可以查看系统当前的主机资源使用情况。
常用额指令两个shutdown 和 reboot

/sbin/shutdown [-t 秒 ] [-arkhncfF] 时间 ] [ 警告信息]
  • -t sec: -t后面跟秒数,亦即“过几秒后关机”的意思
  • -k: 不要真的关机,只是发送警告信息
  • -r: 在将系统的服务停掉之后就重新开机
  • -h: 将系统的服务停掉后,立即关机
  • -n: 不经过init程序,直接以shutdown功能关机
  • -f: 关机并开机之后,强制略过fsck工具的磁盘检查
  • -F: 系统重新开机之后,强制执行fsck磁
  • -c: 取消已经在进行的shutdown指令内容
shutdown -h now 立刻关机,其中now相当于时间为0
shutdown -h 20:25 系统在今天的20:25分关机
shutdown -h +10 系统再过十分钟后自动关机
shutdown -r now 系统立刻重新开机
shutdown -r +30 'The system will reboot'
再过三十分钟系统会重新开机,并显示后面的信息。
shutdown -k 'This system will reboot'
仅发出引号内的警告信息,系统不会关机

shutdown -r now 和 reboot的作用基本上一样。
当然还有别的方法 似乎是init 0 , halt now,poweroff这些都不是正规的挂机方法,容易出现问题。
关机之前最好使用 sync; 这个吧内存中的东西同步到硬盘上,一面造成数据的丢失。

转载于:https://www.cnblogs.com/OliverZhang/p/7653053.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值