1.1、Linux的发行版的联系与区别。
slackware:SUSE Linux Enterprise Server (SLES)
OpenSuse桌面
debian: ubuntu,deepin(深度),mint
redhat: RHEL: RedHat Enterprise Linux(红帽公司,商业),每18个月发行一个新版本
CentOS:RHEL的社区版,免费。
中标麒麟:基于红帽的国产化linux
Fedora:等于RHEL的测试版,大量采用新技术,每6个月发行一个新版本。
ArchLinux:轻量简洁,遵循K.I.S.S.原则( keep it simple and stupid )
Gentoo:极致性能,不提供传统意义的安装程序,下载源代码在本机上编译安装软件
LFS:Linux From scratch 自制Linux
Android:kernel+busybox(工具集)+java虚拟机
创新互联是一家专业提供尼开远企业网站建设,专注与网站设计制作、网站制作、H5建站、小程序制作等业务。10年已为尼开远众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。
1.2、安装Centos7.6操作系统,主要步骤截图。
建立一个2核,2G,200G硬盘的系统。准备开始安装,安装时选开机连接,并指定ISO文件位置。
测试一下光盘好坏,再安装,选第2行。如果已确定光盘是正确的,可以直接选择第1行
选择语言,英语
时区选亚洲,上海
环境选个GNOME桌面
自我分区是重点,没有出现的挂载点可以自己打字。如/data
安装过程中,可以按Ctrl+Alt+F2,切过去查看内存大小,再决定swap分区大小,一般是2倍。按Ctrl+Alt+F6切回图形安装界面。
最终分区如下
最终设置好时区,硬盘分区,软件安装,网络情况,然后Begin Installation
设置好账号密码
完成后,重启,重启后,选择支持协议。然后点finish就行。
安装完毕。
1.3、配置环境变量,实现执行history的时候可以看到执行命令的时间。
配置如下命令HISTTIMEFORMAT="%F %T "到/etc/profile.d/env.sh,注意,要用sh结尾。
1.4、Linux哲学思想。
一切都是一个文件(包括硬件)
小型,单一用途的程序
链接程序,共同完成复杂的任务。如shell编程,把多个小程序组合起来。
避免令人困惑的用户界面。用字符界面居多。
配置数据存储在文本中
1.5、Linux常用命令使用格式,如echo、screen、date、ifconfig、export等。
命令格式
COMMAND [OPTIONS...] [ARGUMENTS...]
options,选项:用于启用或关闭命令的某个或某些功能
短选项:-c 例如:-l, -h
长选项:--word 例如:--all, --human-readable
arguments,参数:命令的作用对象,比如文件名,用户名等
注意:
多个选项以及多参数和命令之间使用空白字符分隔
取消和结束命令执行:Ctrl+c,Ctrl+d
多个命令可以写一行用;符号分开,依次执行。
一个命令可以用\分成多行
date命令
Usage: date [OPTION]... [+FORMAT]
or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
用法一:date 选项 格式
年月日时分秒中,月/日小写,其它大写。
注意,选项-d是按字符串显示时间,-s是按字符串设置时间。
注意,格式中,+号只能有一个。
常用格式如下:
-s,设置当前日期为2019-08-07 06:05:10。如下,当前时间已改变。
[root@centos6 ~]# date -s "1 year"
Tue Feb 16 21:33:10 CST 2021
-d,显示当前时间,格式:2016-06-18 10:20:30。如下,显示正确,当前时间未变
[root@centos6 ~]# date -d yesterday
Sat Feb 15 21:28:02 CST 2020
[root@centos6 ~]# date -d tomorrow
Mon Feb 17 21:28:33 CST 2020
[root@centos6 ~]# date -d "-2 day" //显示前天是周五Fri
Fri Feb 14 21:28:58 CST 2020
[root@centos6 ~]# date -d "+2 day"
Tue Feb 18 21:29:06 CST 2020
echo命令
u功能:显示字符
u语法:echo [-neE][字符串]
u说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号
u选项:
Ø-E (默认)不支持 \ 解释功能
Ø-n 不自动换行
Ø-e 启用 \ 字符的解释功能
u显示变量
echo "$VAR_NAME” 变量会替换,弱引用
echo '$VAR_NAME’ 变量不会替换,强引用
启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出
\a 发出警告声
\b 退格键
\c 最后不加上换行符号
\e escape,相当于\033
\n 换行且光标移至行首
\r 回车,即光标移至行首,但不换行
\t 插入tab
\ 插入\字符
命令行扩展:$( ) 或 ``
把一个命令的输出打印给另一个命令的参数
#echo "This system's name is $(hostname) "
This system's name is server1.example.com
#echo "i am whoami
"
i am root
括号扩展:{ }
打印重复字符串的简化形式
echo file{1,3,5} 结果为:file1 file3 file5
screen命令
开启一个新的虚拟屏幕,可以在一个终端上虚拟出多个终端。退出screen,用exit。注意,需要安装screen包才能使用。
用途:
在使用一个比较长时间能执行完的命令时,需要等待很长的结果,或者因为意外临时关闭了窗口,就要重新来。
还能互相协助。
使用:
screen,要启动 screen 会话,只需在控制台键入 screen,这将打开一个 screen 会话,创建一个新窗口并在该窗口中启动一个 shell 。
screen -S session_name,运行多个 screen 会话时,可以创建命名会话来区分。
screen -r pid,就返回了前面隐藏的终端。
screen -x pid或者session_name,加入一个screen。
screen -ls,可查找 screen 会话 ID列出当前运行的列表:
screen -r 14883,还原进入某screen_session
临时退出,Ctrl+a d(顺序是先Ctrl+a,然后松手,再输入d)。
完全退出,exit。
ifconfig命令
显示网络设备信息(激活状态的):
ifconfig,查看当前网卡情况
说明:
eth0,表示第1块网卡。
lo是表示主机的回环地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 httpd服务器的指定到回环地址,在浏览器输入127.0.0.1就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道。
启动关闭指定网卡:
ifconfig eth0 up
ifconfig eth0 down
为网卡配置和删除IPv6地址:
ifconfig eth0 add 33ffe:3240:800:1005::3/64 #为网卡eth0配置IPv6地址
ifconfig eth0 del 33ffe:3240:800:1005::3/64 #为网卡eth0删除IPv6地址
用ifconfig修改MAC地址:
ifconfig eth0 hw ether 00:AA:BB:CC:dd:EE
配置IP地址:
[root@localhost ~]# ifconfig eth0 192.168.2.10
[root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0
[root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255
启用和关闭arp协议:
ifconfig eth0 arp #开启网卡eth0 的arp协议
ifconfig eth0 -arp #关闭网卡eth0 的arp协议
设置最大传输单元:
ifconfig eth0 mtu 1500 #设置能通过的最大数据包大小为 1500 bytes
export命令
export命令用于将shell变量输出为环境变量,或者将shell函数输出为环境变量。
一个变量创建时,它不会自动地为在它之后创建的shell进程所知。而命令export可以向后面的shell传递变量的值。当一个shell脚本调用并执行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。export命令可以用于传递一个或多个变量的值到任何后继脚本。
语法
export(选项)(参数)
选项
-f:代表[变量名称]中为函数名称;
-n:删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中;
-p:列出所有的shell赋予程序的环境变量。
参数
变量:指定要输出或者删除的环境变量。
实例
列出当前所有的环境变量:
定义环境变量:
# export MYENV
定义环境变量赋值:
# export MYENV=7
**