一、Linux 与 Windows
| 比较 | Windows | Linux | 
|---|---|---|
| 界面 | 界面统一,外壳程序固定所有 Windows 程序菜单几乎一致,快捷键也几乎相同 | 图形界面风格依发布版不同而不同,可能互不兼容。GNU/Linux 的终端机是从 UNIX 传承下来,基本命令和操作方法也几乎一致。 | 
| 驱动程序 | 驱动程序丰富,版本更新频繁。默认安装程序里面一般包含有该版本发布时流行的硬件驱动程序,之后所出的新硬件驱动依赖于硬件厂商提供。对于一些老硬件,如果没有了原配的驱动有时很难支持。另外,有时硬件厂商未提供所需版本的 Windows 下的驱动,也会比较头痛。 | 由志愿者开发,由 Linux 核心开发小组发布,很多硬件厂商基于版权考虑并未提供驱动程序,尽管多数无需手动安装,但是涉及安装则相对复杂,使得新用户面对驱动程序问题(是否存在和安装方法)会一筹莫展。但是在开源开发模式下,许多老硬件尽管在 Windows 下很难支持的也容易找到驱动。HP、Intel、AMD 等硬件厂商逐步不同程度支持开源驱动,问题正在得到缓解。 | 
| 使用 | 使用比较简单,容易入门。图形化界面对没有计算机背景知识的用户使用十分有利。 | 图形界面使用简单,容易入门。文字界面,需要学习才能掌握。 | 
| 学习 | 系统构造复杂、变化频繁,且知识、技能淘汰快,深入学习困难。 | 系统构造简单、稳定,且知识、技能传承性好,深入学习相对容易。 | 
| 软件 | 每一种特定功能可能都需要商业软件的支持,需要购买相应的授权。 | 大部分软件都可以自由获取,同样功能的软件选择较少。 | 
二、Linux安装
2.1 使用云服务器
下载地址:Download
- CentOS-xx-DVD-xx.iso : 标准安装版,一般下载这个就可以了(推荐)
 - CentOS-xx-NetInstall-xx.iso : 网络安装镜像(从网络安装或者救援系统)
 - CentOS-xx-Everything-xx.iso: 对完整版安装盘的软件进行补充,集成所有软件。(包含 centos7 的一套完整的软件包,可以用来安装系统或者填充本地镜像)
 - CentOS-xx-GnomeLive-xx.iso: GNOME 桌面版
 - CentOS-xx-KdeLive-xx.iso: KDE 桌面版
 - CentOS-xx-livecd-xx.iso : 光盘上运行的系统,类拟于 winpe
 - CentOS-xx-minimal-xx.iso : 精简版,自带的软件最少
 
- 进入官网,选择对应的操作系统,点击下载
 - 选择推荐的镜像文件
 - 选择推荐的iso文件
 - 下载完成
 
2.2 使用虚拟机安装
下载地址: Download VMware Workstation Pro
- 下载免费试用版本
 - 安装
 
- 找到下载的VMware安装包位置
 - 双击即可开始安装
 - 勾选(我接受许可协议中的条款)
 - 安装位置修改为非C盘,并勾选(增强型键盘驱动程序)
 - 直接下一步

 - 安装完成后,点击许可证

 - 有秘钥则输入秘钥(比如:4A4RR-813DK-M81A9-4U35H-06KND)
 - 没有秘钥的可以跳过,直接点击完成
 - 安装完成后,会要求重启
 - 重启,双击图标进入VMware
 
- 使用
 
- 创建新的虚拟机
 - 默认推荐的典型,点击下一步
 - 选择安装程序光盘映像文件(iso),浏览刚刚下载的CentOS镜像,检测成功,点击下一步
 - 修改虚拟机名称、存放位置,点击下一步

 - 设置磁盘容量(默认20)、存储方式(默认拆分成多个文件),点击下一步
 - 完成
 - 安装成功
 - 打开Terminal窗口,输入Linux命令
 
三、运行
3.1 Git Bash环境运行
3.2 shell服务器演练环境登录
方式一:ssh方式连接
ssh ck27表单填写手机号后4位@shell.ceshiren.com
密码:hogwarts
示例:
ssh ck27xxxx@shell.ceshiren.com

方式二:Xshell、putty方式连接
- 账号:ck27表单填写手机号后4位
 - 端口:22
 - 域名:shell.ceshiren.com
 - 密码:hogwarts
 
Linux文件树
3.3 MobaXterm
下载地址:MobaXterm Xserver with SSH, telnet, RDP, VNC and X11 - Download
- 下载安装 MobaXterm 后,输入服务器的 IP 地址和用户名,点击 “OK” 连接服务器。如下图所示:
 - 输入密码后,就可以通过 SSH 连接到服务器进入主界面。 如下图所示: 
 
四、Linux常用命令
- 处理目录的常用命令:
 
| 命令参数 | 英文全拼 | 说明 | 
|---|---|---|
| ls | list files | 列出目录及文件名 | 
| cd | change directory | 切换目录 | 
| pwd | print work directory | 显示当前目录 | 
| mkdir | make directory | 创建一个新的目录 | 
| rmdir | remove directory | 删除一个空的目录 | 
| cp | copy file | 复制文件或目录 | 
| rm | remove file | 删除文件或目录 | 
| mv | move file | 移动文件或目录,或者修改文件或目录的名称 | 
- 
查看帮助
ls --help- 
man ls- man命令查看帮助快捷键:
- 空格键:显示手册下一屏;
 - enter键:一次滚动一行内容;
 - b:回滚一屏;
 - q:退出man命令。
 
 
 - man命令查看帮助快捷键:
 
 
注意:这两个命令都可以查看帮助信息,man的内容会比--help的更全面。

- 
文件管理
- 查看文件信息: 
ls- -a:显示制定目录下的所有文件,包括隐藏文件;
 - -l:以列表的方式显示文件的详细信息。
 
 
 - 查看文件信息: 
 
注意:带点的是隐藏文件,一般是系统文件。
ls -a 目录
ls -l 目录  # 可以简写为ll
ls -al 目录  # 查看目录下所有文件的详细信息,包括隐藏文件
- 切换工作目录: 
cd - 显示当前目录路径: 
pwd - 创建新目录:
mkdir
 - 创建空文件:
touch
 - 删除文件或目录:
rm - 拷贝:
cp 
| 命令 | 描述 | 
|---|---|
| -i | 交互式拷贝,如果目标文件已存在,则询问是否覆盖 | 
| -r或–recursive | 递归拷贝,用于拷贝目录及其子目录 | 
| -p | 保留源文件的权限、时间戳等属性 | 
| -v或–verbose | 详细模式,显示拷贝过程中的详细信息 | 
| -u或-update | 仅当源文件比目标文件新,或目标文件不存在时才拷贝 | 
| -l或–link | 创建硬链接而不是拷贝文件 | 
| -s或–symbolic-link | 创建符号链接而不是拷贝文件 | 



- 
移动/重命名:
mv
 - 
建立文件链接:
ln - 
查找文件:
find
 - 
查看文件内容:
cat、less、more、head、tail
 - 
打包压缩:
tar
 - 
文件处理
- 文本编辑:
vi/vim - 屏幕输出:
echo - 输出重定向:
>
 
 - 文本编辑:
 - 
修改文件权限
- r:读权限 read — 4
 - w:写权限 write — 2
 - x:执行权限 execute — 1
 - -: 无权限 — 0
 - 
chmod 777 文件
 
 - 
查看网卡信息
ifconfig- 
ip addr
 
 - 
测试远程主机的连通性
- 
ping- 
-c:ping 的次数 - 
-i:每次 ping 的时间间隔
 
 - 
 
 - 
 - 
打印 Linux 网络系统的状态信息
- 
netstat- 
-t:列出所有 tcp - 
-n:以数字形式显示地址和端口 - 
-p:显示进程的 pid 和名字
 
 - 
 
 - 
 - 
退出 Linux 系统
- 
exit
 
 - 
 
面试题:如何从一台linux传文件到另一台linux?
- 使用scp命令
 
- scp命令是secure copy的缩写,它可以在两台服务器之间进行文件的复制和传输。使用scp命令的基本语法如下:
 
scp [可选参数] 源文件 目标文件
- 
其中,源文件可以是本地文件路径或者远程服务器上的文件路径,目标文件可以是本地文件路径或者远程服务器上的文件路径。如果源文件或目标文件是远程服务器上的文件路径,则需要使用"用户名@服务器IP地址:文件路径"的格式。
 - 
例如,将本地的文件file.txt复制到远程服务器上的/tmp目录下:
 
scp file.txt 用户名@服务器IP地址:/tmp
- 将远程服务器上的文件/tmp/file.txt复制到本地的当前目录下:
 
scp 用户名@服务器IP地址:/tmp/file.txt .
- 使用rsync命令
 
- rsync命令是一个强大的文件复制和同步工具,它可以在本地和远程服务器之间进行文件的复制和同步。使用rsync命令的基本语法如下:
 
- rsync [可选参数] 源文件 目标文件
- 其中,源文件和目标文件可以是本地文件路径或者远程服务器上的文件路径。如果源文件或目标文件是远程服务器上的文件路径,则需要使用"用户名@服务器IP地址:文件路径"的格式。
 - 例如,将本地的文件file.txt复制到远程服务器上的/tmp目录下:
 
rsync file.txt 用户名@服务器IP地址:/tmp
- 将远程服务器上的文件/tmp/file.txt复制到本地的当前目录下:
 
rsync 用户名@服务器IP地址:/tmp/file.txt .
- 使用ftp命令
 
- 如果远程服务器上开启了FTP服务,可以使用ftp命令进行文件的复制和传输。使用ftp命令的基本语法如下:
 
ftp 服务器IP地址
- 连接到远程服务器后,可以使用put命令将本地文件上传到远程服务器,使用get命令将远程服务器上的文件下载到本地。
 - 例如,将本地的文件file.txt上传到远程服务器上的/tmp目录下:
 
put file.txt /tmp/file.txt
- 将远程服务器上的文件/tmp/file.txt下载到本地的当前目录下:
 
get /tmp/file.txt
        






























