linux基础课

在这里插入图片描述

linux基础课程
CLI BASH基本操作

SHELL概念
在这里插入图片描述

shell分为CLI和GUI两种
CLI:Command Line Interface
GUI:Graphical User Interface

操作系统的shell:
GUI:GNOME
CLI:BASH

BASH
提示符

root用户 用su切换

$ 普通用户

命令一般由3个部分组成:
命令
选项
参数

uname 返回当前操作系统
uname -r 返回当前操作系统版本号
uname -a返回所有信息
uname —all 同样返回所有信息,推荐上一条命令
ctrl+c终止当前命令
Firefox 执行浏览器
Firefox & 在后台执行 ,不影响当前

使用Tab键来简化命令输入
自动补全命令,文件名。无法自动补全参数

按一下补全,按两下列出所有可能的开头命令

BASH历史记录
会保存你输入命令的历史记录,可以通过上下按键或history命令来查看

通过历史记录简化操作
!! 重复前一个命令
!字符 重复前一个以”字符”开头的命令
!num 按照历史记录的序号执行命令
!?abc重复之前包含abc的命令
!-n 重复n个命令之前的那个命令

可以通过ctrl+r来在历史记录中搜索命令 输入任何字符都可以匹配
reverse-i-search

重新调用前一个命令中的参数
esc, . 按esc后按 . 键

bash shell 支持一下通配符:

    •        匹配0个或多个
      
  • ? 匹配任意一个字符
  • [0-9] 匹配一个数字范围
  • [abc] 匹配列表里任何字符
  • [^abc] 匹配列表以外字符

ls M*
ls DO*
匹配0个或多个

ls Do[abc]uments 匹配Doauments,Dobuments,Documents

切换用户
在CLI中,通过su命令切换用户
su- 切换到root用户并使用一个新的运行环境
sudo 使用管理员用户身份进行命令

显示当前用户信息id

修改当前用户密码passwd

su - 加这个-是切换到了一个全新的终端
不加的话切换到root用户,但不切换终端

bash作业管理
在后台运行进程 在命令后添加一个&
暂停某个程序 通过ctrl+z或者发信号17
管理后台作业
jobs 查看所有后台作业
bg 继续让其在后台运行
fg 拉回到前台来

linux文件系统结构
linux文件系统为一个倒转的单根树状结构
文件系统的根为“/”
文件系统严格区分大小写
路径中使用/分隔 Windows用\分隔

linux树状文件系统结构
在这里插入图片描述

当前工作目录:
每一个shell或系统进程都有一个当前工作目录
使用pwd命令可以显示当前的工作目录

文件名称
文件的名称大小写敏感
名称最多可以为255个字符
除了正斜线外,都是有效字符
通过touch命令可以创建一个空白文件或者更新已有文件的时间
以.开头的文件为隐藏文件 一般为配置文件
目录也是可以这样隐藏

列出目录内容
ls -a 显示所有文件包括隐藏文件
ls -l 显示详细信息
ls -R 递归显示子目录结构
ls -ld 显示目录和链接信息

touch一个已经存在的文件,是更新时间

通过file命令可以查看文件的类型
file Desktop
会提示你这是一个目录

绝对路径与相对路径:
绝对路径:以/开头,递归每级目录直到目标的路径。不受当前所在工作目录的限制。
相对路径:以当前目录为起点,到达目标的路径。受当前所在目录限制。

cd用来切换目录
上一级目录 …
当前目录 .
用户家目录 ~
上一个工作目录 -

绝对路径:/usr/log/sa
相对路径:…/…/usr/log/sa

在这里插入图片描述

linux文件基本操作

复制文件,目录
使用cp命令
cp 源文件 目标文件
常用参数:
-r 递归复制整个目录树
-v 显示详细信息

ls
touch linuxcast
cp linuxcast linuxcast-2 在同一目录下复制
cp linuxcast linuxcast.net/ 复制到另一个文件夹

cp -r linuxcast.net linuxcast.net2 复制文件夹
cp -rv linuxcast.net linuxcast.net3 详细过程列出来 -rv 相当于 -r -v

移动,重命名文件或目录
mv 文件 目标目录 mv linuxcast.net/
如果指定文件名,则可以移动重命名 mv linuxcast-2 linuxcast.net/cast

touch nash_su
mv nash_su newname 其实就是把文件移动到当前目录换个新名字

通过touch命令可以创建一个空文件
通过rm命令可以删除文件或目录
常用参数:
-i 交互式
-r 递归的删除包括目录中的所有内容
-f 强制删除,没有警告提示 使用时需十分谨慎

rm linuxcast

rm -r linuxcast.net

rm -ri linuxcast.net2/ 这样每删除一个文件时就提示要不要删除
rm -fif linuxcast.net2/ 强制删除 就不会提示交互了 使用时需要十分谨慎

创建、删除一个目录
通过mkdir命令创建一个目录
通过rmdir命令删除一个空目录
通过rm -r (f) 命令删除一个非空目录
mkdir linuxcast.net
rmdir linuxcast.net 但不能删除非空文件夹
要删除非空文件夹 要用 rmdir -r linuxcast.net

linux系统目录架构
在这里插入图片描述

bin里面是可执行文件binary 二进制文件
boot 系统启动引导文件
dev 被抽象为文件的设备 底层硬件 显卡 网卡 声卡
etc 操作系统所有配置文件
home 家目录 每个用户都有一个文件夹 所有用户的家目录
root用户的家 是单独的
lib 所有相关的库文件 相当于windows下的dll文件
media 挂载u盘什么的 和mnt等同可以理解
mnt 正常的挂载目录
opt 很多时候是空的,一般装大型文件
proc只存在内存上 虚拟数据
sbin 和bin目录类似,但是只有超级用户可以执行super 一般比较危险的命令
sys 底层的信息
tmp 临时目录
usr 保存装的默认软件
var 保存经常变化的信息 类似于日志 邮件

linux系统基础常用命令
日期时间

命令date用以查看,设置当前系统时间: date -u
格式化显示时间:+ % Y - - %m - - %d 改成:也行
date +%Y - - %m - - %d 2012 - -10 - -03

命令hwclock(clock)用以显示硬件时钟时间

命令cal用以查看日历

命令uptime用以查看系统运行时间 启动多少时间了 多少用户登陆 负载多少

只有切换到su用户 后可以修改时间
date -s “20:20:20”

输出,查看命令
命令echo用以显示输入的内容
命令cat用以显示文件内容
命令head用以显示文件的头几行 默认10行
n指定显示的行数

命令tail用以显示文件的末尾几行 默认10行
-n 指定显示的行数
-f 追踪显示文件更新 一般用于查看日志,命令不会退出,而是持续显示新加入的内容

命令more用于翻页显示文件内容 只能向下翻页
命令less 用于翻页显示文件内容 带上下翻页

查看硬件信息
命令lspci 用以查看PCI设备
-v 查看详细信息

命令lsusb 用于查看USB设备
-v 查看详细信息

命令lsmod用以查看加载的模块 驱动

关机,重启

命令shutdown用以关闭,重启计算机
shutdown [关机,重启] 时间
-h 关闭计算机
-r 重新启动

如立即关机 shutdown -h now
10分钟后关机 shutdown -h + 10
23:30 分关机 shutdown -h 23:30
立即重启 shutdown -r now

命令poweroff 用以立即关闭计算机
命令reboot用以立即重启计算机

归档 压缩
命令zip用以压缩文件
zip linuxcast.zip myfile

命令unzip用以解压缩zip文件
unzip linuxcast.zip

命令gzip用以压缩文件
gzip linuxcast.net

命令tar用以归档文件
tar -cvf out.tar linuxcast
tar -xvf linuxcast.tar
tar -cvzf backup.tar.gz /etc
-z参数将归档后的归档文件进行gzip压缩以减少大小

命令locate用以快速查找文件,文件夹
locate keyword
此命令需要预先建立数据库,数据库默认每天更新一次,可用update命令手工建立,更新数据库

命令find用以高级查找文件,文件夹
find 查找位置 查找参数
如:
find . -namelinuxcast
find / -name .conf
find /-perm 777
find /-type d
find .-name “a
” -exec ls -l {} ;

find支持很多种的查找条件,常用的如下:
-name
-perm
-user
-group
-ctime
-type
-size

vi vim
命令行文本编辑器 vim是vi的改进,被广泛的作为在文本编辑,文本处理,代码开发等用途。
linux中知名的还有EMACS,他的功能比vim还要强大。

vim比vi功能更强大
通过vim + 文件名
目标存在,则打开;目标不存在,则新建

vim拥有三种模式:
-命令模式(常规模式)
vim启动后,默认进入命令模式,任何模式都可以通过esc回到命令模式(可以多按几次),命令模式下可以通过键入不同的命令完成选择,复制,粘贴,撤销等操作

-插入模式
在命令模式下按i键,可进入插入模式,在插入模式可以输入编辑文本内容,使用esc键可以返回命令模式

-ex模式
在命令模式中安:可以进入ex模式,光标会移动到底部,在这里可以保存修改或退出vim

vim启动后默认进入命令模式:
i 在光标前插入文本
o在当前行的下面插入新行
dd 删除整行
yy 将当前行的内容放入缓冲区 (复制当前行)
n+yy 将n行的内容放入缓冲区 (复制n行)
p 将缓冲区中的文本放入光标后 (粘贴)
u 撤销上一个操作
r替换当前字符
/查找关键字

ex模式
按:进入ex模式,光标会移动到底部
:w 保存当前修改
:q 退出
:q! 强制退出,不保存修改
:x 保存并退出,相当于:wq
:set number 显示行号
:! 系统命令 执行一个系统命令并显示结果
:sh 切换到命令行,使用ctrl+d切换回vim

Linux系统基础
磁盘,分区,MBR 与GPT

磁盘基本概念

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

使用fdisk进行磁盘管理

fdisk是来自IBM的老牌分区工具,支持绝大多数操作系统,几户所有的linux的发行版本都装有fdisk,包括在linux的rescue模式下的依然能够使用。

fdisk是一个基于MBR的分区工具,所以如果需要使用GPT,则无法使用fdisk进行分区。

fdisk
fdisk命令只有具有超级用户权限才能够运行
使用fdisk -l可以列出所有安装的磁盘及其分区信息 fdisk -l
使用fdisk /dev/sda可以对目标磁盘进行分区操作
分区之后需要使用partprobe命令让内核更新分区信息,否则需要重启才能识别新的分区
/proc/partitions文件也可以用来查看分区信息

文件系统
操作系统通过文件系统管理文件及数据,磁盘或区分需要创建文件系统之后才能够为操作系统使用,创建文件系统的过程又称之为格式化

没有文件系统的设备称为 裸机raw
常见的文件系统有fat32,NTFS,ext2,ext3,ext4,xfs,HFS等
文件系统之间的区别:日志 支持的分区大小,支持的单个文件大小,性能等

Windows下主流文件系统NTFS
linux下的主流文件系统是ext3 ,ext4

linux支持的文件系统:ext2 ext3 ext4 fat vfat nfs iso9660 proc gfs jfs

命令mke2fs用来创建文件系统
mke2f -t ext4/dev/sda3

常用参数:
-b blocksize 指定文件系统块大小
-c 建立文件系统时检查坏损块
-L label 指定卷标
-j 建立文件系统日志

mkfs
命令mkfs也可用于创建文件系统,相较于mke2fs简单,但是支持的参数较少,不能进行精细化的控制。
mkfs.ex3 /dev/sda3
mkfs.ex4 /dev/sda3
mkfs.vfat /dev/sda3

命令dumpe2fs可以用来查看分区的文件系统信息
dumpe2fs /dev/sda2

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

mount

在linux中,我们通过mount命令将格式化好的磁盘或分区挂载到一个目录上。
mount /dev/sda3(要挂载的分区) /mnt(挂载点)

常用参数:
不带参数的mount命令会显示所有已挂载的文件系统
-t 指定文件系统的类型
-o 指定挂载选项
ro,rw 以只读或读写形式挂载,默认是rw
sync 代表不使用缓存,而是对所有操作直接写入磁盘
async 代表使用缓存,默认是async
noatime 代表每次访问文件时不更新文件的访问时间
atime 代表每次访问文件时更新文件的访问时间
remount 重新挂载文件系统

umount
用来卸载已挂载的文件系统,相当于windows中的弹出
umount 文件系统/挂载点
umount /dev/sda3 = = umount /mnt
如果出现device is busy 报错,则表示该文件系统正在被使用,无法卸载,可以使用以下命令查看使用文件系统的进程:fuser -m /mnt
也可以使用命令lsof查看正在被使用的文件
lsof /mnt

在这里插入图片描述

获取帮助
没必要记住所有东西

help几乎所有命令 都可以使用-h 或-help参数获取使用方法、参数信息等

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Linux用户基础

当我们使用linux时,需要以一个用户的身份登陆,一个进程也需要一个用户的身份运行,用户限制使用者或进程可以使用,不可以使用哪些资源。

组用来方便组织管理用户
每个用户拥有一个UserID,操作系统实际使用的是用户ID,而非用户名
每个用户属于一个主组,属于一个或多个附属组
每个组拥有一个GroupID
每个进程以一个用户身份运行,并受该用户可访问的资源限制
每个可登陆用户拥有一个指定的shell

在这里插入图片描述

相关文件
/etc/passwd 保存用户信息
/etc/shadow 保存用户密码 加密的
/etc/group 保存组信息

查看登陆的用户
命令whoami显示当前用户
命令who显示有哪些用户已经登陆系统
命令w显示有哪些用户已经登陆并且在干什么

在这里插入图片描述

在这里插入图片描述

usermod -i username

在这里插入图片描述

userdel nash_su
userdel -r nash_su

在这里插入图片描述
在这里插入图片描述

linux权限机制

权限是操作系统用来限制对资源访问的机制,权限一般分为读,写,执行。系统中每个文件都拥有特定的权限,所属用户及所属组,通过这样的机制来限制哪些用户,哪些组可以对特定文件进行什么样的操作。

每个进程都是以某个用户的身份运行,所以进程的权限与该用户的权限一样,用户的权限打,该进程拥有的权限就大

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

chmod 775 linuxcast.net == rwxrwxr-x

在这里插入图片描述

#groupadd training
#groupadd market
#groupadd mangae

#useradd -G training nash_su
#useradd -G training bob
#useradd -G market alice
#useradd -G market john
#useradd -G manage steve
#useradd -G manage david

cd /
#pwd
/root

ls -ld root

clear

mkdir linuxcast.net
cd linusxcast.net/
ls

mkdir training
mkdir market
mkdir manage
ll
chgrp manage manage
chgrp market market/
chgrp training training/
ll

chmod o-rx manage
chmod o-rx market
chmod o-rx training
ll

su - nash_su
cd /linuxcast.net/
ls training
ls market/
ls manage/
exit

ls -l
cd training/
ls
mkdir nash_su
mkdir bob
ls -l

chown nash_su nash_su
chown bob bob
ls -l

chgrp training bob
chgrp training nash_su

chmod o-rx bob
chmod o-rx nash_su/

ls -l

cd …
ls

cd market/
ls
mkdir alice
mkdir john
chown alice alice
chown john john
ls -l

chgrp market alice
chgrp market john

chmod o-rx alice/
chmod o-rx john/
ls -l

cd …
cd manage/
mkdir steve
mkdir david

chown david david
chown steve steve

chmod o-rx david/
chmod o-rx steve/
ls -l

chgrp manage david
chgrp manage steve/
ls -l

cd /
ls -ld linuxcast.net

linux 系统基础
默认权限,特殊权限

默认:
每一个终端都有一个umask属性,来确定新建文件,文件夹的默认权限
umask使用数字权限方式表示 如 022
目录的默认权限是 777-umask
文件的默认权限是 666-umask
一般,普通用户的默认umask是002 root用户的默认umask是022

也就是说 对于普通用户来讲:
新建文件的权限是666-002 == 664
新建目录的权限是777-002 ==775

命令umask用以查看设置umask值
umask 022

在这里插入图片描述

在这里插入图片描述

linux系统基础
网络原理

网络编址
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

linux 多命令协作:管道及重定向
不要重复发明轮子
源代码的开放和共享
提高效率和生产力

管道和重定向
在linux系统中,大多数命令都很简单,很少出现复杂功能的命令,每个命令往往只实现和一个或几个很简单的功能,我们可以通过将不同功能的命令组合在一起使用,以达到完成某个复杂功能的目的。

linux中,几乎所有命令的返回数据都是纯文本的(因为命令都是运行在cli下),而纯文本形式的数据又是绝大多数命令的输入格式,这就让多命令协作成为可能

linux的命令行为我们提供了管道和重定向机制,多命令协作就是通过管道和重定向完成的。

在这里插入图片描述
在这里插入图片描述

管道通常用来组合不同的命令,以实现一个复杂的功能
重定向通常用来保存某命令的输出信息或错误信息,可以用来记录执行结果或保存错误信息到一个指定的文件

linux系统基础 文本处理

文件浏览
cat 查看文件内容
more 以翻页形式查看文件内容 只能向下翻页
less 以翻页形式查看文件内容 可上下翻页
head 查看文件的开始10行 指定行数
tall 查看文件的结束10行 指定行数

在这里插入图片描述

grep ‘linuxcast’ /etc/passwd/

find/ -user linuxcast | grep video

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cd grub/
ls -l
在grub.conf里面

vim grub.conf

这里面可以看到
default=0 就是采用第一种配置
timeout=3就是倒数 引导时间
splashimage = 。。。。 壁纸引导界面

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

修改root密码,在引导界面cetos时按e进行编辑
然后编辑 kernel 按e进行编辑 后面加1 按b进入box
然后单一模式 passwd
输入新密码就能修改root用户

但这样每个人都能改,所以提供下面的加密 修改内容时需要密码
在这里插入图片描述

rpm软件博爱管理
linux软件管理 源代码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

YUM
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值