Linux入门:从安装到环境搭建

Linux简介 Linux 是一个基于 Unix 的开源操作系统,由 Linus Torvalds 在 1991 年首次发布。它是一种类 Unix 系统,意味着它具有与 Unix 相似的功能和特

Linux简介

Linux 是一个基于 Unix 的开源操作系统,由 Linus Torvalds 在 1991 年首次发布。它是一种类 Unix 系统,意味着它具有与 Unix 相似的功能和特性,但与 Unix 不同的是,Linux 是免费且开源的,允许用户自由地使用、修改和分发。

安装

制作系统盘

  • 到linux官网下载linux镜像
  • 下载UItralISO
  • 准备一个空的U盘
  • 制作镜像:如何制作一个系统盘
  • 参考链接:链接

开始安装

  • 首先了解一下电脑的主板信息,了解主板厂商
    • cmd运行msinfo32即可看到主板信息,查询了解主板启动bios界面的快捷键比如F11
  • 重启电脑,疯狂点按或者连按快捷键,进入bios界面如下:
  • 选择U盘为启动模式或者将U盘启动改为第一优先级(记得装完改回来)
  • 接下来按照系统提示即可完成安装(注意:linux可以选择安装在某一个硬盘,比如你C盘装win,D盘存一些资料。你可以选择将D盘文件备份后,在D盘安装Linux系统组成双系统。只不过每次开机会有一个界面停留几秒让你选择进入哪个系统

环境配置

编写程序一般都需要conda,所以在linux上安装一个anaconda是必要的。参考连接

  • 下载安装anaconda的脚本文件。
    • 可以选择手动下载,比如到清华镜像网站,选择最新的就可以。
    • 也可以使用wget命令: wget https://repo.anaconda/archive/Anaconda3-2024.02-1-Linux-x86_64.sh
  • cd到下载目录,比如 cd 下载
  • 运行脚本文件:比如 bash Anaconda3-2024.02-1-Linux-x86_64.sh
  • 接下来按照提示进行安装即可。如果需要安装一些其他的包,则使用pip安装即可
  • 配置环境变量和快捷键:
    • vim ~/.bashrc 打开系统环境变量文件
    • 添加环境变量: export PATH="/home/用户名/anaconda3/bin:$PATH"
    • 添加快捷键: alias act='conda activate' alias deact='conda deactivate' (这样每次启动环境可以输入:conda act
    • 按一下esc退出编辑模式,输入:wq保存并退出
    • source ~/.bashrc更新环境变量
    • conda --version验证是否添加完成

硬盘分区

如果电脑只有一个盘,那么可以跳过这个步骤。linux不像win一样有盘符的概念,linux是在一个硬盘内安装的,如果要使用电脑里的其他硬盘,就需要挂载在安装的硬盘上。比如说在C盘里安装了linux系统,想使用D盘,那么就需要将D盘挂载在C盘的linux系统的某个文件夹下。(这里的C盘D盘是win中的概念)。但是在挂载之前,我们需要对磁盘进行分区,在 Linux 中,磁盘是通过分区来使用的。分区是将一个硬盘划分成几个逻辑部分来使用,在每个分区中可以存储不同的文件系统。因此,在挂载磁盘之前,我们需要先对磁盘进行分区。磁盘分区的过程可以通过命令行工具或图形界面工具来完成。

  • 终端运行lsblk查看当前磁盘的分区情况和挂载情况: lsblk 是一个 Linux 命令,用于列出所有块设备(如硬盘、分区、光驱等)的信息。它以树形结构显示设备及其挂载点、大小、类型等详细信息。
  • 也可以运行df -lh
    可以看到sdb是我的另一个盘,其中第一个分区是安装系统时默认分好的,第二个分区是我新添加的。这次我们再添加一个分区作为演示。分区有两种方式,分别是MBR和GPT,区别参考链接
  • MBR分区方式:
    • 运行fdisk /dev/sdb1:适用于创建主分区和扩展分区,支持MBR分区表(权限不够则在前面加上 sudo
    • 输入m查看各个命令的具体含义,这里输入n在sdb这个硬盘中添加一个新的分区
    • 输入分区号,默认即可
    • 输入w,保存并退出,假设新添加的分区为sdb3,由于MBR分区的限制,最大只支持两个T的大小
  • GPT分区方式:
    • 运行gdisk /dev/sdb
    • 输入?查看各个命令的具体含义
    • 输入n创建一个新的分区
    • 输入分区号,默认即可
    • 第一个是选择开始位置,默认即可
    • 第二个选择结束位置,这里可以输入结束位置的地址,或者直接输入+10G或者+10T表示在开始的地址基础上后移10G的或者10T的容量
    • 空格默认
    • 运行w保存并退出
  • 运行lsblk查看分区结果
  • 运行mkfs.ext4 /dev/sdb3将新添加的分区格式化为ext4文件,ext4和其余格式的区别参考链接
  • 运行mount /dev/sdb1 /data将新建的分区挂载在根目录下的data文件夹
  • 运行lsblk查看是否挂载成功
  • 运行blkid查看分区的UUID,将UUID写进etc/fstab文件,另起一行写入:UUID=your-UUID /data ext4 defaults 0 0,这样可以每次开机时系统自动挂载
  • 想马上查看是否成功自动挂载,运行reboot或者shutdown -r now重启电脑查看

参考链接

链接1 链接2 链接3 链接4 链接5 链接6 链接7

linux常用命令

  • mv /root/path/ /root/path2
    移动第一个路径下的某一个文件至第二个路径
  • cd:cd /path/dic cd … 上一个目录
  • ls: ls 查看目录下的文件 ls -l 列出文件详细信息
  • cat: cat test.txt 终端打印文件内容
  • cp: cp test1.txt test2.txt 复制文件1的内容到文件2
  • rm: rm file.txt 删除文件
  • touch: touch file.txt 创建一个新的文件
  • pwd: 显示当前位置
  • mkdir: mkdir file 创建新的目录
  • rmdir: 删除空的目录
  • tar:
    • tar -cvf archive.tar /path/to/directory 创建一个名为 archive.tar 的归档文件
    • tar -xvf archive.tar -C /path/to/extract 解压 archive.tar 到指定目录
  • ping: ping google 测试网络联通性
  • ipconfig: 显示所有网络信息的接口
  • wget: wget 是一个命令行工具,用于从网络上下载文件。它支持 HTTP、HTTPS 和 FTP 协议,并且可以递归下载整个网站。
    • wget https://example/file.zip下载单个文件
    • wget -O myfile.zip https://example/file.zip 下载文件并保存为指定名称
  • 硬盘挂载:
    • sudo umount /path/file:取消挂载在这个文件下的硬盘
    • mount /dev/sdb /data:将硬盘sdb挂载在/data文件夹下
    • mount:查看是否挂载成功
    • vim /etc/fstab:编辑这个文件可以设置系统开机自动挂载
  • 重启:
    • reboot:重新启动
    • shutdown -r now:现在重启
    • sudo shutdown -r +10:10分钟后重启
    • sudo shutdown -r 22:00:晚上10点重启
  • 硬盘分区:
    • fdisk -l:查看当前所有磁盘的分区情况
    • lsblk(老师不离开):查看所有磁盘所有分区的挂载情况
    • blkid:查看UUID
  • vim文本编辑:
    • 一般要使用sudo,因为一些文件只有root用户能编辑
    • 进入文件后,首先点insert开始插入模式开始编辑
    • 编辑完成后点esc退出插入模式,按:wq退出
  • uptime:记录当前时间,从上次系统启动开始系统运行时间, 目前连接的用户数,过去1,5,15分钟系统的平均负载
  • man:在所有命令加上man,会在终端打开一个手册,展示这个命令的功能和可选参数
  • lscpu:查看CPU的数量和其他信息
  • netstat -nat | grep 'ESTABLISHED' | grep ':22 ' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c:显示当前ssh连接到服务器的用户数及其ip地址

文件传输

需要在本地和远程服务器之间传送文件,可以使用sftp命令

  1. 连接服务器:sftp root@host
  2. cd远程服务器到指定路径:cd path/to/dict
  3. 上传本地路径下的文件到远程服务器:put local\path\doc.exe
    也可以下载xftp软件,使用图形化界面传输:参考链接

密钥登录

相比于密码登录远程服务器,密钥登录是更安全的。因为密钥一旦生成就是相对应的,你持有私钥,服务器持有公钥,连接时会互相检查以确保安全。

  • 密钥生成:可以选择在本地生成或者在远程生成,区别在于是上传公钥到服务器还是下载私钥到本地而已
  • ssh连接服务器,运行ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_custom生成密钥对
  • 将公钥的内容添加到服务器的~/.ssh/authorized_keys 文件中以启用密钥认证:cat ~/.ssh/id_rsa_custom.pub >> ~/.ssh/authorized_keys
  • 设置authorized_keys权限:chmod 600 ~/.ssh/authorized_keys,即所有者有读写权限
  • 切换到本地终端,使用sftp连接服务器
  • cd 到/home/user/.ssh/
  • get id_rsa_custom C:\Users\your_windows_user\.ssh\ 将私钥下载到本地.ssh文件下
  • 即可使用私钥连接:ssh -i C:\Users\your_windows_user\.ssh\id_rsa_custom your_linux_user@your_server_ip 参考链接

vscode免密登录

  • 持有私钥之后,就可以使用vscode免密连接服务器 参考链接
  • 打开.ssh文件下的config文件,添加参数
  Host 远程服务器名称
    HostName 地址
    User 用户名
    IdentityFile "C:\Users\user\.ssh\id_rsa_custom"

将home文件夹挂载到更大的磁盘

防止home文件夹文件过多,将home挂载到一块更大的磁盘上。参考链接

发布者:admin,转转请注明出处:http://www.yc00.com/web/1754781785a5201429.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信