Linux学习

Linux在服务器领域的应用是最强的,尤其在一些高端领域应用较为广泛

linux运行稳定、对网络的良好支持性、低成本,且可以根据需要进行软件裁剪,内核最小可以达到几百KB等特点,使其近些年来在嵌入式领域的应用得到非常大的提高

主要应用:机顶盒、数字电视、网络电话、程控交换机、手机、PDA、智能家居、智能硬件等都是其应用领域以后在物联网中应用会更加广泛。

安装VMware

安装Centos

硬盘分区,/根分区17G,boot分区1G,swap分区2G

网络连接三种模式

1.桥接模式,虚拟系统可以和外部系统 通讯,但是容易造成IP冲突

2.NAT模式,网络地址转换模式,虚拟系统可以和外部系统通讯,不造成IP冲突

3.主机模式:独立的系统

虚拟机

虚拟机克隆

方法一:直接复制一份安装好的虚拟机文件

方法二:通过vmware克隆功能

虚拟机快照

担心误操作导致异常,需要回到之前某个正常运行的状态

虚拟机移动和删除

移动或删除虚拟机只需要移动对应文件夹即可

Linux指令

Linux目录

文件系统采用层级式树状目录结构,最上层为根目录/,在此目录下再创建其他的目录

在Linux中“一切皆文件”

Linux目录结构

/bin存放着最常用的命令

/sbin存放着系统管理员使用的系统管理程序

/home存放着普通用户的主目录,一般以用户的账号命名

/root该目录为系统管理员,也称为超级权限者的用户主目录

/lib存放着系统开机需要的基本的动态连接数据库,类似于DLL文件

/lost+found一般为空,非法关机后存放了一些文件

/etc系统管理需要的配置文件和子目录

/usr重要目录,很多应用程序和文件都放在这个目录下

/boot启动Linux时使用的核心文件,包括一些连接文件以及镜像文件

不能动/proc是虚拟目录,是系统内存的映射,访问该目录获取系统信息

不能动/srv存放一些服务启动后需要提取的数据

不能动/sys2.6内核的很大变化,安装了新出现的文件系统sysfs

/temp用于存放临时文件

/dev设备管理器,将硬件用文件形式存储

/media自动识别设备,如U盘,光驱等

/mnt为了让用户临时挂载别的文件系统,将外部存储挂载在/mnt/上

/opt主机额外安装软件摆放的目录

/usr/local另一个给主机额外安装软件的目录,一般通过编译源码方式安装的程序

/var存放着不断扩充着的东西,包括日志文件

/selinux安全子系统,控制程序只能访问特定文件

远程登录Linux

通过Xshell和Xftp登录Linux进行项目管理或开发

vi和vim

常用的三种模式

正常模式:以 vim 打开一个档案就直接进入一般模式(默认模式)。在这个模式中 ,你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或「『删除整行】来处理档案内容 ,也可以使用『复制、粘贴』来处理你的文件数据。
插入模式:按下i,I,o,O, a, A,r,R等任何一个字母之后会进入编辑模式,一般来说按i即可
命令行模式:在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开 vim、显示行号等的动作则是在此模式中达成的!

:wq表示写入并退出,:q表示退出,:q!表示强制退出

快捷键

关机和重启

shutdown -h now立刻关机

shutdown -h 1   1分钟后关机,shutdown默认这项

shutdown -r now 立刻重启

halt 关机

reboot重启

sync 把内存数据同步到磁盘

不管是关机还是重启系统,首先要运行sync命令,把内存中数据写入磁盘中

目前的shutdown/reboot/halt等命令均已经在关机前进行了sync

登录和注销

登录时尽量少用root帐号登录,因为它是系统管理员,权限最大,避免操作失误。可以利用普通用户登录,登录后再用”su-用户名’命令来切换成系统管理员身份

在提示符下输入 logout 即可注销用户
logout 注销指令在图形运行级别无效,在 运行级别 3下有效,

用户管理

添加用户

useradd 用户名,创建用户成功后会自动创建和用户名同名的家目录

也可以通过useradd -d 指定目录 新用户名,指定家目录创建用户

指定/修改密码

passwd 用户名

删除用户

userdel 用户名,删除用户但保留家目录

userdel -r 用户名,删除用户且删除家目录(慎用)

查询用户信息

id 用户名

切换用户

当前用户权限不够,可以通过su -指令切换到高权限用户

su -切换用户名

高权限切换低权限不需要密码,反之需要

当需要返回原来用户时,使用exit/logout

查看当前用户

whoami 查看的是最开始登录的用户信息

用户组

Linux每个用户都属于一个组,创建文件的人为文件所有者,自动归于用户所在组

ls -ahl,查看文件所有者

groupadd 组名,新增组

groupdel 组名,删除组

useradd -g 用户组 用户名,增加一个用户直接进入组,不指定组则默认分配到一个与用户名同名的组

usermod -g 组名 用户名,改变用户所在组

usermod -d 目录名 用户名,改变用户登录的初始目录(需要用户有进入该目录的权限)

chown 用户名 文件名,修改文件所有者

chgrp 组名 文件名,修改文件所在的组

/etc/passwd文件,用来记录user的各种信息,每行的含义:用户名,口令,用户标识号,组标识号,注释性描述,主目录,登录Shell

/etc/shadow文件,口令的配置文件,每行的含义:登录名,加密口令,最后一次修改时间,最小时间间隔,最大时间间隔,警告时间,不活动时间,失效时间,标志

/etc/group组配置文件,每行的含义:组名,口令,组标识号,组内用户列表

运行级别

0关机

1单用户(找回丢失密码)

2多用户状态没有网络服务

3多用户状态有网络服务

4系统未使用保留给用户

5图形界面

6系统重启

常用运行级别是3和5,也可以指定默认运行级别systemctl set-default Target.target

multi-user.target运行级别3

graphical.target运行级别5

init(0123456)切换不同运行级别

system get-default查看当前运行级别

找回root密码

进入开机界面,在界面中按e进入编辑界面

进入编辑界面,使用光标上下移动找到以Linux16开头的内容所在行数,在行最后输入init=/bin/sh

接着按ctrl + x进入单用户模式

在光标闪烁位置输入mount -o remount,rw/完成后按回车

在新的一行最后输入passwd,完成后按回车输入密码,然后再次确认即可,密码修改成功后会显示passwd...的形式

接着输入touch /.autorelabel,按回车

接着输入exec /sbin/init按回车,等待系统自动重启

帮助指令

man [命令或配置文件]  获取帮助信息   退出按q,查看下一页按空格

help 命令  获得shell内置命令的帮助信息

文件目录指令

查找切换目录ls,cd

pwd显示绝对路径,绝对路径:从根目录开始定位

相对路径:从当前目录开始定位

ls 选项 目录或文件,常用选项,-a显示当前目录所有文件和目录,包括隐藏的;-l以列表形式显示信息

cd 参数,切换到指定目录,cd ~或cd表示回到自己的家目录,cd ..表示返回上一级目录

创建目录mkdir

mkdir 选项要创建的目录,常用选项 -p 创建多级目录

删除空目录rmdir

rmdir 选项 要删除的空目录

目录下有内容无法删除,若要删除非空目录使用rm - rf 要删除的目录

创建空文件touch

touch 文件名

拷贝文件cp

cp 选项 资源名 目录/

常用选项-r递归复制整个文件夹,cp -r 要拷贝的目录地址 目标地址

强制覆盖使用/cp 

移除文件rm

rm 选项 要删除的文件或目录,常用选项-r递归删除整个文件夹,-f,强制删除不提示

移动文件或重命名mv

mv 原文件名 新文件名,重命名(在同一文件下)

mv 原地址 目标地址,移动文件(不在同一文件下)

mv 原地址 目标地址 文件名,移动并重命名(不在同一文件下)

也可以移动整个目录

查看文件cat

cat 选项 要查看的文件,-n显示行号

cat指令只能查看不能修改,为了浏览方便一般会带上管道命令| more,只显示一页,按回车继续显示下一行,按空格直接翻页

more指令

more 要查看的文件

less指令

less 要查看的文件

与more类似,但比more更强大,支持各种显示终端,根据显示需要加载内容,对于显示大型文件具有较高的效率

输出指令echo

echo 选项 输出内容

使用echo输出环境变量,如$PATH $HOSTNA

使用echo输出hello,world

显示前行head指令

显示文件前十行内容

head 文件,显示前十行

head -n 5 文件,显示前五行

显示尾行tail指令

tail 文件 查看文件尾十行

tail -n 5 文件,查看文件尾五行

tail -f 文件,实时追踪文件的所有更新(ctrl+c退出)

写入指令>和>>

ls -l > 文件,列表内容写入文件中(覆盖)

ls -al >> 文件,列表内容追加到文件末尾

cat 文件1 > 文件2,将文件1内容覆盖文件2

echo “内容” >> 文件,追加内容到文件中

链接指令ln

ln -s 原文件或目录 软链接名,给原文件创建一个软链接

删除软链接时只需要rm 链接名即可(不要在最后加/)

查看历史指令history

直接使用即可,查询已经执行过的历史命令

history 10,查看近十条

!5 执行曾经执行的第五条指令

时间日期类指令

时间指令date

date,显示当前时间

date + %Y显示当前年份,%m月份,%d当前天,“+%Y-%m-%d %H:%M:%S”显示年月日时分秒

date -s 字符串时间,设置日期“2024-04-15 22:48:00”

日历指令cal

cal 选项,查看日历

cal 2023,显示2023年日历

搜索查找类指令

find指令

find 搜索范围 选项,-name 文件名,按照指定的文件名查找模式查找文件

-user 用户名,查找属于指定用户名所有文件

-size 符号文件大小,按照指定的文件大小查找文件,符号可以为+或-,表示大于或小于该大小,不加符号则需要等于该文件大小

locate指令

可以快速定位文件路径,利用事先建立的系统中的所有文件名称及路径的locate数据库实现快速定位给定的文件。无需遍历整个系统,查询速度快,为保证查询结果准确度,需要管理员定期更新locate时刻。

locate 搜索文件,第一次运行前需要使用updatedb创建locate数据库

which指令

which 指令名,可以查看指令在哪个目录下

grep指令

过滤查找,管道符号|,表示将前一个命令处理结果输出传递给后面的命令处理,比如cat查找一个文件,命令后面加上|grep在所得到的文件中查找内容

grep 选项 查找内容 原文件,-n显示匹配行及行号,-i忽略字母大小写

或cat 文件名 | grep -n "查找内容"

压缩和解压指令

gzip 文件,压缩文件,将文件压缩为*.gz文件

gunzip 文件.gz,解压文件

zip 选项 文件,zip 要压缩的内容,用于压缩文件和目录,-r递归压缩,压缩目录

zip -r myhome.zip /home/,将home下的文件,包括home本身一起压缩

unzip 选项 文件.zip,解压文件,-d 目录,指定解压文件存放目录

tar 选项 文件.tar.gz 打包的内容(多个文件用空格分隔),打包目录,压缩后的文件格式.tar.gz

Linux权限管理

要对文件做修改,需要首先有对目录有相应权限,仅对文件有权限不行

权限基本介绍

-表示普通文件

rwx作用于文件:r表示可读,w表示可写(不代表可删除,只有对文件所在目录有权限才能删除),x表示可执行,-表示无此权限

rwx作用于目录:r表示可查看内容,w表示可写,对目录内创建、删除或重命名目录,x表示可以进入该目录,-表示无此权限

目录可读才可以ls列举目录内文件,但是不可读只要可进入,即可对目录内有权限的文件进行修改查看

目录可写表示对目录内文件有创建和删除的权限,不代表可以修改目录内文件内容

目录可执行表示可以进入该目录

第一个root表示用户,第二个root表示所在的组

修改权限

chmod u=rwx,g=rx,o=x 文件/目录名

chmod o+w 文件/目录名

chmod a-x 文件/目录名

u表示所有者,g表示所有组,o表示其他人,a表示所有人,通过+,-,=修改rwx权限

也可以通过数字变更权限,4,可读,2可写,1可执行,7为三者均可

chmod 751 文件/目录名,效果同chmod u=rwx,g=rx,o=x 文件/目录名

修改文件所有者或所有组

chown 用户名 文件/目录名,改变所有者

chown 用户名:组名 文件/目录名,改变所有者和所在组

-R如果是目录则其下子文件递归生效

chgrp 组名 文件/目录名,改变所在组

Linux任务调度

crontab定时任务设置

crontab 选项,-e编辑定时任务,-l查询任务,-r删除当前用户所有任务,service crond restart重启任务调度

表示每分钟展示etc目录下的文件列表并存在tmp文件下的to.txt文件中

at定时任务设置

at是一次性定时计划任务,at守护进程atd以后台模式运行,默认情况下,atd守护进程每60秒检查作业队列,有作业时检查作业运行时间,如果与当前时间匹配则运行此作业。

at命令是一次性定时计划任务,执行完一个任务后不再执行

在使用at命令时,要保证atd进程启动ps - ef | grep atd

at 选项 时间

ctrl + d结束at命令输入

Linux磁盘分区挂载

Linux分区

Linux只有一个根目录,一个独立唯一的文件结构,每个分区都是用来组成文件系统的一部分,Linux采用了一种叫载入的处理方法,整个文件系统中包含了一整套文件和目录,且将一个分区和目录联系起来,这时要载入的一个分区将使他的存储空间在一个目录下获得

lsblk 或lsblk -f,查看设备挂载情况

增加硬盘

1。在虚拟机中添加硬盘

2。分区,分区命令:fdisk /dev/sdb(设备名),执行分区命令后进入选项,m显示命令列表,p显示磁盘分区(同fdisk -l),n新增分区,d删除分区,w写入并退出。开始分区后输入n新增分区,然后选择p,分区类型为主分区,两次回车默认全部剩余空间,最后输入w写入并退出,若不保存退出则输入q。

3。格式化磁盘,mkfs -t ext4 /dev/sdb1,ext4是分区类型

4。挂载,mount 设备名 挂载目录。卸载umount 设备名或挂载目录。(使用命令行挂载重启失效)

5。永久挂载,用vim 修改/etc/fstab实现挂载,添加完成后执行mount -a立即生效

磁盘情况查询

df -h查询磁盘情况

du -h查询指定目录磁盘占用情况

-s,指定目录占用大小汇总

-h,带计量单位

-a,含文件

--max-depth=1子目录深度

-c列出明细同时增加汇总值

Linux网络

NAT网络配置

虚拟机IP地址与VMNET8ip地址建立连接(共享同一个c类地址),VMNET8ip地址与无线网卡建立连接,通过网卡经过网关连接互联网

在windows环境中配置VMnet8网络(ipconfig)

PING 目的主机IP地址或网址,测试网络连通性

网络环境配置

自动获取

登录后自动获取IP,缺点是每次获取的ip地址可能不一样

指定IP

直接修改配置文件指定IP,可以连接到外网

vi /etc/sysconfig/network-scripts/ifcfg-ens33

把文件红色部分修改如图

配置完成后重启网络服务service network restart或重启系统reboot生效

Tips

在linux中,隐藏文件以.开头

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值