Linux相关学习

Posted utopia-clint

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux相关学习相关的知识,希望对你有一定的参考价值。

在Linux下做各种程序的开发(如示意图):

技术图片

高效学习Linux的流程:

  第一阶段:linux环境下的基本操作命令;

  第二阶段:linux的各种配置(环境变量配置、网络配置、服务配置);

  第三阶段:linux下如何搭建对应语言的开发环境(如pyhon、大数据等);

  第四阶段:能编写shell脚本,对Linux服务器进行维护;

  第五阶段:能进行安全设置,防止攻击,保障服务器正常运行,能对系统调度优化;

  第六阶段:深入理解Linux系统(对内核有研究),熟悉掌握大型网站应用架构组成、熟悉各个环节的部署和维护方法

  PS:在学习Linux基本指令时,应学会查询手册和百度

本篇本章主要是介绍Linux的基本知识以及熟悉掌握Linux基本命令。

1.Linux基本介绍以及和widows的区别;

   技术图片

和widows相比:

  技术图片

2.安装VMware和Centos

  ###

3.安装vmtools

  1.进入centos,点击vm菜单的->install vmware tools

  2.centos会出现一个vm的安装包,点击右键解压,得到一个安装文件

  3.进入该vm解压的目录,该文件在 /root/桌面/vmware-tools-distrib/下

  4.安装 ./vmware-install.pl,全部使用默认设置即可

  5.需要重启(reboot)

  使用vmtools来设置widows和linux的共享文件夹 :菜单->vm->setting:设置选项为always enable,这样windows和centos可共享d:/share目录读写文件了。

该处练习:

  技术图片

4.Linux的目录结构

  linux的文件系统是采用层级式的树状目录结构,在此结构中的最上层是根目录 “/”,然后在此目录下再创建其他的目录。

  在Linux世界里,一切皆文件

  技术图片

  技术图片

   技术图片

  技术图片

  技术图片

5.远程登录Linux及文件传输

   示意图:

      技术图片

  PS:linux服务器是开发小组共享的;正式上线的项目是运行在公网的;程序员需远程登录到linux进行项目管理或开发

 远程登录工具Xshell6

  安装:百度...

 远程上传下载文件Xftp6

  安装:百度...

  介绍:Xftp6是一个基于windows平台的功能强大的SFTP、FTP文件传输软件,使用Xftp,widows用户能安全的在UNIX/Linux和windowsPC之间传输文件

  配置:

    技术图片

  解决Xftp中乱码问题(配置后注意刷新):

    技术图片

6.基本命令

 vi和vim(vi的增强版本)的三种常见模式:

  正常模式: 可以使用上下左右移动光标、可以删除字符或删除整行、也可以复制粘贴

  插入/编辑模式:从正常模式按下i,I,o,O,a,A,r,R等任何一个字母进入插入/编辑模式,一般按i即可

  命令行模式:提供相关指令,完成读取、存盘、替换、离开vim、显示行号等

  技术图片

开关机、重启、用户登录注销:

  shutdown:

    shutdown -h now:立刻关机

    shutdown -h 1:表示一分钟后关机

    shutdown -r now:立即重启 

  halt:直接使用 等价于关机

  reboot:重启

  syn:把内存的数据同步到磁盘(防止数据丢失,关机、重启前做的事

 

用户登录和注销:

     logout:注销用户 (PS:该指令在图形运行级别下无效,在运行级别3下有效)

用户管理:

  useradd 【选项】用户名:添加用户

    选项:

      -d 指定目录

  passwd 用户名:给用户指定密码

  userdel 用户名:删除用户(保留了用户的主目录)  userdel -r 用户名:删除用户及用户主目录

  id 用户名:查询用户信息

        技术图片

切换用户:

  su -  用户名  PS:权限高的用户切换到权限底的用户,不需要密码,反之需要;需要返回到原来的用户使用exit命令

用户组:

  groupadd  组名:增加组

  groupdel  组名:删除组

   

  useradd  -g  用户组  用户名:增加用户时加上组

  usermod  -g  用户组  用户名:修改用户的组

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

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

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

 

指定运行级别:

说明:

  0: 关机

  1: 单用户【找回丢失密码】

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

  3: 多用户状态没有网络服务

  4: 未使用,系统保留给用户

  5: 图形界面

  6: 系统重启  

  PS:常用的运行级别是3和5,要修改默认的运行级别可改文件 /etc/inittab 的id:5:initdefault这一行数字

  示意图:

      技术图片

  init 【0123456】:切换指令

相关面试题如何找回root密码,如果我们不小心忘记root密码,怎么找回

  思路:进入单用户模式,修改root密码,因为单用户模式,root不需要密码就可以登录

  答案:

     技术图片

 帮助指令

  man 【命令或配置文件】:获得帮助信息

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

  PS:百度也是可以的

  

文件目录类指令:

  pwd:显示当前工作目录的绝对路径

  ls 【选项】 【目录或是文件】

  选项:-a:显示当前目录所有的文件和目录,包括隐藏的

     -l:以列表的方式显示信息

  cd 【参数】:切换到指定目录

    cd ~或者cd :回到自己的家目录

    cd ..:回到当前目录的上一级目录

 

  mkdir 【选项】要创建的目录

        选项 -p:创建多级目录  例如: mkdir - p  /home/a/b/c

  

  rmdir 【选项】要删除的目录

      rmdir /home/dog

      若 /home/dog中有内容:rm  -rf  /home/dog

touch指令

  touch hello.txt:创建一个hello.txt的空文件

 

cp指令*

  cp [-r](递归复制整个文件夹)  source dest

  例如:cp -r test/clint/

  技术图片

rm指令(删除文件或目录):

  rm 【选项】 要删除的文件或者目录

    -r:递归删除整个文件夹

    -f:强制删除不提示

 

mv指令(移除文件与目录或重命名):

  mv oldFileName  newFileName:重命名

  mv  /temp/movefile /targetFolder:移动文件

 

cat指令(只读的方式打开文件):

  cat  -n(显示行号)要查看得文件

  cat  -n  /etc/profile  |  more(分页浏览)

 

more指令:  

  more  文件名

   查看后的快捷键:

    技术图片

less指令:

   less  查看大文件(看多少加载多少,比较高效)

   快捷键:

    技术图片

 

 > 和 >>指令:

   >:输出重定向:会将原来的文件的内容覆盖

  >>:不会覆盖原来的文件,追加到文件的尾部

   例如: ls -l >a.txt  将ls -l打印出来的内容写入a.txt中 (如果a.txt不存在就创建)

 

 echo指令:

   echo $PATH:输出环境变量

 

head指令:

  head 文件:查看文件前10行内容

  head -n 5:查看前5行

 

tail指令:

  tail文件:查看文件后10行内容

  tail -n 5:查看后5行

 

ln指令:

   ln -s 【原文件或者目录】【软链接名】:给原文件创建一个软链接

 

history指令:

  查看已经执行过的历史指令

  history 10  查看最近10条

  !155   执行编号为155的指令

 

时间日期指令:

  date:显示当前时间日期

  date+%Y:x显示当前年份

  date+%m:显示当前月份

  date+%d:显示当前是哪一天

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

  date  -s  字符串时间 :设置时间

  

  cal :显示当前日历

  cal 2020:显示2020年的日历

  

find指令:

  find  【搜索范围】 【选项】

  选项说明:

      技术图片

 

 locate指令:

   locate  搜索文件

 

grep指令和管道符号:

   grep 【选项】 查找内容 源文件

     技术图片

 

 压缩和解压指令:

   gzip:压缩文件(压缩成.gz文件)

  gunzip:解压文件

 

  zip 【选项】 XXX.zip  选项:-r 递归压缩

  uzip 【选项】XXX.zip       -d<目录>:指定解压后的文件存放目录

 

   tar  【选项】 xxx.tar.gz   打包的内容

    选项说明:

     技术图片

    例如: 压缩多个文件:tar  -zcvf  ab.tar.gz  a.txt  b.txt   

        解压文件: tar -zxvf  ab.tar.gz 

 

 组管理和权限管理:

  ls  -ahl:查看文件的所有者

  chown 用户名  文件名:修改文件所以者

  chgrp  组名  文件名:修改文件所在组

 

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

  usermod  d  目录名  用户名  改变该用户登录的初试目录

 

  技术图片

  技术图片

  技术图片

修改权限:

   技术图片

  技术图片

  通过数字变更权限:

  技术图片

 

持续更新中。。。

以上是关于Linux相关学习的主要内容,如果未能解决你的问题,请参考以下文章

思维导图学习—LINUX相关基础思维导图

Linux相关学习

学习Linux须知1.0之Linux相关概念工具(yumvim)防火墙等

Linux学习笔记之Linux相关知识

[linux]linux命令学习-netstat

Linux 学习总结-linux 文件系统及相关命令