栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

【Linux】Java工程师Linux学习,一篇就够了

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Linux】Java工程师Linux学习,一篇就够了

文章目录
  • 一、Linux的各个发行版
  • 二、Linux目录结构
  • 三、远程操作Linux服务器
    • 1.XShell(远程操控服务器)
      • SSH协议
      • 开启sshd服务
      • 使用XShell远程登录Linux
    • 2.XFtp(文件上传/下载)
  • 四、vi和vim编辑器
  • 五、Linux常用命令
    • 1.基本指令
      • 关机
      • 重启
    • 2.用户管理
      • 用户登录&注销
      • 创建用户
      • 给用户指定/修改密码
      • 删除用户
      • 查询用户信息
      • 查询当前登录用户
    • 3.用户组管理
      • 增加组
      • 删除用户组
      • 修改用户的用户组
    • 4.用户/用户组的配置文件详解
    • 5.Linux的运行级别详解
      • 什么是运行级别?
      • 切换到指定的运行级别
      • 修改开机的默认运行级别


一、Linux的各个发行版


各个公司在Linux内核基础上进行二次开发、定制,出现不同的发行版
发行版——用户正在可以使用的操作系统软件


二、Linux目录结构

Linux主机的根目录为:/

目录描述
/root系统管理员(超级权限者)专有主目录
/binBinary的缩写,存放着经常使用的命令(如:/usr/bin、/usr/local/bin)
/boot存放的是启动Linux时使用的一些核心文件、引导文件,包括一些连接文件及镜像文件
/dev类似Windows的设备管理器,把所有硬件用文件的形式保存
/etc所有系统管理所需的配置文件和子目录my.conf
/home存放普通用户的主目录,在Linux中每个用户都有一个自己的主目录,目录名一般以用户的账号命名
/var存放着不断扩充的东西,习惯将经常被修改的文件存放在这个目录下,包括各自日志文件
/lib系统开机所需的基本的动态连接共享库、引导文件,类似于Windows里的DLL文件,几乎所有应用程序都会用到这些共享库
/usr非常重要的目录,用户安装的许多应用程序和文件都放在这个目录下,类似Windows下的Program files目录
/usr/local给主机额外安装软件的目标安装位置,一般是一些通过编译源码方式安装的程序
/opt给主机额外安装软件时安装程序所摆放的目录(规范我们需要把安装执行程序放在这个目录下)
/mediaLinux会自动识别一些设备,如U盘、光驱,Linux会把识别到的设备挂载到这个目录下
/mnt该目录用来让用户临时挂载别的系统文件,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里面的内容了,如共享文件:d:/myShare
/sbins即super user的意思,存放系统管理员使用的系统管理程序(如:/usr/sbin、/usr/local/sbin)
/lost + found这个目录下一般为空的,当系统非法关机后,就会存放一些文件
/seLinuxSELinux是一种安全子系统,能控制程序只能访问特定文件

以下为Linux内核相关目录,一般不去动

目录描述
/proc一个虚拟的目录,为系统内存的映射,访问这个目录来获取系统信息
/srvservice的缩写,存放一些服务启动之后需要提取的数据
/sys为Linux2.6内核的一个很大的变化,目录下安装了2.6内核中新出现的文件系统sysfs
/tmp用来存放一些临时文件

使用哪个用户账户登录,就会定位到当前用户的主目录下,如使用root登录,就会定位到/root下

总结:
Linux的目录中有且只有一个根目录:/
Linux的各个目录分别存放哪些内容是约定好的,我们需要遵守这个规范
Linux是以文件的形式管理我们的设备,linux系统中一切皆为文件


三、远程操作Linux服务器

实际工作中,我们一般将Linux作为远端服务器,部署软件系统及其他操作时,我们需要远程操作Linux服务器,这就需要借助以下两款工具

1.XShell(远程操控服务器)

远程登录Linux服务器,使用命令行操作(没有图像界面)

SSH协议

SSH(Secure Shell):应用层安全协议,是为远程登录会话,其他网络服务提供安全性的协议,可有效管理防止远程管理过程中的信息泄漏

开启sshd服务

使用远程工具有一个前提:主机是否开启了sshd服务,若没有开启则无法远程
sshd:监听端口22,这个服务基于SSH协议,为客户端远程操作进行服务、管理,开启这个服务后,则会一直在监听状态(监听22端口),有客户端连接进来后并进行管理
一般情况下这个服务默认开启
检查是否开启了sshd:
(1)在终端输入:setup

(2)选择系统服务

(3)检查sshd前面是否打了*,打了则表示已开启,没有则勾上开启

使用XShell远程登录Linux

(1)在CentOS终端输入ifconfig,查看当前IP地址
(2)XShell中创建会话,将主机地址填上IP地址,端口为22,协议选择SSH

(3)连接,输入用户名root或其他用户名,及密码,完成连接

2.XFtp(文件上传/下载)

实现远程服务器与本地文件的上传/下载
(1)打开XFtp并新建会话
(2)主机地址填CentOS的IP地址(同上),协议选择SFTP,端口22,并输入登录账户的用户名、密码

(3)登录了哪个用户,如root,就会默认定位在哪个用户的主目录下,如/root(若出现乱码问题,点击打开会话的属性——选项——编码选择UTF-8),然后就可以右键选择文件进行传输了


四、vi和vim编辑器

vi:为Linux系统自带的一个文本编辑器
vim:具有程序编译的功能,可看成vi的增强版,会根据代码、语法、关键字来区分颜色,方便程序设计,有代码补全、编译及错误跳转等功能

vi、vim的三种模式:
(1)普通模式:使用命令行打开一个文件,终端输入:vim test.txt,就会默认进入普通模式(若不存在这个文件,则会帮你自动创建),这个模式下,可以进行复制、粘贴、移动、删除等快捷键操作

(2)插入模式:普通模式下按i或a或I或A或O即可进入插入模式,插入模式下可进行字符输入操作,按ESC可回到普通模式

(3)命令模式:普通模式下按:或/或即可进入命令模式,该模式下可以进行保存、搜索、替换、退出、显示行号等操作,按ESC可回到普通模式

命令模式中几种常用命令:

#(回车向后查找“word”关键字,按n向后继续查找)
:/word

#(回车向前查找“word”关键字,按n向前继续查找)
:?word

#(保存文本)
:w

#(强制保存,root用户,文件就算只读也能保存)
:w!

#(退出编辑器)
:q

#(保存并退出)
:wq

#(显示行号)
:set nu

#(不显示行号)
:set nonu

五、Linux常用命令 1.基本指令 关机
# 关机
shutdown

# 立刻关机
shutdown -h now
# 1分钟后关机
shutdown -h 1

# 立刻关机
halt
重启
# 立刻重启
shutdown -r now
# 现在重启
reboot

注意:不管是关机还是重启,首先要sync将主存中的数据保存到外存

# 把内存数据同步到硬盘上
sync
2.用户管理

Linux是一个多用户多任务的操作系统,必须一个账号对应一个用户,以账号的身份进入系统,且Linux维护了一个用户组的概念,会有多个不同权限的用户组,且每个用户至少属于一个用户组,如图:

Linux中有且只有一个超级管理员用户root,可以有多个普通用户,各个账号都有一个对应的主目录,root账户有一个专属的主目录,其他各普通用户在/home下有一个对应的主目录,主目录名称通常为用户名,登录时,默认进入对应用户的主目录下

实际工作中,不能把root用户分配给每个人,因为权限太大,而是创建多个用户组、用户,并分配不同的权限

用户登录&注销

实际工作中,应尽量少用root用户登录,因为权限太大

# 进行切换用户登录
# 从低权限用户往高权限用户切换时,需要输入密码,反之不需要
su [用户名]

# 注销,使用远程连接命令行操作时,输入logout就会注销用户并关闭连接,减少服务器压力,但在图形界面中打开终端输入logout不会起作用
logout

# 使用su切换过用户后,使用exit可返回原用户,无用户时,作用同logout注销用户
exit
创建用户
# 创建用户,同时会自动创建一个同名用户组并关联
# 例:useradd xm —— 会创建一个用户xm,同时会自动创建一个xm的用户组,并用户xm属于用户组xm
useradd [可选] [用户名]

# 创建用户,同时指定用户组(前提是用户组必须已经存在)
useradd -g [用户组名] [用户名]

# 创建用户,同时指定home目录(默认用户主目录会在/home下,也可以指定为某个目录下)
useradd -d [目录] [用户名]
给用户指定/修改密码
# 指定或修改该用户密码
passwd [用户名]
删除用户
# 删除用户,但会保留对应的用户主目录
userdel [用户名]

# 删除用户,同时删除对应的用户主目录
userdel -r [用户名]

# 实际中,一般建议保留用户主目录,方便查阅历史记录
查询用户信息
# 查询用户信息
# 若不存在用户,则返回 “no such user”
# 若存在用户,则返回uid(用户id)、gid(用户组id)、组(属于的用户组id及组名)
id [用户名]

查询当前登录用户
# 查询当前登录用户,返回用户名
whoami
3.用户组管理

相当于角色,可对多个有共性的用户进行统一管理、分配权限

增加组
groupadd [组名]
删除用户组
groupdel [组名]
修改用户的用户组
# 用户组事先存在为前提
usermod -g [用户组名] [用户名]
4.用户/用户组的配置文件详解

(1)用户的配置信息都记录在 /etc/passwd 这个文件中,我们使用cat/etc/passwd可以以只读的形式打开文件,打开后可以查看到例如用户cty的信息

(2)用户的密码记录在 /etc/shadow 这个文件中:

(3)用户组的配置信息记录在 /etc/group 这个文件中:

5.Linux的运行级别详解 什么是运行级别?

运行级别,举个例子,如使用 “多用户无网络” 这个运行级别运行Linux,就好比用 “安全模式” 启动Windows
Linux有以下运行级别:

常用运行级别为:3和5

切换到指定的运行级别
# 切换到0~6中某个运行级别
# 例:进入CentOS,若此时进入到了图形界面(运行级别为5)
#    则此时命令行输入:init 3,就会进入到纯命令行的模式(多用户有网络)
#    命令行输入:init 5,就会回到图形界面
#    命令行输入:init 0,就会直接关机
init [0~6]

实际中的运用
若忘记了root的密码,怎么找回?
步骤一:系统开机时,在内核选择界面时,按键盘任意键使Linux启动引导停留在选择阶段(使用方向键上下进行选择)
步骤二:根据步骤提示,键入小写 “e” 下一步
步骤三:选项停留在Kernel这一项,按 “e” 下一步
步骤四:此时,进入下一个界面,在quiet后键入 “1”(表示进入单用户模式),回车回到启动选择界面,选择停留在 “Kernel” 处,此时再输入 “b”(表示引导),现在启动就是单用户模式了
步骤五:在单用户模式下,即可以使用命令:passwd root 来修改root的密码,修改完成后reboot重启

对于CentOS7中进行到步骤三中选项没有Kernel这一项:
(1)按方向键下找到最下面有 “ro” 的这一行(意为read only),将 “ro” 替换成 “rw init=/sysroot/bin/sh”
(2)按 “Ctrl + x” 重启,重启进入出现 “#”,即表示已进入到了单用户模式,然后输入 “chroot/sysroot” 来获得root权限
(3)修改root密码并重启

修改开机的默认运行级别

Linux系统的运行级别的配置信息保存在 /etc/inittab 文件中
要修改默认的运行级别可在:/etc/inittab 文件中修改 id:5:initdefault: 这一行的数字

CentOS之后不再是这样设置了
我们打开inittab文件可以看到

得知 “multi-user.target” 相当于原来的运行级别3(多用户有网络),graphical.target相当于运行级别5(图形界面),并根据注释提示得知若要设置需要这样写:systemctl set-default [xxx.target]
(若要得知当前运行级别,可在终端输入:systemctl get-default)
在CentOS7中,不再是通过修改配置文件来改变启动默认的运行级别了,而是在终端输入:systemctl set-default [xxx.target]

CentOS7中运行级别对照表

运行级别指令
0(关机)shutdown.target
1(单用户模式)emergency.target
2(多用户无网络、安全模式)rescure.target
3(多用户有网络)multi-user.target
4(保留)-
5(图形界面)graphical.target
6(重启)-

若被他人恶意修改了启动默认的运行级别,例如修改为关机、重启,则会开机就关机、重启,解决方式也是进入单用户模式来进行修改

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/300523.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号