标签:linux操作系统 quit blog 动态链接 蓝色 路由 make user and
一、计算机组成及功能1> rhel(red hat enterprise Linux):Red Hat公司发布的面向企业用户的Linux操作系统。早起版本主要用于桌面环境,免费:
2> Fedora:基于Red Hat Linux终止发行后,红帽公司计划以Fedora来取代Red Hat Linux在个人领域的应用,而另外发行的Red Hat Enterprise Linux取代Red Hat Linux在商业应用的领域。Fedora的功能对于用户而言,它是一套功能完备、更新快速的免费操作系统,而对赞助者Red Hat公司而言,它是许多新技术的测试平台,被认为可用的技术最终会加入到Red Hat Enterprise Linux中。Fedora大约每六个月发布新版本。
3> Centos:基于Red hat Linux提供的可自由使用源代码的企业级Linux发行版本。每个版本的Centos都会获得十年的支持(通过安全更新的方式)。新版本的Centos大约每两年发行一次,而每个版本的Centos会定期(大概6个月)更新一次,以支持新的硬件。这样,建立一个安全、低维护、稳定、高预测性、高重复性的Linux环境。
(4)其他发行版本:
1、 Gentoo:基于linux的自由操作系统,基于Linux的自由操作系统,它能为几乎任何应用程序或需求自动地作出优化和定制。追求极限的配置、性能,以及顶尖的用户和开发者社区,都是Gentoo体验的标志特点, Gentoo的哲学是自由和选择。得益于一种称为Portage的技术,Gentoo能成为理想的安全服务器、开发工作站、专业桌面、游戏系统、嵌入式解决方案或者别的东西--你想让它成为什么,它就可以成为什么。由于它近乎无限的适应性,可把Gentoo称作元发行版。
2、 Aech Linux(或称Arch):以轻量简洁为设计理念的Linux发行版。其开发团队秉承简洁、优雅和代码最小化的设计宗旨。
不通发行版之间的联系和区别:
联系:所有发行版都是使用Linux内核;都需要遵循GNU的GPL协定;所有的发行版都有自己的版本号,版本格式约定基本一样(主版本号.次版本号.发行号.修正号)。
区别:发行版的本质区别,在于继承不同版本的内核,库、程序的组成。不同发行版几乎采用了不同包管理器(SLES、Fedora、openSUSE、centos、RHEL使用rmp包管理系统,包文件以RPM为扩展名;Ubuntu系列,Debian系列使用基于DPKG包管理系统,包文件以deb为扩展名。)
三、Linux的哲学思想
1、一切皆文件:是Unix/Linux的重要哲学思想之一,不仅将文件、目录、字符设备、块设备、 套接字等在 Unix/Linux
中都是以文件被对待;它们虽然类型不同,但是对其提供的却是同一套操作界面,作用就是提高资源的管理效率。
2、由众多功能单一的小程序组成:一个程序只做一件事,并且能组合好完成复杂的任务,作用是分工明确,方便进程管理,好处是小程序易于理解,维护,
占用系统资源少。
3、避免令人困扰的图形界面:使用命令行接口执行效率更高,易于以编程的方式实现自动化任务。
4、配置数据存储在文本中:linux所有的配置文件都存放在文本配置文件当中,无论什么配置修改都只需修改其配置文件即可,易于阅读和编辑。
5、提供机制而非策略:从笼统意义上讲,所谓机制就是“提供什么功能”;策略就是“实现什么功能”。其实,机制就是将整个系统看作是一个资源的集合,当
任务来临时能够提供多少资源供其使用,却不介入任务的运行过程,任凭用户自己分配。
四、说明Linux命令的使用格式
1、ifconfig
1.命令格式:
ifconfig [网络设备] [参数]
2.命令功能:
ifconfig 命令用来查看和配置网络设备。当网络环境发生改变时可通过此命令对网络进行相应的配置。
3.命令参数:
up 启动指定网络设备/网卡。
down 关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息流,如果想永久地关闭一个接口,我们还需要从核心路由表中将该接口的路由信息全部删除。
arp 设置指定网卡是否支持ARP协议。
-promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包
-allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包
-a 显示全部接口信息
-s 显示摘要信息(类似于 netstat -i)
add 给指定网卡配置IP地址
del 删除指定网卡的IP地址
<硬件地址> 配置网卡最大的传输单元
mtu<字节数> 设置网卡的最大传输单元 (bytes)
netmask<子网掩码> 设置网卡的子网掩码。掩码可以是有前缀0x的32位十六进制数,也可以是用点分开的4个十进制数。如果不打算将网络分成子网,可以不管这一选项;如果要使用子网,那么请记住,网络中每一个系统必须有相同子网掩码。
tunel 建立隧道
dstaddr 设定一个远端地址,建立点对点通信
-broadcast<地址> 为指定网卡设置广播协议
-pointtopoint<地址> 为网卡设置点对点通讯协议
multicast 为网卡设置组播标志
address 为网卡设置IPv4地址
txqueuelen<长度> 为网卡设置传输列队的长度
4.使用实例:
实例1:查看网络接口状态,不加任何参数,会输出当前网络接口的情况。
实例2:启动关闭指定网卡
ifconfig ens33 up
ifconfig ens33 down
实例3:为网卡配置IP
说明:
ifconfig eth0 192.168.60.129
给eth0网卡配置IP地:192.168.60.129
ifconfig eth0 192.168.60.129 netmask 255.255.255.0
给eth0网卡配置IP地址:192.168.60.192,并加上子掩码:255.255.255.0
ifconfig eth0 192.168.60.129 netmask 255.255.255.0 broadcast 192.168.60.255
/给eth0网卡配置IP地址:192.168.60.129,加上子掩码:255.255.255.0,加上个广播地址: 192.168.60.129
实例4:启用和关闭ARP协议
命令:
ifconfig eth0 arp
ifconfig eth0 -arp
输出:
实例5:设置最大传输单元
命令:
ifconfig eth0 mtu 1480
输出:
说明:
设置能通过的最大数据包大小为 1480 bytes
2、echo
echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。
语 法:echo [-ne][字符串]或 echo [--help][--version]
补充说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。
选项:
-n 不要在最后自动换行
-e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
\a 发出警告声;
\b 删除前一个字符;
\c 最后不加上换行符号;
\f 换行但光标仍旧停留在原来的位置;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
\t 插入tab;
\v 与\f相同;
\ 插入\字符;
\nnn 插入nnn(八进制)所代表的ASCII字符;
–help 显示帮助
–version 显示版本信息
实例1:显示系统定义的变量的值
[root@CentOS7 ~]# echo $USER
root
[root@CentOS7 ~]# echo $HOME
/root
实例2:显示用户自定义的变量的值
[root@CentOS7 ~]# var1=date
[root@CentOS7 ~]# echo "Today‘s date time is : $var1"
Today‘s date time is : Sat Dec 15 17:43:24 CST 2018
实例3:在echo命令中使用反斜线
[root@CentOS7 ~]# echo -e "Ubuntu \bis \bthe \bbest \bDesktop \bOS"
UbuntuisthebestDesktopOS
实例4:显示文本字符串
[root@CentOS7 ~]# echo " Hi this echo command testing"
Hi this echo command testing
实例5:在echo命令中使用制表符空格和垂直制表符
[root@CentOS7 ~]# echo -e "Ubuntu \tis \tthe \tbest \tDesktop \tOS"
Ubuntu is the best Desktop OS
[root@CentOS7 ~]# echo -e "Ubuntu \vis \vthe \vbest \vDesktop \vOS"
Ubuntu
is
the
best
Desktop
OS
实例6:设置echo命令彩色输出
echo命令可以修改字体类型,字体背景色以及字体颜色,转义序列\033可以用于改变字体属性。要使转义序列生效,必须使用-e选项。下面列出了部分转义代码:
[0m: 正常
[1m: 粗体
[4m: 字体加上下划线
[7m: 逆转前景和背景色
[8m: 不可见字符
[9m: 跨行字体
[30m: 灰色字体
[31m: 红色字体
[32m: 绿色字体
[33m: 棕色字体
[34m: 蓝色字体
[35m: 紫色字体
[36m: 浅蓝色字体
[37m: 浅灰字体
[38m: 黑色字体
[40m: 黑色背景
[41m: 红色背景
[42m: 绿色背景
[43m: 棕色背景
[44m: 蓝色背景
[45m: 紫色背景
[46m: 浅蓝色背景
[47m: 浅灰色背景
用紫色加粗字体打印输出My Linux。
[root@CentOS7 ~]# echo -e "\033[1m\033[35mMy Linux\033[0m"
用红色字体黑色背景色打印输出My Linux。
[root@CentOS7 ~]# echo -e "\033[31m\033[40mMy Linux\033[0m"
3、tty
tty命令用于显示终端机连接标准输入设备的文件名称。
在Linux操作系统中,所有外围设备都有其名称与代号,这些名称代号以特殊文件的类型存放于/dev目录下。你可以执行tty(teletypewriter)指令查询目前使用的终端机的文件名称。
语法
tty [-s][--help][--version]
参数说明:
-s或--silent或--quiet 不显示任何信息,只回传状态代码。
--help 在线帮助。
--version 显示版本信息。
实例1:显示当前终端
[root@CentOS7 ~]# tty
/dev/pts/3
4、startx
当我们在终端下想启动图形界面时,我们都会通过输入startx来实现,该命令可以启动一个Xserver,而且可以启动一个漂亮的图形界面。
startx [ [ client ] options ... ] [ -- [ server ] options ... ]。startx其实就是一个脚本,它启动X server就是通过调用xinit命令实现的,startx的参数将全部传给xinit。因此,这些参数的意义和xinit的参数是一样的。
5、export
功能说明:
设置或显示环境变量。
语法:export [-fnp][变量名称]=[变量设置值]
参数:
-f 代表[变量名称]中为函数名称。
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
-p 列出所有的shell赋予程序的环境变量。
实例1:显示当前系统上所有环境变量
直接使用export不加任何选项
实例2:设置环境变量
[root@Python ~]# export PATH="$PATH:/home/Python"
[root@Python ~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/home/Python
实例3:定义环境变量赋值
6、pwd
pwd命令用于显示当前工作目录。
语法
pwd [--help][--version]
参数说明:
--help 在线帮助。
--version 显示版本信息。
实例:查看当前所在目录
[root@CentOS7 network-scripts]# pwd
/etc/sysconfig/network-scripts
7、history
用于显示历史记录和执行过的指令命令。history命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取。在内存中,历史命令仅能够存储1000条历史命令,该数量是由环境变量 HISTSIZE进行控制。
语法:
history [选项] [参数]
-c: 清空命令历史;
-d offset:删除指定命令历史
-r: 从文件读取命令历史至历史列表中;
-w:把历史列表中的命令追加至历史文件中;
history #:显示最近的#条命令
环境变量:
1> HISTSIZE:命令历史的条数
2> HISTFILE:默认为~/.bash_history
3> HISTFILESIZE:HISTFILE文件记录历史的条数
调用历史命令:
1> !# 重复执行第#条命令
2> !! 重复执行上一条命令
3> !str 执行指定str开头的命令(最后一个)
4> !? 获得最后执行的状态码
控制命令历史的记录方式:
1> ignoredups 忽略重复
2> ignorespace 忽略空白开头
3> ignoreboth 上面2个都启用
实例1:显示已记录的历史命令
实例2:删除历史命令中某条历史命令
[root@CentOS7 ~]# history -d 391
实例3:显示最近10条历史命令
[root@CentOS7 ~]# history 10
实例4:清空所有历史命令
[root@CentOS7 ~]# history -c
8、shutdown、poweroff、reboot
1> shutdown 会给系统计划一个时间关机。它可以被用于停止、关机、重启机器。
命令示例:
[root@CentOS7 ~]# shutdown
[root@CentOS7 ~]# shutdown now
[root@CentOS7 ~]# shutdown 13:20
[root@CentOS7 ~]# shutdown -p now ##关闭机器
[root@CentOS7 ~]# shutdown -H now ##停止机器
[root@CentOS7 ~]# shutdown -r09:35 ##在 09:35am 重启机器
[root@CentOS7 ~]# shutdown -c ##取消
2> poweroff
会发送一个 ACPI 信号来通知系统关机。
命令示例:
[root@CentOS7 ~]# poweroff 关闭机器
[root@CentOS7 ~]# poweroff --halt 停止机器
[root@CentOS7 ~]# poweroff --reboot 重启机器
3> reboot
通知系统重启
[root@CentOS7 ~]# reboot 重启机器
[root@CentOS7 ~]# reboot --halt 停止机器
[root@CentOS7 ~]# reboot -p 关闭机器
9、hwclock、date
1> date
date 可以用来显示或设定系统的日期与时间。
语法:
date [OPTION]... [+FORMAT]
FORMAT
%H 小时(以00-23来表示)。
%I 小时(以01-12来表示)。
%K 小时(以0-23来表示)。
%l 小时(以0-12来表示)。
%M 分钟(以00-59来表示)。
%P AM或PM。
%r 时间(含时分秒,小时以12小时AM/PM来表示)。
%s 总秒数。起算时间为1970-01-01 00:00:00 UTC。
%S 秒(以本地的惯用法来表示)。
%T 时间(含时分秒,小时以24小时制来表示)。
%A 星期的完整名称。
%D 日期(含年月日)。
%Y 年份(以四位数来表示)。
MM 月份(必要)
DD 日期(必要)
hh 小时(必要)
mm 分钟(必要)
ss 秒(选择性)
实例1:显示当前系统时间
[root@CentOS7 ~]# date
Sat Dec 15 19:40:33 CST 2018
实例2:格式化输出时间
[root@CentOS7 ~]# date +"%Y-%m-%d %H:%M:%S"
2018-12-15 19:45:49
实例3:修改系统时间
[[root@CentOS7 ~]# date -s "2012-12-12 12:12:12"
Wed Dec 12 12:12:12 CST 2012
2> hwclock、clock
命令可以用来显示/设置硬件时钟命令。
-s, --hctosys:以硬件为准,把系统调整为与硬件时间相同;
-w, --systohc:以系统为准,把硬件时间调整为与系统时钟相同;
五、获取Linux系统帮助信息
获取命令的使用帮助:
内部命令:
help COMMAND
外部命令:
(1) 命令自带简要格式的使用帮助
~]# COMMAND --help
(2) 使用手册:manual
位置:/usr/share/man
~]# man COMMAND
SECTION:
NAME:功能性说明
SYNOPSIS:语法格式
DESCRIPTION:描述
OPTIONS:选项
EXAMPLES:使用示例
AUTHOR: 作者
BUGS: 报告程序bug的方式
SEE ALSO: 参考
...
SYNOPSIS:
[]:可选内容;
<>:必须提供的内容;
a|b|c:多选一;
...:同类内容可出现多个;
使用手册:压缩格式的文件,有章节之分;
/usr/share/man
man1, man2, ...
1:用户命令;
2:系统调用;
3:C库调用;
4:设备文件及特殊文件;
5:文件格式;(配置文件格式)
6:游戏使用帮助;
7:杂项;
8:管理工具及守护进行;
~]# man CHAPTER COMMAND
注意:并非每个COMMAND在所有章节下都有手册;
查看:
~]# whatis COMMAND
注意:其执行过程是查询数据库进行的;
手动更新数据库:
~]# makewhatis
man命令打开手册以后的操作方法:
翻屏:
空格键:向文件尾翻一屏;
b: 向文件首部翻一屏;
Ctrl+d:向文件尾部翻半屏;
Ctrl+u:向文件首部翻半屏;
回车键:向文件尾部翻一行;
k: 向文件首部翻一行;
G:跳转至最后一行;
#G: 跳转至指定行;
1G:跳转至文件首部;
文本搜索:
/keyword:从文件首部向文件尾部依次查找;不区分字符大小写;
?keyword:从文件尾部向文件首部依次查找;
n: 与查找命令方向相同;
N: 与查找命令方向相反;
退出:
q: quit
六、Linux发行版的基础目录名称命名法则及功用规定
linux文件命名法则:
1.文件名严格区分大小写
2.文件可以使用除/以外任意字符
3.文件名长度不能超过255字符
4.以.开头的文件为隐藏文件
在各种版本的linux发行版中,文件系统必要遵循FHS(Filesystem Hierarchy Standard,文件系统结构标准),它定义了一个发行版所必须有的文件目录和可选的文件目录。
FHS:
Filesystem Hierarchy Standard
/bin:所有用户可用的基本命令程序文件;
/sbin:供系统管理使用的工具程序;
/boot:引导加载器必须用到的各静态文件:kernel, initramfs(initrd), grub等;
/dev:存储特殊文件或设备文件;
设备有两种类型:字符设备(线性设备)、块设备(随机设备);
/etc:系统程序的配置文件,只能为静态;
/home:普通的家目录的集中位置;一般每个普通用户的家目录默认为此目录下与用户名同名的子目录,/home/USERNAME;
/root:管理员的家目录;可选;
/lib:为系统启动或根文件系统上的应用程序(/bin, /sbin等)提供共享库,以及为内核提供内核模块
libc.so.:动态链接的C库;
ld:运行时链接器/加载器;
modules:用于存储内核模块的目录;
/lib64:64位系统特有的存放64位共享库的路径;
/media:便携式设备挂载点,cdrom, floppy等;
/mnt:其它文件系统的临时挂载点;
/opt:附加应用程序的安装位置;可选路径;
/srv:当前主机为服务提供的数据;
/tmp:为那些会产生临时文件的程序提供的用于存储临时文件的目录;可供所用户执行写入操作;有特殊权限;
/usr:usr Hierarchy,全局共享的只读数据路径;
bin, sbin
lib, lib64
include:C程序头文件;
share:命令手册页和自带文档等架构特有的文件的存储位置
local:另一个层级目录;
X11R6:X-Window程序的安装位置
src:程序源码文件的存储位置
/usr/local:Local hierarchy,让系统管理员安装本地应用程序;也通常用于安装第三方程序;
/var:/var Hierarchy,存储常发生变化的数据的目录;
cache Application cache data
lib Variable state information
local Variable data for /usr/local
lock Lock files
log Log files and directories
opt Variable data for /opt
run Data relevant to running processes
spool Application spool data
tmp Temporary files preserved between system reboots
/proc:基于内存的虚拟文件系统,用于为内核及进程存储其相关信息;它们多为内核参数,例如net.ipv4.ip_forward, 虚拟为net/ipv4/ip_forward, 存储于/proc/sys/, 因此其完整路径为/proc/sys/net/ipv4/ip_forward;
/sys:sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径;其主要作用在于为管理Linux设备提供一种统一模型的的接口;
标签:linux操作系统 quit blog 动态链接 蓝色 路由 make user and
原文地址:http://blog.51cto.com/12662897/2330910