【Linux】Linux入门实操——vim、目录结构、远程登录、重启注销

一、Linux 概述

1. 应用领域

  • 服务器领域

linux在服务器领域是最强的,因为它免费、开源、稳定。

  • 嵌入式领域

它的内核最小可以达到几百KB, 可根据需求对软件剪裁,近些年在嵌入式领域得到了很大的应用。

主要应用:机顶盒、数字电视、网络电话、交换机、手机、PDA、智能家居等。以后会在物联网种更广泛应用。

  • 个人桌面领域的应用

此领域是linux的薄弱环节,但近年来随着ubuntu、fedora等优秀桌面环境的兴起,linux在个人桌面领域的占有率在提高。

2. linux 主要发行版本

Ubuntu(乌班图)、RedHat(红帽)、CentOS、Debain(蝶变)、Fedora、SuSE、OpenSUSE(示意图)

3. linux和unix的关系

unix也是一个操作系统,它诞生于贝尔实验室。上个世纪七十年代,正在研发多用户分时操作系统,当时有三家公司参加,其中一个就是贝尔实验室。最终这个系统没有研发成功,但留下了一些代码。贝尔实验室的一个人就拿这些代码做了改进,成功后命名为unix。unix最早的版本是bun语言写的,但性能不好,最后又用C语言改写了。

上个世纪八十年代,sun、hp(惠普)等大公司觉得unix很有发展,就拿开源的unix又进行了二次开发改写,但这些系统改写后只能适用于大型的服务器中,个人PC机是安装不了的。当时有个伟大的人表示在自由的时代用户应该免费享有软件源代码的权利,软件公司不能够将他人的开源项目改写后拿来赚钱,软件公司可以提供服务来获取盈利。

再后来,又有个芬兰的大神贡献了linux内核,第一个linux版本不到一万行的代码,完整的叫法应该是GNU/linux。然后有许多雷锋就基于这个内核开发了很多开源的系统,如乌班图(ubuntu)、红帽(Redhat)等等。

二、Linux基本使用

1. 目录结构

linux 的文件系统是采用级层式的树形目录结构, 在此结构中最上层式根目录“/”,然后在根目录下创建其它的目录。linux 的世界里,一切皆文件。文件很重要,需要记住。

  • /bin : 是Binary 的缩写,这个目录存放常用的命令
  • /sbin :s就是super user 的意思,这里存放系统管理员使用的系统管理程序
  • /root :该目录为系统管理员,也称作超级权限者的用户主目录
  • /lib :系统开机所需要最基本的动态连接共享库作用类似于windows 系统的 DLL文件,几乎所有的应用程序都需要用到这些共享库。
  • /lost + found 这个目录一般是空的,当系统非法关机后,这里就存放了一些文件
  • /etc : 系统管理所需要的配置文件和子目录,比如安装mysql 数据库 my.conf
  • /usr : 用户安装的应用程序都放在这个目录下,类似于windows下的program files文件夹
  • /boot 存放的是启动系统时需要的核心文件,包含一些连接文件和镜像文件。
  • /proc 这个目录是虚拟目录,它是系统内存的映射,访问这个目录来获取系统信息,不能动
  • /srv : service缩写,存放服务启动后需要提取的数据不能动
  • /sys 这是Linux2.6内核的一个很大的变化,该目录下安装了2.6内核中新出现的文件系统sysfs,不能动
  • /tmp  这个目录用来存放一些临时文件
  • /dev 类似于windows的设备管理器,把所有的硬件用文件的形式存储
  • /media 系统自动识别设备所用的,比如U盘、光盘,识别设备后,linux会把识别的设备挂载到这个目录下。
  • /mnt  用户临时挂载别的文件系统的,可以把外部的存储挂载到 /mnt/ 上。
  • /opt 存放安装包,给主机存放安装软件的, 如jdk, mysql
  • /usr/local  另一个给主机存放安装软件的, 一般是通过编译源码的方式安装程序
  • /var  存放不断扩充的东西,将常被修改的文件放在这个目录,包括各种日志
  • /selinux 【security-enhanced linux】SELinux 是一种安全子系统,能控制程序只能访问特定文件,有三种工作模式,可自行设置,类似于windows 360 

2. 远程登录

以后我们开发的项目是在服务器上的,如果需要对项目进行维护,就涉及到自己本机和服务器之间的通讯了,这是就需要利用远程软件(如Xshell)对两台主机之间进行通讯。如果需要文件上传和下载,需要用到XHP软件。

Xshell 下载地址: 家庭/学校免费 - NetSarang Website

  • Xshell 是目前最好的远程登录linux 操作的软件,流畅的熟读并且完美解决了中文乱码的问题
  • Sshell 支持SSH1,SSH2,以及windows 平台的TELNET协议。
  • 可以在windows界面下用来访问远程不同系统的服务器。

首先需要检查本机与虚拟机是否能通讯。查看linux ip 地址命令: ifconfig, 查看到IP地址,在本地电脑打开命令提示符,ping 虚拟机IP,如果ping不通,远程软件也是无法连接的。 

通过Xshell 远程连接虚拟机。

查看linux系统的目录,发现已经连接到了远程linux。

我们可是在输入命令reboot重启linux系统 

3. 远程文件传输

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

远程文件传输下载  : 家庭/学校免费 - NetSarang Website

第一次登录需要验证用户名和密码 

之后一个界面有两个窗口,左边是windows窗口,右边是linux窗口

 如何上传文件到linux中呢?

首先通过Xftp远程连接linux, 验证通过后会出现如上图所示的界面。先在linux下跳转到目标存放目录,在windows下选中需要传输的文件,右键-----> 传输, 即可传送到linux下。

如果linux界面出现了乱码。选择属性----> 选项-----> 把编码设置为UTF8

4.vim 入门

Linux 系统会内置vi文本编辑器。
Vim具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

4.1. vi 和 vim 的三种模式

正常模式

默认就是这个模式。可以使用【上下左右】按键来移动光标,可以使用【复制、粘贴】来处理文件数据。

插入模式

按下【i、I、o、O、A、a、r、R】等任何一个字母之后才会进入编辑模式,一般来说按 i 即可。

命令行模式

按下esc退出再输入冒号,这个模式可以提供相关指令,完成读取、存储、替换、离开 vim、显示行号等动作是在该模式下完成的。

4.2. 使用Xshell编辑Hello.java文件

输入 vim Hello.java, 就会跳转到一个vim界面,此时是不能编辑的,我们采用插入模式编辑,在vim界面输入 i , 就可以编辑了。

编写之后按下esc, 输入: wq, 即可退出 

4.3. vim 各种模式切换图

 4.4. vim 快捷键

  1. 拷贝:在正常模式下,拷贝当前行 yy,拷贝当前行的向下4行,4yy, 粘贴(按下p)
  2. 删除:在正常模式下,删除当前行 dd,删除当前行的向下4行,4dd, 粘贴
  3. 查找:在命令行模式下,输入 / ,输入待查找的信息后回车,按 n 键查找下一个。如果要查找另一个信息,再次按下 /, 重复上述操作即可。
  4. 行号:在命令行模式下,输入 set nu 显示行号; 输入set nonu 取消行号。
  5. 在一般模式下,按下 G 到达该文档文档最末行, gg 该文档最首行
  6. 在一般模式下,撤销上一次编辑
  7. 在一般模式下,数字+shift+g, 快速定位到指定行。

5. 关机重启、登录注销

  • 关机重启

shutdown   -h  now    立刻进行关机

shutdown   -h    1       "hello, 1分钟后关机"   # 注意:这里是按分钟计算的

shutdown   -h    12:00      12:00进行关机

shutdown   等价于 shutdown -h 1 ;   #  1 分钟后关机

halt       关机

shutdown   -r    now    现在重启

reboot      现在重启

sync    把内存的数据同步到磁盘

shutdown -c   取消关机命令 【linux】

shutdown -a   取消关机命令 【windows】

注意:无论是重启还是关机,先运行sync 命令,把内存种数据写到磁盘。

目前的shutdown、reboot、halt 等命令在关机前底层进行了 sync ,为了保险起见,可以自己再执行一次。

  • 登录注销

root 拥有最高系统权限,在开发中我们可能没有这么高的权限。如何在普通权限登录到root权限呢?输入指令 su - root  回车需要输入密码,验证成功后切换到了root账户。

切换用户

root - 用户名

 注销

logout 注销指令在图形运行级别无效,在运行级别3下有效

logout    # 注销

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/912866.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

系统管理与规划师

综合 工业化、信息化两化融合:战略、资源、经济、设备和技术的融合 诺兰6时期:(初普控,整数成)初始、普及、控制、整合、数据管理、成熟期;技术转型期介于控制和整合间 IT战略规划 IT战略制定:使…

tcpdump 是一款功能强大的网络数据包分析工具

功能概述 tcpdump 可以捕获和分析网络上传输的数据包。它允许用户在网络接口上监听经过的流量,并根据指定的条件(如协议类型、源 IP 地址、目的 IP 地址、端口号等)对数据包进行过滤和显示,帮助网络管理员、安全分析师和开发人员排…

容器化技术入门:Docker详解

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 容器化技术入门:Docker详解 容器化技术入门:Docker详解 容器化技术入门:Docker详解 引言 Doc…

C++20 概念与约束(2)—— 初识概念与约束

1、概念 C20 中引入新的编译期关键字 concept 用于创建概念。个人认为将其翻译为“构思”更为贴切。直接使用时,它更像一个只能用于模板的布尔类型关键字。 而如果用于模板中,他会将模板类型先带入自身,当自身条件为 true 才会实例化模板&…

FPGA实现以太网(一)、以太网基础知识

系列文章目录 FPGA实现以太网(二)、初始化和配置PHY芯片 文章目录 系列文章目录一、以太网简介二、OSI七层模型三、TCP/IP五层模型四、MAC-PHY接口五、MAC帧格式六、IP帧格式6.1 IP首部校验和计算6.2 IP首部校验和校验 七、UDP帧格式7.1 UDP头部校验和…

【启程Golang之旅】Go-Micro框架的高效开发技巧

欢迎来到Golang的世界!在当今快节奏的软件开发领域,选择一种高效、简洁的编程语言至关重要。而在这方面,Golang(又称Go)无疑是一个备受瞩目的选择。在本文中,带领您探索Golang的世界,一步步地了…

课下作业:IPSec协议验证

课下作业:IPSec协议验证 文章目录 1. 参考云班课课程资源中“ch03 密码技术-协议验证”的“VPN协议验证.pdf”和“ch03 密码技术-10-密码协议验证IPSec.mp4”,对 IPSec 协议进行验证,提交验证过程。(79分)第一阶段发起…

私域流量时代下的新型商业模式:以开源链动 2 + 1 模式、AI 智能名片、S2B2C 商城小程序源码为例

摘要:本文探讨了私域流量时代的特点及其对商业盈利模式的影响。通过分析从大众消费时代到私域流量时代的转型,阐述了商品到“人”的变化过程。同时,深入研究了开源链动 2 1 模式、AI 智能名片和 S2B2C 商城小程序源码在私域流量发展中的作用…

QJson-趟过的各种坑(先坑后用法)

QJson-趟过的各种坑【先坑后用法】 Chapter1 QJson-趟过的各种坑【先坑后用法】一、不能处理大数据量,如果你的数据量有百兆左右(特别是有的小伙伴还喜欢json格式化输出的),不要用Qjson,否则会报错 DocumentTooLarge二、json格式化输出1.构建…

MySQL记录锁、间隙锁、临键锁(Next-Key Locks)详解

行级锁,每次操作锁住对应的行数据。锁定粒度最小,发生锁冲突的概率最低,并发度最高。 应用在InnoDB存储引擎中。InnoDB的数据是基于索引组织的,行锁是通过对索引上的索引项加锁来实现的,而不是对记录加的锁。 对于行…

DBeaver工具连接Hive

DBeaver工具连接Hive 首先解压安装包dbeaver-ce-latest-x86_64-setup.zip,并安装dbeaver-ce-latest-x86_64-setup.exe; 安装Kerberos客户端4.1-amd64.msi; 查看集群节点/etc/hosts文件内容,并追加到C:\Windows\System32\drivers\etc\hosts; 下载集群用户keytab文件,并解压…

动态规划-两个数组的dp问题——718.最长重复子数组

1.题目解析 题目来源 718.最长重复子数组——力扣 测试用例 2.算法原理 1.状态表示 子数组问题不能像子序列问题使用两个区间来表示状态,因为子数组一定是连续的,因此在填第i个位置就需要用到第i-1个位置的值,那么不妨以某个位置为结尾来设…

软件工程 软考

开发大型软件系统适用螺旋模型或者RUP模型 螺旋模型强调了风险分析,特别适用于庞大而复杂的、高风险的管理信息系统的开发。喷泉模型是一种以用户需求为动力,以对象为为驱动的模型,主要用于描述面向对象的软件开发过程。该模型的各个阶段没有…

【日志】392.判断子序列

2024.11.8 【力扣刷题】 392. 判断子序列 - 力扣(LeetCode)https://leetcode.cn/problems/is-subsequence/?envTypestudy-plan-v2&envIdtop-interview-150 整个题从一开始就是打算从双指针的思想往下走的。但是,我设置了四个变量sLeft…

高校宿舍信息管理系统小程序

作者主页:编程千纸鹤 作者简介:Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验,被多个学校常年聘为校外企业导师,指导学生毕业设计并参…

【含开题报告+文档+源码】基于SpringBoot的智慧养老医护管理系统

开题报告 随着社会老龄化趋势的不断加深,我国老年人口逐年增长,对养老服务的需求愈发迫切。然而,传统的养老服务模式存在许多不足,如信息孤岛、护理不精准等问题,迫切需要一种创新性的解决方案以提升养老服务的质量和…

【双十一特惠】腾讯云省钱攻略:如何智取云计算资源

前言 双十一不仅是购物的狂欢节,对于云计算用户来说,更是一个节省成本的绝佳时机。腾讯云,作为国内领先的云计算服务商,每年双十一都会推出一系列优惠活动。本文将为您揭开如何在这个购物节中,最大化利用腾讯云的优惠…

IEEE 1588:电信网络的精确时间协议 (PTP)

IEEE 1588:电信网络的精确时间协议 IEEE 1588 PTP 概述PTP 协议特征同步类型IEEE 1588 PTP 角色IEEE 1588 PTP 的工作原理PTP 设备类型PTP 消息类型事件消息一般信息 PTP 时钟类规范PTP 配置文件 https://www.techplayon.com/ieee-1588-precision-time-protocol-ptp…

昇思大模型平台打卡体验活动:基于MindSpore实现GPT1影评分类

如果你对MindSpore感兴趣,可以关注昇思MindSpore社区 大模型平台 平台说明 昇思大模型平台旨在为AI学习者和开发者提供在线学习的项目、模型、大模型体验和数据集的平台。我们也添加了各领域的经典数据集来帮助学习者解决AI学习过程中的一系列难题, 如…

在IDEA中使用Git

一、准备工作 这里我们使用 Gitee 做例子,使用 SSH 协议。看这个文章前最好看一下《》这个文章,了解一下 SSH。 1、生成秘钥对 首先要到 ~/.ssh 目录下进行操作,因为生成的公钥和私钥一般放在这个目录下,Windows 就是在用户目…