Linux初探

Linux初探

1.Linux的发行版本

Linux的发行版本包含社区版本和商业版本,又根据不同版本之间软件管理的方式进行分类,以下是常见的发行版本。

RPM软件管理的社区版本:Fedora,CentOS,openSUSE

RPM软件管理的商业版本:RHEL(Red Hat),SUSE

DPKG软件管理的社区版本:Debian,B2D

DPKG软件管理的商业版本:Ubuntu

2.安装Linux的流程

以下以CentOS 7安装流程为例。

2.1 如何找到系统安装镜像。

方法一:直接搜索引擎搜索需要安装的Linux发行版本的名字,然后进入官网进行下载。不过因为网站处于国外,访问速度会受到影响。

方法二:https://developer.aliyun.com/mirror/访问阿里巴巴镜像网站下载,这里同步了国外的镜像文件,访问和下载速度真不错。

2.2安装过程

准备工作,下载安装vmware软件。因为这是个虚拟机软件,我们就可以直接将镜像安装在这个软件当中,最后就会生成一个虚拟机。

安装好vmware之后,开始进行以下步骤。

1.打开虚拟机,选择文件——新建虚拟机,然后就会出现这样一个画面。这里我们选择默认典型就可以点击下一步。


image-20201125133848816.png

2.下一步之后会出现这样的提示,我们选择稍后安装操作系统。然后进行下一步。


image-20201125134400674.png

3.此时会出现这样的界面,选择栏里面选择Linux操作 系统,版本选择为CentOS 7 64位。接着下一步。


image-20201125134637729.png

4.接着位虚拟机取一个名字,然后在选择安装位置,如下图。再接着下一步。

image-20201125134813504.png

5.接着选择需要分配的磁盘大小,选项默认即可,再点击下一步。

image-20201125134926736.png

6.点击完成,就可以在vmware软件里面发现的新虚拟机。不过现在我们还没有选择操作系统,这里选择编辑虚拟机设置选项。进入设置。

image-20201125135142107.png

7.设置里面有很多参数可以进行配置,这里其他选项可以保持默认,以后熟悉了可以再来进行个性化配置。这里选择CD/DVD,使用ISO映像文件,路径选择为刚才镜像文件下载的地址,点击确定后开启虚拟机。便可以正式开始安装系统。


image-20201125135628595.png

8.选择Install CentOS 7,回车后等待进行下一步安装 。


image-20201125140049842.png

9.选择语言,可以根据自己需要选择,然后选择时间,点击DATE&TIME进入到时间选择,这里选择Asia/ShangHai。接着点击左上角Done按钮返回。


image-20201125140228426.png
image-20201125140413027.png
image-20201125140517475.png

10.再接着选择SOFTWARE SELECTION。进去到安装选项,选择Minimal Install(最小化)安装即可。点击Done按钮返回上级


image-20201125140629131.png

11.选择INSTALLATION DESTINATION,进去选择磁盘,并在红箭头处选择默认自动分区。点击Done按钮返回上级


image-20201125141148683.png

12。选择Begin Installation开始安装,并顺便创建root密码一个普通用户账号。


image-20201125141251908.png

image-20201125141313585.png
image-20201125141422041.png

3配置history命令

配置history命令使其可以观察到命令的具体执行时间。

HISTSIZE:命令历史记录的条数

HISTFILE:指定历史文件,默认为~/.bash_history

HISTFILESIZE:命令历史文件记录历史的条数

HISTTIMEFORMAT="%F %T whoami" 显示时间和用户

HISTIGNORE="str1:str2*:…" 忽略str1命令,str2开头的历史

HISTCONTROL:控制命令历史的记录方式

以上变量可以 export 变量名="值" 形式存放在 /etc/profifile 或 ~/.bash_profifile

[图片上传失败...(image-cc0658-1606288472603)]

4.Linux哲学思想

一切都是一个文件(包括硬件)

小型,单一用途的程序

链接程序,共同完成复杂的任务

避免令人困惑的用户界面

配置数据存储在文本中

5Linux常用命令

5.1 echo

echo 命令可以将后面跟的字符进行输出

功能:显示字符,echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号

​ 选项

​ -E (默认)不支持 \ 解释功能

​ -n 不自动换行

​ -e 启用 \ 字符的解释功能

echo "$VAR_NAME” #用变量值替换,弱引用 
echo '$VAR_NAME’ #变量不会替换,强引用

启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出

\a 发出警告声

\b 退格键

\c 最后不加上换行符号

\e escape,相当于\033

\n 换行且光标移至行首

\r 回车,即光标移至行首,但不换行

\t 插入tab

\ 插入\字符

\0nnn 插入nnn(八进制)所代表的ASCII字符

\xHH插入HH(十六进制)所代表的ASCII数字(man 7 ascii)

5.2 date

date命令可以用来显示或设定系统的日期与时间,在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记 。

若是不以加号作为开头,则表示要设定时间,而时间格式MMDDhhmm[[CC]YY][.ss],其中 MM 为月份,DD 为日,hh 为小时,mm 为分钟,CC 为年份前两位数字,YY 为年份后两位数字,ss 为秒数。

语法格式:date [选项] [+输出形式]

常用参数:

-d datestr 显示 datestr 中所设定的时间 (非系统时间)
-s datestr 将系统时间设为 datestr 中所设定的时间
-u 显示目前的格林威治时间
--help 显示帮助信息
--version 显示版本编号
[root@iz2zed4h7bg5dihzfqhmn9z ~]$date
Wed Nov 25 14:43:47 CST 2020

5.3 ifconfig

ifconfig命令的英文全称是“network interfaces configuring”,即用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。

语法格式:ifconfig [参数]

常用参数:

add<地址> 设置网络设备IPv6的IP地址
del<地址> 删除网络设备IPv6的IP地址
down 关闭指定的网络设备
up 启动指定的网络设备
IP地址 指定网络设备的IP地址
[root@iz2zed4h7bg5dihzfqhmn9z ~]$ifconfig 
docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.18.0.1  netmask 255.255.0.0  broadcast 172.18.255.255
        ether 02:42:8e:2b:af:b6  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.17.24.185  netmask 255.255.240.0  broadcast 172.17.31.255
        ether 00:16:3e:30:c6:6e  txqueuelen 1000  (Ethernet)
        RX packets 5199196  bytes 826089839 (787.8 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3708001  bytes 483656901 (461.2 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 87699  bytes 81689120 (77.9 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 87699  bytes 81689120 (77.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

5.4 screen

screen命令为多重视窗管理程序。此处所谓的视窗,是指一个全屏幕的文字模式画面。通常中有在使用telnet登入主机或是使用老式的终端机时,才有可能用到screen程序。

语法格式:screen [参数]

注意:使用该命令之前需要先安装该工具 yum install -y screen

常用参数:

-A 将所有的视窗都调整为目前终端机的大小
-d<作业名称> 将指定的screen作业离线
-m 即使目前已在作业中的screen作业,仍强制建立新的screeN作业
-r<作业名称> 恢复离线的screen作业
-R 先试图恢复离线的作业,若找不到离线的作业,即建立新的screen作业
-s<shell> 指定建立新视窗时,所要执行的shell
-S<作业名称> 指定screen作业的名称
-v 显示版本信息
-x 恢复之前离线的screen作业
-ls 显示目前所有的screen作业
-list 显示目前所有的screen作业
-wipe 检查目前所有的screen作业,并删除已经无法使用的screen作业

5.5 ls

ls 命令是Linux下最常用的指令之一。ls命令为英文单词 list 的缩写,正如英文单词 list 的意思,其功能是列出指定目录下的内容及其相关属性信息。

默认状态下,ls命令会列出当前目录的内容。而带上参数后,我们可以用ls做更多的事情。作为最基础同时又是使用频率很高的命令,我们很有必要搞清楚ls命令的用法,那么接下来一起看看吧!

语法格式: ls [选项] [文件]

常用参数:

-a 显示所有文件及目录 (包括以“.”开头的隐藏文件)
-l 使用长格式列出文件及目录信息
-r 将文件以相反次序显示(默认依英文字母次序)
-t 根据最后的修改时间排序
-A 同 -a ,但不列出 “.” (当前目录) 及 “..” (父目录)
-S 根据文件大小排序
-R 递归列出所有子目录
[root@iz2zed4h7bg5dihzfqhmn9z ~]$ls -al
total 184
dr-xr-x---. 11 root root  4096 Nov 23 21:40 .
dr-xr-xr-x. 21 root root  4096 Nov 17 21:38 ..
-rw-r--r--   1 root root    22 Nov 16 19:42 aaa.txt
-rw-r--r--+  1 root root    17 Nov 17 08:17 aa.txt
-rw-------   1 root root 21206 Nov 25 14:49 .bash_history
-rw-r--r--.  1 root root    18 Dec 29  2013 .bash_logout
-rw-r--r--.  1 root root   176 Dec 29  2013 .bash_profile
-rw-r--r--   1 root root   214 Nov 19 17:23 .bashrc
-rw-r--r--   1 root root   292 Nov 13 09:04 bc
drwx------   3 root root  4096 Aug 18  2017 .cache
-rw-r--r--   1 root root    22 Nov 16 19:41 cat.log
-rw-r--r--.  1 root root   100 Dec 29  2013 .cshrc
-rw-------   1 root root  1383 Nov 14 19:07 dead.letter
drwxr-xr-x   3 root root  4096 Nov 19 19:34 docker-ce-stable
drwx------   2 root root  4096 Jun 27 09:33 .elinks
-rw-r--r--   1 root root  1573 Nov 15 09:32 file11.txx
-rw-r--r--   1 root root   849 Nov 15 09:27 file23.txt

5.6 export

export命令用于将shell变量输出为环境变量,或者将shell函数输出为环境变量。

一个变量创建时,它不会自动地为在它之后创建的shell进程所知。而命令export可以向后面的shell传递变量的值。当一个shell脚本调用并执 行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。export命令可以用于传递一个或多个变量的值到任何后继脚本。

语法格式: export [参数]

常用参数:

-f 代表[变量名称]中为函数名称
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中
-p 列出所有的shell赋予程序的环境变量

参考实例

列出当前所有的环境变量:

[root@iz2zed4h7bg5dihzfqhmn9z ~]$export -p
declare -x HISTCONTROL="ignoredups"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="iz2zed4h7bg5dihzfqhmn9z"
declare -x LANG="en_US.UTF-8"
declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,193评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,306评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,130评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,110评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,118评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,085评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,007评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,844评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,283评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,508评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,667评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,395评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,985评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,630评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,797评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,653评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,553评论 2 352

推荐阅读更多精彩内容

  • 计算机的组成 冯诺依曼体系 一般而言,计算机的组成遵循着“冯诺依曼体系结构”。这种结构的体现实质上是一种存储程序的...
    ELF_Conan阅读 607评论 0 1
  • Linux操作系统架构 查看你的Linux中安装的shell 输出结果示例: 查看你的Linux当前使用的shel...
    littledust阅读 397评论 0 1
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,158评论 2 33
  • 一、Shell:提供用户输入的命令解释器 一张图就能很明确地表明Shell的作用。 二、Shell下的基本命令操作...
    曲谐_阅读 448评论 0 0
  • 一、计算机的简述 电子计算机,也叫做电脑(computer),是一种用于高速计算的电子计算机器。通过计算机,可以实...
    晓_1e1b阅读 137评论 0 0