学习linux-基础一(计算机基础)

计算机基础

一、计算机系统组成

计算机系统由硬件(Hardware)系统和软件(Software)系统两部分组成:

二、冯·诺依曼体系

服务器存储类型

DAS:直接连接存储,存储直接与服务器连接,类似在服务器上直接加入存储,用IDE、SATA等线缆相连接

NAS:网络连接存储,通过局域网,在多个服务器直接实现了文件共享,类似NFS、Windows共享模式

SAN:存储区域网络,有SAN的服务端和SAN的客户端,

四、ABI和API

ABI:应用程序二进制接口,在应用程序和操作系统之间

API应用程序调用接口,在底层和操作系统之间。

五、文件系统

NTFS、FAT、ISO9660

EXT2、EXT3、EXT4 CentOS 6.X系统默认的文件系统

XFS、BTRFS CentOS7默认用的是XFS文件系统

六、分区方案

MBR: 
主分区:一个磁盘主分区的数量≤4,系统要装在主分区上,如果服务器上有两块磁盘,那么其中一块磁盘可以没有主分区

扩展分区:一个磁盘只能有一个扩展分区,扩展分区数量+主分区数量≤4,扩展分区不能存储数据,只能用来划分逻辑分区

逻辑分区:逻辑分区号从5开始编号,例如:sda5

主分区和扩展分区的编号可以认为指定,但是扩展分区里面的逻辑分区是系统自动指定的,分区后需要挂载后才能使用

swap分区在以前内存小的时代,一般是内存的两倍,现在服务器内存比较大,测试环境是2G,生产环境8G以上内存,分给10G就够用了。

七、Linux哲学思想

1、一切皆文件;

2、小型、单一的程序;

3、链接程序,共同完成复杂任务;

4、避免令人困惑的界面;

5、配置数据存储在文本中。

八、SHELL的类型

SHELL:功能可以理解为将命令翻译成计算机能够识别二进制代码的翻译器

SHELL种类:sh、csh、tcsh、ksh、bash、zsh

/etc/shell 配置文件中保存了当前系统支持的shell类型

九、常用的命令

lscpu:查看系统CPU的信息

1.[[email protected] ~]# lscpu
2.Architecture:          x86_64
3.CPU op-mode(s):        32-bit, 64-bit
4.Byte Order:            Little Endian
5.CPU(s):                2
6.On-line CPU(s) list:   0,1
7.Thread(s) per core:    1
8.Core(s) per socket:    1
9.Socket(s):             2
10.NUMA node(s):          1
11.Vendor ID:             GenuineIntel
12.CPU family:            6
13.Model:                 37
14.Model name:            Intel(R) Core(TM) i5 CPU       M 480  @ 2.67GHz
15.Stepping:              5
16.CPU MHz:               2660.039
17.BogoMIPS:              5320.07
18.Hypervisor vendor:     VMware
19.Virtualization type:   full
20.L1d cache:             32K
21.L1i cache:             32K
22.L2 cache:              256K
23.L3 cache:              3072K
24.NUMA node0 CPU(s):     0,1

  

md5sum xxx:可以计算出指定文件的md5值

1.[[email protected] ~]# md5sum /testdir/file
2.bfbcfaf6416f7f3a4ea72b2ec3c2e939  /testdir/file

whoami:可显示当前是哪个用户登录

1.[[email protected] ~]# whoami
2.root

tty:可以显示出当前登录的是哪个用户

1.root[[email protected] ~]# tty
2./dev/pts/0

chvt 1-6 :表示利用终端切换界面

hostname:可显示完整的主机名

lsb_release -a:查看当前操作系统的版本信息

uname -r:查看内核版本

id -u:查看当前登录用户的UID

id -u USERNAME:查看指定用户的UID

echo $SHELL:查看默认的shell类型

getent passwd ftp:可以查看ftp用户的/etc/passwd中的条目

type COMMAND:可以查看指定的命令是外部命令还是内部命令

hash:可以将外部命令的路径结果缓存下来

十、相关命令详解

cd:改变工作目录

语法:cd /PATH/TO/SOMEDIR 切换到指定目录

cd:切换回家目录

cd~:切换回自己的家目录

cd ~USERNAME 切换到指定用户的家目录(只有管理员才有权限切换到其他用户的家目录)

cd - :在上一次所在目录之间来回切换

PWD:用来记录当前工作目录的环境变量

OLDPWD:用来记录上一次工作目录的环境变量

ls:支持指定目录下的内容

语法:ls[OPTION]…[FILE]…

常用选项: 
-a:显示所有文件

-A:显示除.和..之外的所有文件

-l:长格式列表,表示显示文件的详细属性信息

例如: 
-rw-r-x— 1 root root 8827 10月15 20:34 testa.log

文件类型: 
-:表示是普通文件

d:表示目录

c:表示是字符设备文件,支持以”character”为单位进行线性访问

l:表示符号链接(软链接)文件

p:表示是管道文件,有名字的管道文件

s:表示是套接字文件

1:表示文件被硬链接的次数

root:表示文件的属主

root:表示文件的属组

8827:表示文件的大小

但是如果对ll /dev 该处显示的是两个数字,类似brw-rw—-. 1 root cdrom 11, 0 7月13 00:34 sr0

这里的数字前一个表示主设备号,后一个表示次设备号,一个标识设备类型,后一个标识同一类不同设备

10月15 20:34:表示文件最后一次被修改的时间

-h 表示对文件大小做单位换算,换算后的结果可能为非精确值(1000和1024的区别)

-d 表示仅显示目录自身,而不是目录下面每个文件的属性,要与-l一起使用,显示目录自身的属性信息

-r ,–reverse 表示显示时以逆序的方式进行显示,默认是升序显示

-R ,–recursive 表示递归显示

cat:显示文本文件的文件内容

语法:cat [OPTION]…[FILE]… 
选项: 
-n 给显示的文本行编号

-E 显示行结束符,Linux行结束符为$ 
FILE可以有多个,显示的时候将多个文件全部列出来

echo:回显命令 
语法:echo [OPTION]…[STRING]… 
选项: 
-n 显示完成后不自动进行换行

-e 让转意符生效,而不是显示出来

转意符: 
\n 表示换行

\b 表示退格

\t 表示制表符

\0nnn插入nnn(八进制)代表的ASCII编码

利用上述的可以改颜色,颜色配置文件在/etc/DIR_COLORS

echo -e “\033[背景颜色;字体颜色m字符串\033[0m” 背景颜色可省略

echo -e “\033[43;31m nihao \033[0m”

43;31表示前景色和背景色 
字体颜色:30-37分别表示:黑、红、绿、黄、蓝、紫、天蓝、白色

背景颜色:40-47分别表示:黑、红、绿、黄、蓝、紫、天蓝、白色

\033[0m是控制选项,0m表示无属性,1m表示高亮度,4m表示下划线,5m表示闪烁,7m表示反显,8m表示隐藏显示

echo -e “\033[5m\033[44;32m*\033[0m” 显示为*号闪烁,如果写到最后面\033[0m这里,

则会变成显示完成后换行后的命令提示符闪烁

STRING:可以使用引号,单引号和双引号均可使用

单引号:强引用,变量引用不执行替换;

双引号:弱引用,变量引用执行替换;

如:echo “$SHELL” 
显示出来的信息为 /bin/bash

[[email protected] ~]# echo ‘SHELL‘
SHELL
[[email protected] ~]# echo ‘$SHELL‘
$SHELL
[[email protected] ~]# echo echo $USER
echo root
[[email protected] ~]# echo "echo $USER"
echo root
[[email protected] ~]# echo `echo $USER`
root

注意:变量引用中的正规引用表示法为 ${SHELL},只是很多时候{}可以被省略

shutdown: 关机或重启命令 
语法:shutdown [OPTIONS…][TIME][WARNING…] 
选项: 
-h:表示关机 
-r:表示重启 
-c:表示取消之前定义的关机或重启操作 
TIME: 
now:表立即 
hh:mm 表示指定的时间点 
+m 表示在当前时刻的多少分钟之后 
WARNING: 
表示提示信息 
例如:shutdown -r +10 “system is going to reboot after 10 minutes” 
日期相关的命令:date、clock、hwclock、cal 
Linux有两套时间,一套是硬件时钟,一套是系统时钟,系统启动时,从硬件读取日期和时间信息;读取完成以后,就不在与硬件相关 
date:显示或设置系统时间(显示和设定系统时钟) 
语法:date [OPTION]… [+FORMAT] 用来显示时间日期 
date [MMDDhhmm[[CC]YY][.ss]] 用来设置时间日期 
date -d “STRING” :显示指定字符串的日期

例如:date -d yesterday 
date -d “10 days ago” 显示10天以前的日期 
date -d “1 month 10 days ago” 显示1个月10天之前的日期 
date -d “20 days” 显示20天之后的日期 
date –set 20160725 可以将日期设置为2016年7月25日 
date –set “20160726 17:25:26”可以设定日期和时间 
+FORMAT:表示显示为指定格式的日期,+为固定格式 
FORMAT支持的常用格式有: 
%F:显示为例如2016-07-20的日期格式 
%T:显示为例如08:58:15这样的时间显示格式 
%Y:显示年 
%m:显示月 
%d:显示日 
%H:显示几点 
%M:显示几分 
%S:显示几秒 
%j:显示当前数一年中的第多少天,值为1-356 
%D:显示为07/22/16这样月/日/年格式 
%s:显示时间戳,也就是从1970年1月1号0点0分0秒到当前时间所经历的秒数 
多个格式之间用空格分隔,可以将整个格式用双引号引起来 
例如:date +“%F %T” 
例如:date +“%Y%m%d %H%M%S” 
date +“YEAR:%Y Month:%m” 
设定时间的例子: 
date 072008522016.25 表示修改时间为07月20日08点52分钟2016年 25秒 
clock,hwclock:查询和设定硬件时钟(硬件时钟,可理解为BIOS时钟) 
clock和hwclock为同一套命令,clock是hwclock的硬链接 
clock不跟任何信息,表示显示硬件时钟 
-s,–hctosys 表示将系统时间设置为跟硬件时间一样的时间 
-w,–systohc 表示将硬件时间设置为跟系统时间一样的时间

cal:显示日历 
cal 表示显示当前这个月的日历 
cal 2016 表示显示指定年的全年的日历 
cal 07 2016 表示显示指定年的指定月的日历

type:显示命令的类型,是内建命令还是外部命令 
例如:type ls 
如果原始命令被隐藏,要想使用原始命令,可以使用\ls 
whatis COMMAND可以显示命令的大致功能说明 
which:用来显示命令的完整路径 
语法:which [OPTION]…COMMAND 
例如:which ls 
选项: 
–skip-alias 忽略命令别名,而直接显示命令本身 
whereis:显示命令的路径以及相关帮助文件的路径信息 
语法:whereis [OPTIONS] NAME 
例如:whereis ls 
选项: 
-b仅显示二进制文件程序的路径 
-m仅显示帮助文件的程序的路径 
who:显示当天系统的有哪些登录用户 
语法:who [OPTIONS]… 
who 显示当前系统的所有登录用户的信息 
who -b 显示系统启动的时间 
who -r 显示系统启动的时间,以及当前的系统运行级别 
who -d 显示系统死亡进程的信息 
who -u 显示各个登录用户的信息,包括显示登录持续时常和登录的进程号

w:增强版的who命令,用于显示当前所有登录的用户,及其在操作的动作等详细信息 
命令别名: 
alias 可以显示当前系统上的命令别名信息 
定义命令别名: 
alias NAME=’COMMAND’ 只对当前shell有效,立即生效,重启后失效 
例如 alias cds=‘cd /etc/sysconfig/network-scripts/’ 
撤销别名: 
umalias NAME 
例如 unalias cds 
hash命令:可以对命令的路径缓存至内存中 
hash 可以查看缓存的列表 
hash -d COMMAND 可以将hash缓存中包含COMMAND的条目删除 
hash -r 可以清空hash路径缓存的缓存表 
screen命令:字符界面实现远程协助(前提是:连到同一台机器,使用同一个账号)需要安装该screen软件,yum install screen 
打开新共享桌面:screen -S 共享会话的名称 
显示共享桌面会话列表:screen -ls 
对方连到建立的共享会话上:screen -x 会话名称 
退出会话ctrl+a,d 
退出后再次连接上 screen -r 会话的进程号 
退出并完全关闭会话exit 
在远程登录的时候,运行一个执行过程比较长的程序(例如备份),为了防止断网后, 
程序断开,无法知道程序运行的状态,可以单独开个screen来运行该程序 
命令执行的优先级:命令别名>内部>外部命令缓存(hash)>外部命令

十一、课后作业

1、 用echo显示闪烁的,带颜色的倒三角 
echo -e “\033[背景颜色;字体颜色m字符串\033[0m” 背景颜色可省略

1.[[email protected] ~]# echo -e "\033[41;30m nihao \033[0m"
2. nihao

43;31表示前景色和背景色

字体颜色:30-37分别表示:黑、红、绿、黄、蓝、紫、天蓝、白色 
背景颜色:40-47分别表示:黑、红、绿、黄、蓝、紫、天蓝、白色 
\033[0m是控制选项,0m表示无属性,1m表示高亮度,4m表示下划线,5m表示闪烁,7m表示反显,8m表示隐藏显示 
echo -e “\033[5m\033[40;32m *******\n   *****\n    ***\n     *\033[0m” 显示为*号闪烁,如果写到最后面\033[0m这里, 
则会变成显示完成后换行后的命令提示符闪烁

[[email protected] ~]# echo -e "\033[5m\033[40;32m *******\n  *****\n   ***\n    *\033[0m"
 *******
  *****
   ***
    *

来显示一个绿色,闪烁的倒三角

2、date显示前十天前的日期,后20天的日期信息 
显示10天前的日期

[[email protected] ~]# date -d "10 days ago" +%F
2016-11-27

显示20天后的日期

[[email protected] ~]# date -d "20 days" +%F
2016-12-27

  

3、screen命令:字符界面实现远程协助(前提是:连到同一台机器,使用同一个账号)需要安装该screen软件,yum install screen

打开新共享桌面:screen -S 共享会话的名称 
显示共享桌面会话列表:screen -ls 
对方连到建立的共享会话上:screen -x 会话名称 
退出会话ctrl+a,d 
退出后再次连接上 screen -r 会话的进程号 
退出并完全关闭会话exit 
在远程登录的时候,运行一个执行过程比较长的程序(例如备份),为了防止断网后, 
程序断开,无法知道程序运行的状态,可以单独开个screen来运行该程序

时间: 2024-08-07 00:13:54

学习linux-基础一(计算机基础)的相关文章

Linux自学笔记——计算机基础以及命令帮助的获取

计算机基础知识: 计算机的主要组成部分: 运算器.控制器.存储器.输入设备.输出设备 CPU:运算器,控制器 bus:总线 memory: 编址存储设备 IO:与外部部件交互 程序的运行模式: 用户空间:user space,us 内核空间:system space POS:Portable OperationSystem POSIX API:编程接口: 运行程序格式: Windows:EXE,dll(dynamic link library) Linux:ELF,so(shared objec

Linux第一天: 计算机基础知识和CentOS系统安装

Linux哲学思想 一切都是一个文件(包括硬件)小型,单一用途的程序链接程序,共同完成复杂的任务避免令人困惑的用户界面配置数据存储在文本中 开发接口标准 ABI(Application Binary Interface)描述应用程序与OS之间的底层接口:    API(Application Programming Interface)定义源代码和库之间的接口POSIX(Portable Operating System Interface)IEEE在操作系统上定义的一系列API标准 三种存储网

Linux 第一天: 计算机基础和CentOS安装

Linux哲学思想 一切都是一个文件(包括硬件)小型,单一用途的程序链接程序,共同完成复杂的任务避免令人困惑的用户界面配置数据存储在文本中 开发接口标准 ABI(Application Binary Interface)描述应用程序与OS之间的底层接口:    API(Application Programming Interface)定义源代码和库之间的接口POSIX(Portable Operating System Interface)IEEE在操作系统上定义的一系列API标准 三种存储网

python学习第一天:计算机基础

* = 了解 1.python是什么? Python是一门编程语言 2.什么是编程语言? 语言的本质:语言是一个对象与其它对象沟通的工具 编程语言:程序员与计算机沟通的工具 3.什么是编程? 程序员基于某种编程语言的语法格式将自己想要让计算机做的事写到文件中. 编程的结果是一堆文件,这一堆文件就是程序. 4.为什么要编程? 计算机就像人的奴隶,编程的目的就是人要奴役计算机,让计算机代替人类去工作,从而解放人力. 5.计算机硬件: 五大部分: 控制器:计算机的指挥系统.控制器通过地址访问存储器,从

1.JAVA基础复习——计算机基础与环境变量配置

软件开发的了解 软件开发: 软件:一系列按照特定组织的计算机数据和指令的集合. 开发:制作软件. 程序:一系列有序指令的集合. 人机交互 人机交互的方式有两种:图形化界面和命令行方式. 图形化界面:简单直观易于操作. 命令行方式:需要一个控制台需要了解一些特定的指令,较为麻烦. 计算机语言 语言:是人与人之间沟通的一种方式. 计算机语言:是人与计算机交流的方式. Java语言概述 由Sun公司1995年推出的一门语言. 特点:简单易学,完全面向对象,跨平台. Java三大版本 J2SE:标准版,

基础知识-计算机基础部分

cache即高速缓存,由于CPU运行速度比硬盘和内存快得多,所以CPU在存储数据时会等待,cache位于主存和CPU之间,作用是解决主存和CPU速率匹配问题.主板上的控制系统统计主存中哪些数据被CPU频繁访问,然后将这些数据放入cache中,CPU读取时优先在cache中查找,提高了整体速率

magedu第一天学习(计算机基础部分)

第一部分 1.计算机系统的组成部分 计算机系统是由硬件系统和软件系统组成的. 2.计算机的发展史 1946年第一台计算机ENIAC在美国宾州大学诞生. 电子管时代--->晶体管时代--->集成电路时代--->大规模集成电路时代 3.计算机都遵循冯诺依曼体系结构 运算器.控制器集中在CPU里面(central processing unit) 存储器.输入设备.输出设备 特性:使用二进制 4.摩尔定律 当价格不变时,集成电路上可容纳的元器件的数目,在18-24个月后便会增加一倍,相应的性能

计算机基础知识及UNIX发展史

Technorati Tags: UNIX发展史,存储知识,ABI,API,开源协议 TOC[-] 1.计算机系统组成机构 2.冯诺依曼体系结构 3.服务器硬件简介 4.存储容量换算 5.存储基础知识 6.操作系统 7.开发相关概念 8.UNIX发展史 9.开源协议 10.Linux哲学思想 计算机基础知识及UNIX发展史 1.计算机系统组成机构 计算机系统由硬件(Hardware)系统和软件(Software)系统两大部分组成,如下图所示: 2.冯诺依曼体系结构 1946年数学家冯·诺依曼于提

Python学习第一天----计算机基础

一.学习计算机基础的目的 再高级的编程语言都是运行在操作系统之上的,而操作系统又是运行在硬件基础之上.所以在开始学习编程之前需要深刻的了解并熟知计算机的基础知识.包括硬件基础及操作系统基础. 二.计算机硬件发展史 计算机的定义:是现代用于高速计算的一种电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能. 发展史: 原型或者说灵感起源于中国 1946年2月14日情人节这天,世界上第一台电子计算机"电子数字积分计算机ENIAC"在美国宾夕法尼亚大学问世. 电子管时代--