Linux

Linux

1、Linux简介

  • Linux内核最初由芬兰人编写

  • 是一套免费试用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户,多任务,支持多线程的多CPU的操作系统

  • Linux能运行主要的UNIX工具软件,应用程序和网络协议

  • Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统

2、环境搭建

image-20210224090418847

以下是按照CentOS的步骤:

  • 载CenOS8的安装镜像
  • 打开VM,创建一个虚拟机
    • 容量默认
    • 设置虚拟机名称和位置
    • 选择Linux操作系统,版本为CentOS7 64位
    • 选择稍后安装
    • 选择典型
    • 设置:内存2G,处理器4,CD选择刚刚下载好的CenOS镜像
    • 启动虚拟机,选择第一个
    • 进入选择中文语言
    • 安装信息要设置时间和日期,选择亚洲,安装目的地和网络和主机名,开始安装。
    • 安装的时候可以设置根密码,创建用户可以先不创建
    • 安装完成,重启完成安装
    • 初始设置选择为接受许可证进去接受
    • 关于您中设置一个用户名
    • 如果关机可以弄快照
    • 登录系统选择未列出来输入root用户登录

3、访问命令行

  • bash shell:一类程序的总称,充当命令解析器例如window命令解析器是cmd

  • shell命令:[root@localhost ]#;root为用户名,localhost是主机名,是当前目录,#表示root用户,有特权,$表示普通用户登录,只有某些权限

  • 命令区分大小写

  • 登录到本地计算机

  • 登录到远程计算机

    • 在linux系统上使用ssh远程登录管理linux服务器
    • 查看进程:ip addr
    • 在windows主机测试远程机的连通性:ping
    • 打开x-shell使用ssh登录
  • 在windows主机上传和下载文件

    • 使用xshell登录
    • yum install -y lrzsz
    • rz上传,sz下载
  • 使用桌面访问命令行

    • 本地GNOME桌面环境
    • 在windows主机访问linux桌面环境

4、在bash shell执行命令

  • 命令语法:ls -a /boot:ls是命令,-a是选项,调节命令功能,/boot操作对象,一般是文件目录

  • tab用法:自动补全,按两下系统会自动列出可选对象

    • ls+tab+tab:ls开头命令列出来
    • ip+tab+tab:ip命令后相关命令全部列出来
  • 命令帮助

    • help:查看内部命令的帮助信息
    • man:查看每个命令的帮助文档 用法与help相似

5、从命令行管理文件

5.1、文件的层次结构

  • 一些皆文件
  • 从根目录/开始
  • /bin 用户命令
  • /sbin 管理员命令
  • /boot:启动文件,菜单,内核,驱动
  • /dev:设备文件
  • /etc:配置文件
  • /home:普通用户默认的家目录,相当于windows我的文档
  • /root root用户家目录
  • /run 实时临时文件
  • /tmp 临时文件
  • /usr 应用程序
  • /var 邮件服务器邮箱,ftp下载目录,网站内容目录

5.2、通过名称指定文件

  • 相对路径

    • 从当前目录开始的路径。.表示当前目录;…表示上一级目录
  • 绝对路径

    • 从根目录/开始的路径

5.3、导航路径命令

  • pwd:显示当前所在位置

  • cd:切换目录

  • ls:列出目录中文件和子目录

    • ls -l=ll:列出详细信息
    • ls -a:显示所有文件
    • ls -d:列出目录文件
    • ls -i:列出文件编号
    • ls -h:显示单位

5.4、文件管理命令

  • mkdir:创建目录 -p可递归创建多个目录
  • touch:创建空文件,若文件存在则更新时间戳
  • cp:复制 -r可递归复制
  • rm:删除文件或目录 -f直接删除不提示,-r递归删除
  • mv:移动或改名

5.5、查看文件内容命令

  • cat:查看小文本文件

  • more|less:查看大文件

    • 两者区别:less允许用户向前或向后翻页。less支持文件内容快速查找,先按“/”,再输入要查找的字符,直接跳转到查找到的第一个匹配的内容
  • head|tail:查看文件头,尾

  • wc:统计文件信息

  • 查看二进制文件

    • which ls:查看ls命令文件所在位置
    • hexdump /bin/ls:查看二进制文件
  • 检索,过滤文件内容

    • grep:在文件中查找并显示包含指定的字符串行

    • grep 选项 查找条件 目标条件

      • -i:大小写不分
      • -v:反选
      • root
      • ^:以开头
      • $:以结尾

5.6、链接文件

  • 硬链接

    • 只能是普通文件,不能是目录
    • 同一个文件系统
    • ln a.txt /tmp/a.txt
    • ls -il a.txt /tmp/a.txt
  • 软连接

    • ln -s /etc/a /root/b
    • 快捷方式

5.7、基本系统管理命令

  • reboot:重启

  • poweroff:立即关机

  • hostname:显示主机名

  • hostnamectl set-hostname:设置主机名

  • 有错误有正确

    • ll /home/boooot > /tmp/a.log:将正确写入文件,错误显示
    • ll /home/booot 2> /tmp/a.log:将错误写入文件,正确显示
    • ll /home/booot &> /tmp/a.log:错误正确都显示

6、创建查看和编辑文本文件

6.1、将输出重定向到文件

  • “>file” :将正确输出重定向到文件,文件不存在则创建,存在则覆盖原内容
  • “>>file”:将正确输出重定向到文件,文件不存在创建,存在追加到文本末尾
  • 2>file:将错误输出重定向到文件
  • 2>/dev/null
  • &>file 将正确错误输出重定向到文件
  • &>>file

6.2、管道

  • grep root /etc/passwd | wc -l:查找/etc/passwd中包含root的行,并统计行数

6.3、vim编辑文本文件

  • echo xxxxxxxxxxxxxx>>a.txt
  • +>/root/a.txt<<EOF

7、管理本地用户和组

7.1、用户

  • 超级用户:root
  • 普通用户:管理员用户创建的,只有特定的权限的用户
  • 程序用户:仅用于维护系统或应用程序运行的用户,这些用户一般不允许登录系统,如ftp,mail等账号

7.2、用户信息:

/etc/passwd

7.3、密码和有效期:

/etc/shadow

7.4、管理本地用户账号和组

  • useradd -选项 用户名:添加用户

    • -m:自动创建这个用户的主目录/home/qinjiang

    • -d:指定用户主目录,如果该目录不存在,可以同时使用-m,可以创建主目录

    • -g 用户组 :指定用户所属的用户组

    • -G 用户组:指定用户所属的附加组

    • -s Shell文件: 指定用户的登录Shell

      • -s /bin/bash:可以控制台登录系统
      • -s /sbin/nologin:不可在控制台登录系统,可以通过程序访问
      • -s /bin/false:无权访问系统上的交互式shell
    • -u 用户号 :指定用户的用户号

    • 理解本质:linux中一切皆文件,添加用户就是往某个文件写入用户的信息:/etc/passwd

  • passwd:用户口令管理

    • passwd zhangsan=echo 123456 | passwd --stdin zhangsan
  • usermod:修改用户账号属性

  • userdel:删除用户账号

7.5、用户组管理命令

  • groupadd:添加组账号
  • groupdel:删除组账号
  • gpasswd:把存在用户放入某个组

7.6、查看用户组命令

  • id:查看用户身份标识
  • groups:查看用户所属的组
  • tail /etc/passwd
  • w
  • whoami

7.7、获取root权限

  • 切换用户:su -
  • sudo
  • which useradd:查看命令绝对路径
  • visudo:进去修改用户权限
  • sudo useradd tom

8、控制对文件的访问

r:读

w:写

x:执行

8.1、管理文件系统权限

  • 通过字符修改权限:chmod augo ±=rwx

8.2、更改文件属组,属主

  • chown user:group filename

8.3、管理文件特殊权限

  • suid
  • sgid
  • sticky

8.4、管理文件默认权限

  • umask

8.5、FACL-文件访问控制列表

  • 配置FACL

    • setfacl -m u:特定用户:rw 文件麻木了
    • 删除:setfac -x u:student /soft

9、文件打包压缩和查找

9.1、打包压缩

  • tar cfvz
  • tar cfvj
  • tar cfvJ

9.2、查找文件

  • 索引查找:locate a.txt
  • find / -name a.txt

9.3、查找插入

  • find /root -name b.txt -exec cp -a {} /tmp ;

狂神视频

狂神学习视频

Linux系统

  • 开机登录

    • 命令行登录
    • ssh登录
    • 图形界面登录
  • 最高权限账户:root

  • 关机

    • 除非特殊情况下,不得已才会关机
    • 关机指令:shutdown
    • shutdown -h 10:10分钟后关机
    • shutdown -r now :系统立马重启
    • shutdown -r +10:系统十分钟后重启
    • reboot:重启
    • halt:关闭系统
  • 系统目录结构

基本命令

  • 目录管理

    • 绝对路径:C:\ProgramData\360safe\xxx.xx

    • 相对路径:/xxx.xx

    • cd:切换目录命令

    • ./:当前目录

    • cd …:返回上一级目录

    • ls:列出目录

      • -a参数:all,查看全部文件,包括隐藏文件
      • -l参数:列出所有的文件,包含文件的属性和权限,没有隐藏文件
    • pwd:显示当前用户所在的目录

    • mkdir:创建一个目录

      • 创建多级目录时使用-p:mkdir -p test2/test3/test3
    • rmdir:删除目录

      • 删除的目录下有目录时,要使用-p参数删除
      • rmdir只能删除空的目录,如果下面有文件,得先删除文件
    • cp:复制文件或者目录

      • cp 原来的地方 新的地方
      • 如果cp出错,加上-r参数,递归的意思
    • rm:移除文件或目录

      • -f:忽略不存在的文件,不会出现警告,强制删除
      • -r:递归删除目录
      • -i:互动,删除询问是否删除
      • -rf:删除所有东西,不能使用
    • mv:移动文件或者目录,重命名文件

      • -f:强制移动
      • -u:只替换已经更新过的文件
  • 账号管理

    • 实现账号管理工作

      • 用户账号添加,删除,修改
      • 用户口令的管理
      • 用户组的管理
    • 用户账号的管理

      • useradd -选项 用户名:添加用户

        • -m:自动创建这个用户的主目录/home/qinjiang
        • -d:指定用户主目录,如果该目录不存在,可以同时使用-m,可以创建主目录
        • -g 用户组 :指定用户所属的用户组
        • -G 用户组:指定用户所属的附加组
        • -s Shell文件: 指定用户的登录Shell
        • -u 用户号 :指定用户的用户号
        • 理解本质:linux中一切皆文件,添加用户就是往某个文件写入用户的信息:/etc/passwd
      • userdel :删除用户

        • userdel -r qinjiang:删除用户的时候将他的目录页也一起删除
      • usermod:修改用户

        • usermod -d /home/233 qinjiang
  • 用户组管理

    • 创建一个用户组:groupadd
    • 删除用户组:groupde
    • 修改用户组权限信息和名字:groupmod -g 666 -n newname name(修改name用户组id为666,重命名为newname)
    • 切换用户组:newgrp root
    • 查看所有用户:cat /etc/passwd
    • 查看所有用户信息包括密码:cat /etc/shadow
  • 磁盘管理

    • df:列出文件系统整体的磁盘使用量

      • df
      • df -h
    • du:检查磁盘空间使用量

      • du -a
      • du -sm /*
    • mount:挂载

      • mount /dev/kuangshen /mnt/kuangshen(将外部设备kuangshen挂载在mnt目录下来实现访问)
  • 进程管理

    • ps:查看当前系统中正在执行的各种进程的信息

    • ps -xx

      • -a
      • -u
      • -x
    • ps -aux|grep mysql:查看所有的进行;这里的|在linux中叫管道符;grep查找文件中符合条件的字符串

    • ps -ef|grep mysql:可以查看父进程的信息

    • pstree -pu:进程树

      • -p:显示f父id
      • -u:显示用户组
    • kill -9 进程的id:杀掉进程,等价于window结束任务

  • 防火墙

    • 查看firewall服务状态:systemctl status firewalld
    • 开启:service firewalld start
    • 重启:service firewalld restart
    • 关闭:service firewalld stop
    • 查看防火墙规则,查看全部信息:firewalld-cmd --list-all
    • 只看端口信息:firewalld-cmd --list-ports
    • 开端口:firewalld-cmd --zone=public --add-port=80/tcp --permanent
    • 重启防火墙:systemctl restart firewalld.service
  • 创建文件:touch

  • 输入字符串:echo

  • Linux链接

    • 硬链接

    • 软链接(相当于快捷键)

    • 创建链接命令:ln

      • 硬链接:ln f1 f2
      • 软链接:ln -s f1 f3
    • 删除f1后f3不存在,f2存在

基本属性

  • 文件属性

    • d:目录
    • -:文件
    • l:链接文档
    • b:接口设备
  • 修改文件属性

    • chgrp:更改文件属组

      • chgrp [-R] 属组名 文件名
      • -R:递归更改文件属组
    • chown:更改文件属主,也可以同时更改文件属组

      • chown [-R] 属主名 文件名
      • chown [-R] 属主名:属组名 文件名
    • chmod:更改文件9个属性

      • chmod [-R] xyz 文件或目录

文件内容查看

  • cat:由第一行开始显示文件内容,用来读文章,或者读取配置文件。
  • tac:从最后一行开始显示,可以看出tac是cat的倒写
  • nl:显示的时候,顺道输出行号
  • more:一页一页的显示文件内容,带余下内容的(空格代表翻页,enter代表向下看一行,:f:行号
  • less:与more类似,但是这个可以往前翻页
  • head:只看头几行,通过参数-n参数来控制显示几行
  • 在文本内容中使用/加字段可以向下查找该字符,?加字段可以向上查找该字符
  • tail -n:只看末尾n行
  • man cp:查看帮助文档cp的使用

vim编辑器

  • vim:查看内容,编辑内容,保存内容

  • 三种使用模式

    • 命令模式

      • 刚刚启动vim便进入命令模式
      • 此状态敲击键盘会被vim识别,而非输入字符
      • i:切换到输入模式,以输入字符
      • x:删除当前光标所在出的字符
      • ::切换到底线命令模式,以在对最低一行输入命令,如果是编辑模式,需要先退出编辑模式:ESC
    • 输入模式

    • 底线命令模式

      • :wq:保存文件并退出程序
      • :q:不保存文件,如果修改了文件此命令报错
      • :q!:强制不保存文件退出
      • :w:保存文件
  • 基本命令

    • G:移动光标到最后一行
    • nG:移动光标到第n行
    • gg:移动光标到第一行
    • n:n为数字,光标向下移动n行
    • x:向后删除一个字符
    • nx:连续向后删除n个字符
    • dd:删除光标所在那一整行
    • ndd:删除光标所在的向下n行
    • d1G:删除光标所在到第一行的所有数据
    • dG:删除光标所在到最后一行的数据
    • d$:删除光标所在处,到该行的最后一个字符
    • d0:删除光标所在处,到该行 的最前面的一个字符
    • yy:复制游标所在的那一行
    • nyy:复制光标所在那行向下n行,包含光标那行
    • p:将已复制的数据在光标下一行粘贴
    • P:将已复制的数据在光标的上一行粘贴
    • u:撤销前一个动作
    • :set nu:设置行号显示
    • :set nonu:设置行号不显示

XMind: ZEN - Trial Version

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值