Linux Get!

写在前面

嗨。好久不见。过去一个月左右时间把Linux跟着视频教程走了一遍。哈哈哈。其实在大一的时候就开了这门课。只不过那时候啥都不知道,也没怎么好好学习。但到后面发现其实Linux还是很必要去学一下的,那几个常用的几个命令也应该略知一二。去很多招聘网站上应聘很多公司都要求需具备Linux底子。多说一句,最近发现学习一下Linux还是很有必要的它是基础,后面的很多像Jenkis和Docker都需要Linux知识加以辅助。所以。没办法。学呗。

还是老样子。我习惯找一个不错的教程,跟着老师系统的学习一下。老师在上面敲,我就对照老师也敲。每次学习之前,都会花费一些时间把上次学过的内容先复习一下,然后去学习新的东西。一来回顾+复习。二来看完上次的内容,容易把自己的思路带到下一节课有利于更好的把注意力放到新的知识学习上。

https://www.bilibili.com/video/av21303002?p=5。献上学习地址。顺带把课程中的资料教程软件放到我百度网盘上。https://pan.baidu.com/s/1rOGpRxLAcoPBDoZDZRY0bg 提取码4s3u。有需要的朋友欢迎点开下载。

废话不多说 开始吧。

上图是老师上课的课程大纲。后面还有一个对Java开发的定制篇。

本篇文章也按照上面的目录来进行回顾整理吧。

 Ps:附上文章目录。

鉴于Linux入门相对来说偏理论,在这里就不展开描述了。需要的朋友可以去我的百度网盘里下载文档。里面很详细哦。


VM 和 Linux 系统(CentOS)安装

理解这张图很有必要。在VM12这个软件中开辟一个虚拟机空间,在这个空间中安装我们的Centos系统。Ps:安装VM12前需要确保你的电脑开启虚拟化设备支持(f2, f10)。

具体安装步骤可以参考上面老师教程视频,老师讲的很详细,一步步来即可。

 

考点:虚拟机网络连接的3种模式?

①桥连接:同一个网段中可以和其他系统进行通信,但容易IP冲突。

②NAT模式:可以访问外网,不会造成IP冲突。

③主机模式:无法访问外网。

vmtools工具安装

1)可以直接粘贴命令在windows  和 centos系统之间

2)可以设置 windows 和 centos 的共享文件夹

3)示意图

1.进入 centos

2.点击 vm 菜单的->install vmware tools

3.centos 会出现一个 vm 的安装包

4.点击右键解压, 得到一个安装

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

6.安装  ./vmware-install.pl

7.全部使用默认设置即可

8.需要 reboot 重新启动即可生效

 

设置共享文件夹。


Linux 的目录结构

在 Linux 世界里,一切皆文件。

列举几个常用的文件目录。以防面试。

/bin:存放用户经常使用的指令/命令

/root:系统管理员主目录

/dev:类似windows设备管理器硬件CPU DISK(用文件形式存储)

/mnt:挂载别的文件 共享文件

/media:识别一些设备 U盘光驱USB

远程登录(XShell XFTP)

特别说明:如果希望安装好 XShell 5 就可以远程访问 Linux 系统的话,需要有一个前提,就是Linux 启用了 SSHD 服务,该服务会监听 22  号端口。

解决XFTP5中文乱码问题。


vi和vim编辑器

vi和vim三种常见模式

1.正常模式

      n dd删除n行

      n yy再p复制n行

      G最末端 gg最顶端

      u撤销

2.编辑模式

        输入i进行编辑

3.命令行模式

        :wq :q :q!

       set nu设置行号

       set nonu取消行号

       显示行号。输入要显示的行数。shift+G跳转。


开机、重启和用户登录注销

shutdown

shutdown -h now:表示立即关机

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

shutdown -rnow:  立即重启

halt

       直接关机

reboot

       重启

sync

       内存数据保存到磁盘

logout

       注销Ps:图形界面无效 远程登陆xhsell中才行


用户管理

1)    Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

2)    Linux 的用户需要至少要属于一个组。

添加用户

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

       useradd –d 指定目录 用户名

       useradd –g 用户组      用户名

删除用户

       userdel 用户名     --->删除用户保留家目录

       userdel –r 用户名 --->删除用户且删除家目录

查询用户

       id 用户名

       whoami

设置用户密码

       passwd 用户名

切换用户

       su – 用户名

       exit 切换回原用户

从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。

当需要返回到原来用户时,使用 exit 指令。

增加组

       groupadd 组名

删除组

       groupdel 组名

修改用户组

       usermod –g 用户组 用户名

和用户、组相关的文件

/etc/passwd

       用户配置文件。记录用户信息

/etc/group

       组配置文件。组的信息

/etc/shadow

       口令配置文件。用户密码


实用指令

7大运行级别

0:关机
1:单用户【找回丢失密码】
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形化
6:重启


切换到指定运行级别的指令
  /etc/inittab配置文件中修改id:5:initdefault
  或者init [012356]


面试题:
问:如何找回 root 密码,如果我们不小心,忘记 root  密码,怎么找回?
答:进入单用户模式(root无需密码)修改root密码

帮助指令

man [命令或配置文件]  man ls
help [命令或配置文件] help ls

文件目录类

pwd 显示当前工作目录
ls [-a –l -h] 查看当前目录所有内容信息
cd [~ ..]切换目录
绝对|相对路径 绝对:/ 相对:../home
mkdir [-p创建多级目录] 创建目录
rmdir 删除空目录
touch 创建空文件 
[\ 强制覆盖] cp [-r 整个目录] 拷贝文件到指定目录  
rm [-r -f] 删除文件或目录
mv 移动或重命名
cat 查看文件内容 cat –行号 /etc/passwd | more 分页显示
more 全屏按页显示
less 分屏查看 并不是将整个文件加载显示
ls –l > 文件 覆盖写入文件 (文件若不存在 则新建文件)
ls –l >> 文件 追加内容到文件
echo 输出内容到控制台
head [-n] 文件 显示文件开头部分
tail [-n -f] 文件 输出文件尾部内容。实时追踪该文件的变化。
ln –s[原文件或目录] [软链接名] cd 软链接名
history 查看已经执行过的指令 !历史编号 执行历史编号的指令

时间日期类

date [-s 设置日期]显示当前日期 date “+%Y年-%m月-%d %H:时%M:分%S:秒”
cal 查看日历  

搜索文件类

find [搜索范围] [-name –user -size]
locate 文件名 快速定位文件路径。前提 必须先执行updatedb
grep [-n显示行号 –i忽略大小写] 过滤指令
|管道符号 将前一个命令结果传递给后面命令处理
cat home.txt | grep –n –I lth 查找home.txt文件中 lth忽略大小写并显示行号

压缩和解压缩类

gzip 文件 压缩文件
gunzip 文件.gz 解压缩文件
zip [-r] 文件 路径。zip –r a.zip /home/a.txt
unzip [-d] 解压到的目录 文件 unzip –d /home/lth a.zip
tar –zcvf 打包的文件 tar –zcvf a.tar.gz a.txt b.txt
tar –zxvf 待解压的文件 –C 指定目录 tar –zxvf a.tat.gz –C /home/a

组管理和权限管理

在 linux 中的每个用户必须属于一个组,不能独立于组外。在 linux 中每个文件有所有者、所在组、其它组的概念。

查看文件所有者

       ls –ahl

改变文件所有者

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

       chown 用户名 文件名

改变文件所在组

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

       chgrp  用户组 文件名

权限的基本介绍

-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc

rwx权限详解

作用到文件: w 代表可写(write)可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件

作用到目录: w代表可以修改,目录内创建+删除+重命名目录

修改权限-chmod

    第一种方式:+ 、-、=  变更权限

    第二种方式:通过数字变更权限

    规则:r=4 w=2x=1 ,rwx=4+2+1=7

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

    相当于chmod 751 文件目录名

 

crond 定时任务调度

基本语法

       crontab[选项]

执行 crontab –e 命令。接着输入任务到调度文件。

*/1 * * * * ls –l >>/tmp/to.txt

分时日月天。

每一分钟都会自动的调用 ls -l /etc >> /tmp/to.txt

1)    crontab –r:终止任务调度。

2)    crontab –l:列出当前有那些任务调度

3)    service crond restart  [重启任务调度]

磁盘分区、挂载

分区基础知识

    mbr分区:最大支持4个主分区,每个只支持2TB

     gtp分区:无限多个主分区最大支持18EB容量

Linux硬盘分IDE 硬盘和 SCSI 硬盘,目前基本上是 SCSI 硬盘。

hda3 表示为第一个IDE 硬盘上的第三个主分区或扩展分区,

hdb2 表示为第二个IDE 硬盘上的第二个主分区或扩展分区。

使用 lsblk 指令查看当前系统的分区情况

给我们的 Linux 系统增加一个新的硬盘

详情步骤请参考百度网盘里的文档资料哈!

步骤:

  1. 分区 fdisk /dev/sdb

  2. 格式化硬盘 mkfs –t ext4(分区类型) /dev/sdb

  3. 挂载 mount /dev/sdb  /home/newdisk

  4. 永久挂载

        vim/etc/fstab

        /dev/sdb1  /home/newdisk ext4 defaults 0 0

        mount –a 生效

磁盘情况查询

df –hl  查询系统整体使用情况

du –cha  --max-depth = 1 /目录 查询指定目录的磁盘占用情况

*查询目录/文件/文件夹个数

ls–l R/home/ | grep “^d” | wc -l


网络配置

本章节 主要是偏实操性,详情可以参照百度网盘里的详细文档哈。

 

查看网络IP和网关

  1. 虚拟网络编辑器

  2. NAT设置

 

ping 测试主机之间网络连通

       [root@hadoop100桌面]# ping www.baidu.com

 

linux 网络环境配置

    1.自动配置(获取)系统—首选项—网络连接

缺点:每次重启后ip都不一样

    2.指定固定ip

/etc/sysconfig/network-scripts/ifcfg-eth0

service network restart 重启生效


进程管理

显示系统执行进程

       ps –aux | grep sshd

查看进程的父进程

       ps –ef | grep sshd

终止进程 kill 和 killall

       kill [-9] 进程号

       killall 进程名称

       终止多个 gedit 编辑器【killall ,  通过进程名称来终止进程】

查看进程树

pstree [-p pid –u uid]

请你树状的形式显示进程的 pid

服务管理

       在 CentOS7.0 后不再使用 service ,而是 systemctl

service 服务名 [start | stop |restart | reload | status]

例如 防火墙开启和关闭

service iptables status

service iptables start

 

查看系统开了哪些服务

  1. setup

  2. ls –l /etc/init.d

 

chkconfig 指令

       通过 chkconfig 命令可以给每个服务的各个运行级别设置自启动/关闭

       1.查看服务

          chkconfig --list | grep XXX

       2.查看某个服务

         chkconfig 服务名 --list

       3.设置服务自启动

          chkconfig --level 数字 服务名 off/on

          chkconfig --level 5 sshd off

*chkconfig 重新设置服务后自启动或关闭,需要重启机器 reboot 才能生效

动态监控进程

       top与 ps 命令很相似。它们都用来显示正在执行的进程。top 与 ps 最大的不同之处,在于 top 在执行一段时间可以更新正在运行的的进程。

  1. 输入u 再输入用户

  2. 输入k 再输入要删除的id号

  3. top –d 10 每隔10秒自动刷新

 

监控网络指令

       netstat [-an按一定顺序排序 –p哪个进程在使用]

       查看所有网络的网络服务

       netstat –anp

*telnet ip 端口    telnet 192.168.2.64 22 验证端口是否开启


RPM和YUM

rpm

-qa | grep XXX 包简单查询

       -qi软件包名  查询安装的rpm包软件信息

       -ql软件包名  查询rpm软件包的安装位置

       -qf文件路径  查询某个文件属于哪个软件包

 

卸载rpm包

       rpm [-e --nodeps强制删除] 软件名

 

安装rpm包

       rpm –ivh XXXXXXX.rpm

 

yum

       Yum是一个 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。使用 yum 的前提是可以联网。

查询yum 服务器是否有需要安装的软件

    yum list | grep xx 软件列表

    yum install tree 下载安装

接下来便是Linux之JAVAEE定制篇。详情请看网盘里的说明文档。Good Luck you~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值