linux初学篇目录结构远程登录vim和vi用户管理(代码片段)

吞吞吐吐大魔王 吞吞吐吐大魔王     2023-01-06     195

关键词:

前言:

这是我第一次接触 Linux,个人选择了 B 站的韩顺平老师的课程进行学习,韩老师的视频链接如下2021韩顺平 一周学会Linux。因此如果你也是新手学习 Linux 的话,可以借鉴我的博客,然后对照着韩老师的课程进行学习。由于是新手上路,所以有很多不足、不懂的地方。个人也计划在接下来的两周之内花时间过一遍 Linux,所以大家一起加油呀!

1. Linux 目录结构

1.1 基本介绍

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

1.2 具体目录

1.2.1 bin

是 Binary 的缩写,这个目录存放着最经常使用的命令

1.2.2 sbin

s 就是 Super User 的意思,这里存放的是系统管理员使用的系统管理程序

1.2.3 home

存放普通用户的主目录,在 Linux 中每个用户都有一个自己的目录,一般该目录是以用户的账号命名

1.2.4 root

该目录为系统管理员,也称作超级权限者的用户目录

1.2.5 lib

系统开机所需要最基本的动态连接共享库,其作用类似于 windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库

1.2.6 lost+found

这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件

注意:

你在图形界面没有看到这个文件,因为它被隐藏了,可以在通过命令去看

1.2.7 etc

所有的系统管理所需要的配置文件和子目录

比如安装了 MySQL 数据库,这个数据库的配置文件就会放在 etc 下面

1.2.8 usr

用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录

/usr/local

这是一个给主机额外安装软件(软件)所安装的目录。一般是通过编译源码方式安装的程序

1.2.9 boot

存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件

1.2.10 proc

这是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息(该目录不能动)

1.2.11 srv

service 的缩写,该目录存放一些服务启动之后所需要提取的数据(该目录不能动)

1.2.12 sys

这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs(该目录不能动)

1.2.13 tmp

用来存放一些临时文件的目录

1.2.14 dev

类似于 windows 的设备管理器,把所有的硬件用文件的形式存储

1.2.15 media

Linux 系统会自动识别一些设备,例如 U 盘、光驱等等,识别之后,Linux 会把识别的设备挂载到这个目录下

1.2.16 mnt

系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载再 mnt 上,然后进入该目录就可以查看里面的内容了

1.2.17 opt

这是给主机额外安装软件(安装包)所存放的目录,默认为空

如安装 ORACLE 数据库,就可以放到该目录下

1.2.18 var

这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下,包括各种日常文件

1.2.19 selinux [sercurity-enhanced linux]

SELinux 是一种安全子系统,它能控制程序只能访问特定文件,有三种工作模式,可以自行设置

可能我们的根目录下没有看到这个目录,因为它没有被启用,启用后就可以看到了

1.2.20 run

是系统运行时所需要的文件,重启后会重新生成对应的目录数据

2. Xshell 和 Xftp

Xhell

可以在 windows 界面下用来访问远程不同系统下的服务器,从而比较好的达到远程控制终端的目的

Xftp

是一个基于 windows 平台的功能强大的 SFTP、FTP 文件传输软件。使用了 Xftp 以后,windows 用户能安全地在 UNIX / Linux 和 Windows PC 之间传输文件

注意

如果 Xftp 中显示是乱码,则通过属性,将语言选择为 Unicode utf-8,就可以了

3. vi 和 vim

3.1 基本介绍

Vi

Linux 系统会内置 vi 文本编辑器

Vim

具有程序编写能力,可以看作是 vi 的增强版,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用

3.2 三种模式

正常模式

以 vim 打开一个文档就直接进入正常模式。在这个模式中,可以使用【上下左右】按键来移动光标,可以使用【删除字符】或【删除整行】来处理档案内容,也可以使用【赋值、粘贴】来处理文件数据

注意: 正常模式不能输入内容

插入模式

按下 i、I、o、O、a、A、r、R 等任何一个字母之后才会进入编辑模式,一般来说俺 i 即可。点击 Esc 退出该模式进入一般模式

命令行模式

输入冒号 ” :“ 或者斜杠 “ / ”,切换命令行模式。在这个模式当中,可以提供你相关指令,完成读取。存盘、替换、离开 vim、显示行号等的动作

wq:保存退出

q:退出

q!:强制退出并且不保存

3.3 快捷键

  1. 拷贝当前行: yy,拷贝当前行向下的5行: 5yy,并粘贴(输入:p)【正常模式下】

  2. 删除当前行: dd,删除当前行向下的5行: 5dd【正常模式下】

  3. 在文档中查找某个单词:在命令行下通过: /关键字,回车 ,输入 n 查找下一个出现的位置(如果要查找别的直接斜杠关键字查找就行)【命令行下】

  4. 设置文件的行号:set nu,取消文件的行号:set nonu【命令行下】

  5. 编辑 /etc/profile 文件,到该文档的最末行的快捷键 :G,和最首行: gg【正常模式下】

  6. 在一个文件中输入 “hello”,撤销掉它的快捷键是:u【正常模式下】

  7. 编辑 /etc/profile 文件,输入:20,再输入:shift+g【正常模式下】

注意:

快捷键的指令还有很多,以上只是常用的快捷键,不需要死记硬背,熟能生巧,即用即差就行

4. 关机和重启命令

指令:

  1. 立即进行关机:shutdown -h now
  2. 设置1分钟后关机:shutdown -h 1shutdown 即也表示 一分钟后关机)
  3. 立即重启:shutdown -r now
  4. 关机:halt
  5. 立即重启:reboot
  6. 将内存的数据同步到磁盘:sync

注意:

  • 无论是重启还是关闭系统,首先要运行 sync 命令,将内存中的数据写到磁盘中
  • 目前的 shutdown/reboot/halt 等命令均是已经在关机前自动进行了 sync (最好主动输入一遍)

5. 用户管理

5.1 登录和注销

  1. 登陆时少用 root 账号登录,因为它是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,登录后再用 su - 要切换的用户名 命令来切换成系统管理员身份
  2. 在提示符下输入 logout 可以注销用户

注意:

  • logout 注销指令在图形运行级别无效,在**运行级别3(非图形界面)**下有效
  • 通过普通用户进入 root 后,输入 logout 退回到 普通用户,再输入 logout 退出系统

5.2 添加用户

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

指令:useradd 要创建的用户名(要先到 /home/ 目录下再输入指令)

注意:

  • 在创建之后,会自动创建跟用户同名的家目录,默认创建的目录在家目录 /home/ 下
  • 也可以通过 useradd -d 指定目录 新的用户名,将新创建的用户指定家目录

5.3 指定/修改密码

指令:passwd 用户名

5.4 删除用户

指令1:userdel 用户名(删除用户,但保留家目录)

指令2:userdel -r 用户名(删除用户以及家目录)

注意:

  • 删除用户需要在 root 权限下
  • 一般情况下建议保留家目录,因为里面保存了这个用户的一些资料

5.5 查询用户信息

指令:id 用户名

5.6 切换用户

指令:su - 要切到的用户名

注意:

  • 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要
  • 当需要返回到原来用户时,使用 exit 或者 logout 指令

5.7 查看当前用户/登录用户

指令:whoami 或者 who am i

5.8 用户组

类似于角色,系统可以对有共性/权限的多个用户进行统一的管理

这是什么意思呢?我们可以看一张图

我们知道普通的用户不像 root 用户一样拥有所有权限,因此不同的普通用户可能拥有的权限不同,我们可以将拥有相同权限的分成一组,这样有利于对于用户进行统一的管理

新增组指令:groupadd 组名

删除组指令:groupdel 组名

修改用户组指令:usermod -g 用户组 用户名

注意:

当我们新建用户时没用指定用户放到哪个组,就会默认创建和用户名相同的组,并将该用户放进去(可以通过查询用户信息指令,查阅该用户的组)

因此我们如果要在增加用户时指定放在哪个组,可以通过指令:useradd -g 用户组 用户名,但是使用该命令前要先创建用户组

5.9 用户和组相关文件

/etc/passwd 文件

用户(user)的配置文件,记录用户的各种信息

每行的含义:用户名:口令:用户标识号(uid):组标识号(gid):注释性描述:主目录:登录 Shell

/etc/shadow 文件

口令的配置文件

每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

/etc/group 文件

组(group)的配置文件,记录 Linux 包含的组的信息

每行的含义:组名:口令:组标识号:组内用户列表

6. 本章总结

今天这章首先介绍了 Linux 中的目录,与 windows 不同,熟悉 Linux 中的目录可以帮助你更快的操作这个系统。所以大家可以花时间去练习,加深这个目录的印象。后面再介绍了 Xshell 和 Xftp 这两个软件,操作其实也很简单,这个可以去原视频了解就可以。最后则讲了一些指令、基本操作,这个的话就是在理解的基础上反复练习了!不需要死记硬背哦!

由于这是第一次学习,我打算快速过一遍。韩老师课程中还有许多细节的知识我在博客中没有具体的介绍。等第一遍学习 Linux 完之后,我则会再次对 Linux 的知识进行一次系统地介绍的,希望不足的地方大家多多指正!

linux学习

...4.VMtools1)介绍2)vmtools安装步骤【基础篇】一、Linux目录结构1)基本介绍2)具体的目录结构二、远程登陆Linux1)为什么要远程登陆Linux2)操作方法三、vi和vim1)基本介绍2)Vi和Vim常用的三种模式3)各种模式的相互切换4)Vi和Vim... 查看详情

linux--目录结构介绍登录root用户添加和删除用户linux远程登录和远程文件上传下载(finalshell)(代码片段)

1.目录结构介绍linux目录结构:具体目录结构介绍:1.1登录root用户首先输入suroot,回车,然后输入密码。1.2添加和删除用户(需要root用户)/home目录存放普通用户的主目录,在Linux中每个用户都有一个自... 查看详情

linux基础11vi和vim编辑器的使用(代码片段)

...作中,要对服务器上的文件进行简单的修改,可以使用ssh远程登录到服务器上,并且使用vi进行快速的编辑即可常见需要修改的文件包括:源程序配置文件,例如ssh的配置文件~/.ssh/config在没有图形界面的环境下,要编辑文件,vi... 查看详情

linux文件操作篇目录操作(代码片段)

#include<sys/stat.h>#include<unistd.h>#include<dirent.h>//创建文件夹路径掩码intmkdir(constchar*path,mode_tmode);//获取当前工作路径buf用于接受路径缓存char*getcwd(char*buf,size_tsize);//进入文件夹和cd一样intchdir(cons 查看详情

学习笔记——liunx;linux文件与目录结构;vi/vim编辑器(一般模式编辑模式命令模式)(代码片段)

2023-01-23一、Linux1、Liunx的简介Linux是一套免费使用和自用传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬... 查看详情

linux(二)(代码片段)

文章目录Linux目录结构Linux目录结构总结远程登录Linux-Xshell配置Xshell连接步骤远程上传下载文件Xftp5Vi和Vim编辑器Linux目录结构Linux的文件系统采用级层的树状目录,最上层是根目录“/”,然后在此目录下面再创建其他的目... 查看详情

vi和vim(代码片段)

...作中,要对服务器上的文件进行简单的修改,可以使用ssh远程登录到服务器上,并且使用vi进行快速的编辑即可常见需要修改的文件包括:源程序配置文件,例如ssh的配置文件~/.ssh/config在没有图形界面的环境下,要编辑文件,vi... 查看详情

vi,vim编辑器

...对**服务器**上的文件进行**简单**的修改,可以使用`ssh`远程登录到服务器上,并且使用`vi`进行快速的编辑即可*常见需要修改的文件包括:***源程序*****配置文件**,例如`ssh`的配置文件`~/.ssh/config`>*在没有图形界面的环境下,... 查看详情

vim安装与配置

...y是vim的精简版,所以,安装vim势在必行2.ubuntu系统:普通用户下输入命令:sudoapt-ge 查看详情

如何解决linux下通过root无法远程登录

参考技术A修改配置文件/etc/securetty1,使用非root用户远程登录linux系统2,因为需要修改配置文件,再切换到root用户,打开配置文件:vi/etc/securetty;或是在当前用户下使用sudo命令,sudovi/etc/securetty,在文件末尾添加pts/0……字样,... 查看详情

linux学习笔记(代码片段)

目录1、Linux基本篇1、Linux目录结构2、vi和vim2.1基本介绍2.2常见的三种模式及转换2.3练习案例3、开机、重启、登录、注销4、用户管理4.1添加用户4.2删除用户4.3查询用户信息4.4切换用户4.5用户组5、实用指令5.1指定运行级别5.2例子&#x... 查看详情

linux中vim和vi编辑器的使用

 vim和vi的关系:可以将vim视作vi的高级版本,vim可以用颜色或下划线的方式来显示一些特殊信息。vim不止是文本处理软件,而可以说是一个程序开发工具。因为vim里面加入了很多额外功能,例如支持正则表达式的查找,多文... 查看详情

现在有台linux服务器不知以前设置过啥,root用户不能通过ssh远程登录,但可以用普通用户登录su-root

直接在服务器上用root登录是可以的,按网上的方法查了下也没成功。哪位兄弟遇到过这种情况。可能的原因在哪里?/etc/ssh/sshd_config中的PermitRootLoginyes是注释着的,去除注释也不能登录。现在只想让root能登录,不用管... 查看详情

vi编辑器

...有必要介绍一下vi(vim)最简单的用法,以让Linux入门级用户在最短的时间内学会使用它。nano工具和DOS操作系统下的edit操作相似,使用简单,我们不作介绍 查看详情

vi/vim自带加密

...点:加密后,如果不知道密码,就看不到明文,包括root用户也看不了;缺点:很明显让别人知道加密了,容易让别人把加密的文件破坏掉,包括内容破坏和删除;vi编辑器相信大家都很熟悉了吧,vi里有一个命令是给文件加密的... 查看详情

远程登录

使用iTerm连接Linuxssh[email protected]通过ssh远程连接地址为172.16.136.128,用户名为root的主机使用SecureCRT连接Linux编辑会话输入密码连接成功iTerm密钥认证本机使用ssh-keygen生成私钥和公钥,此处passphrase为空vim~/.ssh/id_rsa.pub编辑并复... 查看详情

文件编辑器vi

...有必要介绍一下vi(vim)最简单的用法,以让Linux入门级用户在最短的时间内学会使用它。nano工具和DOS操作系统下的edit操作相似,使用简单,我们不作介绍 查看详情

设置linux下vi和vim语法高亮显示行数(代码片段)

vim加入语法高亮和显示行数功能vi/etc/vimrc在最后加入syntaxonsyntaxon开启语法高亮vi加入语法高亮和显示行数功能在设置完vim之后,只需在使用vi的时候直接调用vimvi/etc/bashrc在最后加入aliasvi=vim使/etc/bashrc起作用source/etc/bashrc 查看详情