- [ul]一、Linux系统使用注意
- 二、Linux目录结构
- 三、Linux入门命令
- 1.Linux分区与windows分区
- 2.Linux系统文件架构
- 3.Linux系统的文件目录用途
- ☆ 获取计算机的主机名称
- ☆ 设置计算机的主机名称
- ① 瞬态主机名称(临时设置)
- ② 静态主机名称(永久生效)
- ③ 灵活主机名称(主机名称可以添加特殊字符)
- ☆ 用法一
- ☆ 用法二
- ☆ 用法三
- 1)Linux命令补全Tab键
- 2)su 切换用户
- 3)uname获取计算机操作系统相关信息
- 4)ls显示当前目录下的文件信息
- 5)pwd查看当前所在路径
- 6)cd切换目录
- 7)clear清屏
- 8)reboot重启计算机
- 9)shutdown关机指令
- 10)type判断命令类型
- 11)history 查看历史命令
- 12)hostnamectl 设置主机名
- 13)whoami 显示当前用户名
[/ul]
一、Linux系统使用注意
- Linux严格区分大小写
Linux 和Windows不同,Linux严格区分大小写的,包括文件名和目录名、命令、命令选项、配置文件设置选项等。
例如,Win10 系统桌面上有文件夹叫做Test,当我们在桌面上再新建一个名为 test 的文件夹时,系统会提示文件夹命名冲突;而在Linux中,Test与test是可以共存的。
- Linux文件\”扩展名\”
在Linux操作系统中,与Windows不同,其文件的类型不是通过扩展名来进行区分的!
我们都知道,Windows 是依赖扩展名区分文件类型的,比如,\”.txt\” 是文本文件、\”.exe\” 是执行文件,但 Linux 不是。
Linux 系统通过权限位标识来确定文件类型,常见的文件类型有普通文件、目录、链接文件、块设备文件、字符设备文件等几种。Linux 的可执行文件就是普通文件被赋予了可执行权限。
Linux系统中常见的后缀名称:
Linux 中的一些特殊文件还是要求写 \"扩展名\" 的,但 Linux 不依赖扩展名来识别文件类型,写这些扩展名是为了帮助运维人员来区分不同的文件类型。这样的文件扩展名主要有以下几种:压缩包:Linux 下常见的压缩文件名有 *.gz、*.bz2、*.zip、*.tar.gz、*.tar.bz2、*.tgz 等。为什么压缩包一定要写扩展名呢?很简单,如果不写清楚扩展名,那么管理员不容易判断压缩包的格式,虽然有命令可以帮助判断,但是直观一点更加方便。就算没写扩展名,在 Linux 中一样可以解压缩,不影响使用。二进制软件包:CentOS 中所使用的二进制安装包是 RPM 包,所有的 RPM 包都用\".rpm\"扩展名结尾,目的同样是让管理员一目了然。=> 类似Windows中的exe文件程序文件:Shell 脚本一般用 \".sh\" 扩展名结尾。=> check_network.sh网页文件:网页文件一般使用 \".php\" 等结尾,不过这是网页服务器的要求,而不是 Linux 的要求。.html/.css/.js/.jsp/.php/.py => 网页文件
- Linux中所有内容以文件形式保存
在Linux系统中,一切皆文件!
在Windows是文件的,在Linux下也是文件。在Windows中不是文件的,在Linux系统中也是文件。
问:不知道权限标识符,怎么判断文件的类型呢?
答:可以通过文件的颜色,使用ls命令,查看文件的颜色
<文件颜色根据终端配色方案可能变化>绿色文件: 可执行文件,可执行的程序 红色文件:压缩文件或者包文件蓝色文件:目录白色/黑色文件:一般性文件,如文本文件,配置文件,源码文件等 浅蓝色文件:链接文件,主要是使用ln命令建立的文件红色闪烁:表示链接的文件有问题黄色:表示设备文件灰色:表示其他文件
- Linux中存储设备都必须在挂载之后才能使用
- 在windows系统中,增加一块硬盘,只需要对硬盘进行分区,并进行格式化,即可出现一块类似于C盘的盘符,便可进行使用。而在Linux系统中,是没有盘符的,所有的命令及我们Windows中的盘符都是用目录的形式进行管理的,这样就需要把每一个分区和某一个目录对应。而这个对应绑定的过程便称之为挂载。
问:如何进行挂载?
答:mount命令: mount 空格 /dev/sda1 空格 /mnt/file
二、Linux目录结构
1.Linux分区与windows分区
Linux 系统不同于 Windows,没有 C 盘、D 盘、E 盘那么多的盘符,只有一个根目录(/),所有的文件(资源)都存储在以根目录(/)为树根的树形目录结构中。
- Windows:
- Linux:
2.Linux系统文件架构
3.Linux系统的文件目录用途
/bin:系统命令目录
/sbin:超级命令目录,只能超级管理员可以执行的命令
/boot:系统目录,类似于Windows中的C盘
/dev :设备文件目录,硬盘、光驱、U盘都属于设备文件,/dev/sr0代表光驱设备。注意,次目录下的文件没有办法直接使用,必须先挂载
/etc :非常重要,代表系统的配置文件目录。大部分软件安装完成后,其配置文件都存放在此目录
/home:普通用户的家目录,用户登录后会自动切换到此目录
/root:超级管理员的家目录,超级管理员登录后会自动切换到此目录
/media:挂载目录,早期Linux挂载目录,用于挂载光盘以及软盘
/mnt:挂载目录,用来挂载额外的设备,如 U 盘、移动硬盘和其他操作系统的分区
/opt :第三方软件目录,这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中。不过笔者还是习惯把软件放到 /usr/local/ 目录中,也就是说,/usr/local/ 目录也可以用来安装软件
/usr :系统程序目录,类似Windows中的Program Files
/proc:虚拟文件系统。该目录中的数据并不保存在硬盘上,而是保存到内存中。主要保存系统的内核、进程、外部设备状态和网络状态等。
/tmp :临时文件目录,在该目录下,所有用户都可以访问和写入。建议此目录中不能保存重要数据,最好每次开机都把该目录清理
/var :经常变化的文件目录,网页文件、数据文件、日志文件
三、Linux入门命令
问:什么是Linux命令?
答:就是指在Linux 终端(命令行)中输入的内容就称之为命令。
一个完整的命令的标准格式:Linux 通用的格式
命令(空格) [选项](空格)[参数]
1)Linux命令补全Tab键
当我们在Linux系统的终端中,输入命令时,可以无需完整的命令,只需要记住命令的前几个字母即可,然后按Tab键,系统会自动进行补全操作。
# syst + Tab键# systemc + Tab键# systemctl
有些命令可能都以某几个字母开头,这个时候,只需要按两次Tab键,其就会显示所有命令。
# clea + Tab键 + Tab键
2)su 切换用户
# su - rootPassword:123456 <==输入的密码是看不见的[root@localhost ~]# <==切换成功
问:-横杠作用是什么?
答:-横杠代表切换用户的同时,切换用户的家目录
3)uname获取计算机操作系统相关信息
基本语法:
# uname -a选项说明:-a :all缩写,代表显示所有信息,获取全部的系统信息(类型、全部主机名、内核版本、发布时间、开源计划)
4)ls显示当前目录下的文件信息
☆ 用法一
主要功能:ls完整写法list show,以平铺的形式显示当前目录下的文件信息
基本语法:
[root@ops /]# lsbin dev etc lib media opt root sbin sys usrboot disk3 home lib64 mnt proc run srv tmp var
☆ 用法二
主要功能:显示其他目录下的文件信息
# ls 其他目录的绝对路径或相对路径
扩展:ls后面跟的路径既可以是绝对路径也可以是相对路径
绝对路径:不管当前工作路径是在哪,目标路径都会从“/”磁盘根下开始。
案例:访问test用户的家目录,查看有哪些文件
# ls /home/test
绝对路径必须以左斜杠开头,一级一级向下访问,不能越级
相对路径:除绝对路径之外的路径称之为相对路径,相对路径得有一个相对物(当前工作路径)。
只要看到路径以“/”开头则表示该路径是绝对路径,除了以“/”开头的路径称之为相对路径。
当前位置:/home/test目录下
…/:表示上级目录(上一级)
./ :表示当前目录(同级),普通文件./可以省略,可执行文件(绿色)必须加./
文件夹名称/:表示下级目录(下一级),注意这个斜杠/
☆ 用法三
基本语法:
# ls [选项] [路径]选项说明:-l :ls -l,代表以详细列表的形式显示当前或其他目录下的文件信息(简写命令=>ll)-h :ls -lh,通常与-l结合一起使用,代表以较高的可读性显示文件的大小(kb/mb/gb)-a :ls -a,a是all缩写,代表显示所有文件(也包含隐藏文件=>大部分以.开头)
计算机中的单位:
# 1TB = 1024GB# 1GB = 1024MB# 1MB = 1024KB# 1KB(千字节) = 1024B(字节)
5)pwd查看当前所在路径
主要功能:pwd=print working directory,打印当前工作目录(告诉我们,我们当前位置)
基本语法:
[root@localhost ~]# pwd/root
6)cd切换目录
主要功能:cd全称change directory,切换目录(从一个目录跳转到另外一个目录)
基本语法:
# cd [路径]选项说明:路径既可以是绝对路径,也可以是相对路径
案例一:切换到/usr/local这个程序目录
[root@localhost ~]# cd /usr/local[root@localhost local]# pwd/usr/local
案例二:比如我们当前在 /usr/local下,切换到根目录/下
[root@localhost local]# pwd/usr/local[root@localhost local]# cd ../..[root@localhost /]# pwd/
案例三:当我们在某个路径下,如何快速回到自己的家目录
# cd或# cd ~
7)clear清屏
主要功能:清屏(与快捷键ctrl+L相似)
基本语法:
[root@localhost /]# clear
8)reboot重启计算机
[root@localhost /]# reboot
9)shutdown关机指令
主要功能:立即关机或延迟关机
立即关机基本语法:
# shutdown -h 0或now# shutdown -h 0# shutdown -h now选项说明:-h :halt缩写,代表关机
在Linux系统中,立即关机除了使用shutdown -h 0以外还可以使用halt -p命令
延迟关机基本语法:
# shutdown -h 分钟数代表多少分钟后,自动关机
案例1:10分钟后自动关机
# shutdown -h 10
案例2:后悔了,取消关机
光标一直不停的闪,取消关机# 按Ctrl + C(CentOS6,中断关机。CentOS7中还需要使用shutdown -c命令)# shutdown -c
10)type判断命令类型
Linux的命令可以分为内部命令和外部命令: 内置命令在系统启动时就调入内存,是常驻内存的,所以执行效率高。 而外部命令是系统的软件功能,用户需要时才从硬盘中读入内存
此处以cd命令举例,出现以下反馈则是内部命令,其他则为外部命令。
[root@localhost /]# type cdcd is a shell builtin
11)history 查看历史命令
主要功能:显示系统以前输入的前1000条命令
基本语法:
# history
12)hostnamectl 设置主机名
主要功能:用于设置计算机的主机名称(给计算机起个名字),此命令式CentOS7新增的命令。
hostnamectl : hostname + control
☆ 获取计算机的主机名称
[root@localhost /]# hostnamelocalhost.localdomain
☆ 设置计算机的主机名称
Centos7中主机名分3类,静态的(static)、瞬态的(transient)、和灵活的(pretty)。
① 静态static主机名称:电脑关机或重启后,设置的名称亦然有效
② 瞬态transient主机名称:临时主机名称,电脑关机或重启后,设置的名称就失效了
③ 灵活pretty主机名称:可以包含一些特殊字符
CentOS 7中和主机名有关的文件为/etc/hostname,它是在系统初始化的时候被读取的,并且内核根据它的内容设置瞬态主机名。
更改主机名称,让其永久生效?① 使用静态的 ② 改/etc/hostname文件
① 瞬态主机名称(临时设置)
# hostnamectl --transient set-hostname 主机名称主机名称 建议遵循 FQDN协议(功能+公司域名)[root@localhost /]# hostnamectl --transient set-hostname web.baidu.com[root@localhost /]# hostnameweb.baidu.com
案例:临时设置主机名称为ops.xxx.cn
[root@localhost /]# hostnamectl --transient set-hostname ops.xxx.cn[root@localhost /]# su[root@ops /]#
② 静态主机名称(永久生效)
# hostnamectl --static set-hostname 主机名称温馨提示:--static也可以省略不写
案例:把计算机的主机名称永久设置为ops.xxx.cn
# hostnamectl --static set-hostname ops.xxx.cn# su 立即生效
③ 灵活主机名称(主机名称可以添加特殊字符)
# hostnamectl --pretty set-hostname 主机名称(包含特殊字符)
案例:把计算机的主机名称通过灵活设置,设置为ops’s server001
# hostnamectl --pretty set-hostname \"ops\'s server001\"查看灵活的主机名称# hostnamectl --pretty
13)whoami 显示当前用户名
[root@hsforpyp ~]# whoamiroot[root@hsforpyp ~]# su - rhel[rhel@hsforpyp ~]$ whoamirhel