2013-01-05 14:35:11 lt15032237182 阅读数 2539
  • 马哥Linux教程-Linux操作系统基础由浅入深全面讲解1

    本课程为全新马哥Linux全套系列课程之一--Linux基础入门和架构了解,从Linux起源,Linux架构和Linux形成历史开始逐步讲解,让你彻彻底底了解Linux的诞生,之后介绍了Linux相关文化和核心组成结构,以及Linux常用命令和基本用法,课程由浅入深,讲授方法受到98%学员一致好评!

    19349 人正在学习 去看看 马永亮

1、完全免费
  Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变。这让Linux吸收了无数程序员的精华,不断壮大。
  2、完全兼容POSIX 1.0标准
  这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程序。这为用户从Windows转到Linux奠定了基础。许多用户在考虑使用Linux时,就想到以前在Windows下常见的程序是否能正常运行,这一点就消除了他们的疑虑。
  3、多用户、多任务
  Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。
  4、良好的界面
  Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似Windows图形界面的X- Windows系统,用户可以使用鼠标对其进行操作。在X-Windows环境中就和在Windows中相似,可以说是一个Linux版的 Windows。
  5、丰富的网络功能
  互联网是在Unix的基础上繁荣起来的,Linux的网络功能当然不会逊色。它的网络功能和其内核紧密相连,在这方面Linux要优于其他操作系统。在Linux中,用户可以轻松实现网页浏览、文件传输、远程登陆等网络工作。并且可以作为服务器提供WWW、FTP、E-Mail等服务。
  6、可靠的安全、稳定性能
  Linux采取了许多安全技术措施,其中有对读、写进行权限控制、审计跟踪、核心授权等技术,这些都为安全提供了保障。Linux由于需要应用到网络服务器,这对稳定性也有比较高的要求,实际上Linux在这方面也十分出色。
  7、支持多种平台
  Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux 2.4版内核已经能够完全支持Intel 64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高

2017-01-13 13:25:30 ztliduo 阅读数 401
  • 马哥Linux教程-Linux操作系统基础由浅入深全面讲解1

    本课程为全新马哥Linux全套系列课程之一--Linux基础入门和架构了解,从Linux起源,Linux架构和Linux形成历史开始逐步讲解,让你彻彻底底了解Linux的诞生,之后介绍了Linux相关文化和核心组成结构,以及Linux常用命令和基本用法,课程由浅入深,讲授方法受到98%学员一致好评!

    19349 人正在学习 去看看 马永亮

Linux操作系统概述


Linux操作系统自从发布以来极短的时间就风靡全球,由于Open Source、可移植、稳定、体积小、强大的网络支持等特点,现在Linux在服务器端、嵌入式设备(物联网)、移动设备(Google的Android操作系统)等行业成为了主流操作系统。虽然桌面级的Linux系统和windows还有一定差距,但在工程界,Linux已经是行业的风向标,而且Torvalds的开源理念也让世界各地的工程师能从Linux和相关软件中互相学习。
那么,作为软件开发工程师,把Linux学习好,不管是今后往硬件还是互联网方向发展,都是极有必要的。另外,学习Linux的相关知识也是对操作系统的学习,了解了操作系统如何驱动硬件,如何管理进程和线程,必定能够对我们的开发工作有极大的推进。本文主要收集一些Linux的常用命令,接下来会在Linux和操作系统的学习过程中,不断总结,写一些学习笔记。

2018-01-09 18:12:34 G_Codes 阅读数 11054
  • 马哥Linux教程-Linux操作系统基础由浅入深全面讲解1

    本课程为全新马哥Linux全套系列课程之一--Linux基础入门和架构了解,从Linux起源,Linux架构和Linux形成历史开始逐步讲解,让你彻彻底底了解Linux的诞生,之后介绍了Linux相关文化和核心组成结构,以及Linux常用命令和基本用法,课程由浅入深,讲授方法受到98%学员一致好评!

    19349 人正在学习 去看看 马永亮

##一. 什么是Linux? ##
1.什么是Linux: Linux是一款广泛应用在服务器上的操作系统。

2.什么是操作系统: 操作系统是硬件基础上的第一层软件, 应用软件都需要安装到操作系统上使用。

3.Linux的特点

  • 安全
  • 免费开源
  • 稳定
  • 快速
  • 多用户:多用户指一个用户的操作完全不会影响到其他用户的操作

由于Linux多用户的特点,Linux操作系统广泛应用于服务器上。

##二. Linux的版本
1.内核版:内核版并不能直接使用,需要进行包装后用户才能更直接的使用。

2.发行版:各个厂商针对Linux的内核所发布的各自的发行版,用户可以直接使用操作。

3.几种常见的发行版

  1. redHat : 十分稳定且好用,但是需要付费
  2. centos6.5:虽然不如redHat,但功能全面,且免费
  3. Ubuntu:拥有图形化界面,方便操作,PC针对Ubuntu软件较多。

三. Linux使用简介

1.在Linux操作系统中,万物皆文件,因此操作Linux系统实际就是操作系统中的文件。与Java中万物皆对象的思维类似。

2.Linux的用户: Linux中有两种用户:root用户其他用户

  1. root用户: root用户具有最高权限,可以操作全部文件
  2. 其他用户: 其他用户会有权限限制,但是其他用户是安全的

3.使用客户端来连接Linux

①为什么使用客户端?

  1. Linux一般在服务器上,不能直接在上面操作。
  2. Linux中直接操作并不方便。

为了方便用户操作使用,所以使用各种各样的客户端来连接Linux进行操作,例如:MobaXterm。

②客户端连接Linux方法

  1. 查询Linux的ip地址:通过ifconfig命令获取该用户的ip地址。
  2. 知道该用户的用户名和密码。
  3. 想要连接的Linux和本地机需要能够ping通。

这里写图片描述

四.Linux的基本命令

1.目录操作:

  • 切换目录:分为绝对路径和相对路径两种方式。
    1.命令:cd

2.绝对路径: cd / 后加需要切换的目录,eg:cd /a/b 为根目录下a文件夹下的b文件夹。

绝对路径是指先切换到根目录,在由根目录切换到索需要的目录

3.其他命令
cd …:返回当前目录的上一层
cd ~:跳转到home directory目录

  • 查看目录
    命令:
    ls -a:显示全部文件,包含隐藏文件。
    ls -r: 级联显示
    ll : 详细查询 -h kb显示文件大小。

  • 文件夹操作

mkdir :创建文件夹
mkdir -p:连续创建多层文件夹

rm :删除命令/文件
rm -r :删除文件夹

cp :复制,可以复制到当前目录或其他目录,同时可以修改文件名
格式:cp 要复制的文件名 目标目录/文件名
cp -r :复制目录

mv :移动,改名

  • 文件操作

vim:编辑器,按esc退出编辑模式。输入wq保存并退出q为退出

cat:查看文本内容
cat a > b : 将a的内容给b
cat a >> b:将a的内容追加给b

  • 文件压缩以及解压缩
    tar:归档和压缩
    tar -c:压缩
    tar -x:解压缩
    tar -f: 文件
    tar -f:显示

压缩命令格式
tar -czvf 压缩后文件名 目标目录
tar -c 目标目录

解压缩命令格式
tar -czvf 目标名

补:压缩文件 tar czvf 文件名.tar 要压缩的文件
解压缩 tar xzvf 要解压的文件.tar

用户组和权限

1. linux的用户和组权限:
Linux用户可以做到几乎完全的隔离,各个用户之间的操作互不影响
组中有用户 修改组,组中的用户也跟随改变。
最初一个用户有一个组
一个组里面可以有多个用户
通过命令 操作用户和操作组

2.创建用户
创建用户过程:必须在root用户(最高权限的)下操作
创建用户 useradd +用户名
设置密码 passwd +用户
切换用户 su
删除用户 userdel +用户名

3.和用户组相关的文件
etc/passwd
etc/shadow
etc/group

4.组的操作
创建组:groupadd +组名
删除组:groupdel +组名
修改组:groupmod -n 新名字 原名字
向组中添加用户:usermod -G +组名 +用户名

5.权限
1.万物皆文件 查看文件的权限
2.通过ll或ls -l 可以查看文件的类型和权限
3.一共10位,第一位为类型位,剩下的每三位一组,代表 本用户,所属组,其他 的权限
4.权限的表示:r可读(4) w可写(2) x可执行(1),更方便的可以使用括号内数字来表示,这样他们和的结果组合形式只有一种

6.权限的调整
调整文件所属的用户/组:chgrp +新组名 +文件名
chown +新用户名 +文件名
chown 用户:组 +文件名
修改用户的权限 chmod ①通过数字来修改;②通过具体的文件所属(u,g,o,a)和权限(x,w,r)修改 +代表添加 -代表减少
eg:chmod 666 +文件名;chmod u+x +文件名
文件夹权限:包括文件内部权限

Shell

  • 什么是shell
    1.Shell用来和系统内部进行交互,可以理解为是一种语言
    2.特点:灵活,快捷,方便
    3.输出语句 echo " " 类比system.out.println" ";
    键盘输入语句:read -p “键盘输入内容的描述” 变量名

  • Shell文件
    1.#! /bin/bash 声明Shell的版本 # 注释
    2.执行Shell文件中的脚本:./文件名
    3.注意:一定给.sh文件执行权限
    4.不更改权限,可以通过 bash 文件名 来强制执行脚本

  • Shell中的变量
    1.全局变量:在哪都能用的变量
    2.局部变量:只能在特定文件中使用的变量
    3.声明变量:变量名=值(不能有空格)
    引用变量:$变量名 或者 ${变量名}
    注意:变量直接使用字母命名。
    4.声明数组:array=(1,2,3,4)
    ${array[1]} 取出2号位置值
    ${array[]} 取出全部值
    ${#array[
    ]} 获得数组长度

  • 循环语句

test:
-eq 等于 -ne(-neq)不等于
-gt 大于 -ge 大于等于
-lt 小于 -le 小于等于

if:
语法:

1.if test $a -eq $b

2.if [ $a -gt 5 ] ;
then 要执行的语句
else 要执行的语句
fi
3.if [ ] ;
then 要执行的语句
elif [];then 要执行的语句
else 要执行的语句
fi
4.注意:[]两端内部必须有空格,否则不能运行
5.case 变量 in
选项1) 要执行的语句;; #注意两个分号
*) defult
ecas #表示结束。

循环
1 while 循环 :

    while [ $i -lt 10 ]
    do
    done
注意 在变量自增的时候 
     如果直接 $num+1 字符串拼接
 a num=$(($num+1)) #当数字计算
   num=$[$num+1]

while:break
完成了一个 直到某个条件才结束循环的功能
exit!

2 for 语法

   a [    for n in a b c d 
	     do 
		$n
	     done
     ]

   b [  for((i=0;i<100;i++))
         do 
	    $i
	 done 
     ]  

函数
1 定义函数 语法
function 函数名 () { 函数体 }

2 调用函数 函数名 参数1 参数2

3 取第一个参 echo 输出结果 $(函数名取结果)

  • 定时任务

系统按指定的时间 或指定的时间段 来完成相应任务
crontab -l(查看当前定时任务)
-e(编辑)
-r(删除定时任务-全删)
格式:* * * * * +命令
第一个*:分钟(0-59)
第二个*:小时(0-23)
第三个*:日期(1-31)
第四个*:月份(1-12)
第五个*:星期(0-7)
在 * 前加 / 可以实现每隔 * 运行一次任务。

2019-07-25 20:45:35 Zxy420 阅读数 30
  • 马哥Linux教程-Linux操作系统基础由浅入深全面讲解1

    本课程为全新马哥Linux全套系列课程之一--Linux基础入门和架构了解,从Linux起源,Linux架构和Linux形成历史开始逐步讲解,让你彻彻底底了解Linux的诞生,之后介绍了Linux相关文化和核心组成结构,以及Linux常用命令和基本用法,课程由浅入深,讲授方法受到98%学员一致好评!

    19349 人正在学习 去看看 马永亮

Linux操作系统的安装调试

Linux是一个免费的开源授权操作系统。基于其自由、开放、安全、稳定、网络负载大、硬件资源低等特点,Linux用户越来越多地被用作网络操作系统的服务器。用于嵌入式Linux开发、个人工作站和业务开发。该领域已经发展成为当今世界上主要的操作系统之一。
关键词:Linux系统;安全策略;对策建议;管理。

一、

随着互联网的快速发展,网络本身的安全面临着重大挑战。与其他网络操作系统一样,Linux也面临着更大的安全风险,其系统的安全性正受到越来越多的关注。分析Linux系统的安全机制,识别潜在的安全风险,并采取适当的安全策略和措施。

二、Linux 系统网络安全概述

Linux是一套自由软件,用户可以免费得到它及其源代码和大量相关的应用程序,或者根据自己的意愿和需要修改和补充,免费使用,无限沟通。Linux不仅具有强大而稳定的Unix网络操作系统的所有优点,而且还提供了一组丰富的应用程序。在网络功能、安全性、稳定性和应用程序方面,Linux不亚于任何商业操作系统,并且已经被许多用户用于构建安全可靠的站点和提供各种业务关键型网络服务。

Linux网络操作系统提供基本的安全机制,如用户帐户、文件系统权限和系统日志文件。如果没有正确配置这些安全机制,系统将存在一定的安全风险。

(一) Linux系统用户帐号
在Linux中,用户帐户是用户的身份令牌,由用户名和用户密码组成。输入的用户名存储在/etc/passwd文件中,输入的密码加密在/etc/shadow文件中。在正常情况下,这些密码和其他信息受到操作系统的保护,只能由根应用程序和操作系统的某些应用程序访问。

(二)Linux文件系统权限
Linux文件系统的安全性主要是通过设置文件权限来实现的。对于每个Linux文件或目录,目录所有者、用户组和其他用户有三组属性定义文件或权限。

(三)Linux日志文件
Linux日志文件用于记录整个操作系统的使用情况。作为Linux网络系统管理员,您可以利用/var/log/lastlog、/var/log/secure和/var/log/wtmp等多个日志文件。

三、Linux系统的网络安全问题分析

随着Linux操作系统在全球范围内的广泛使用,其安全风险日益凸显。目前,针对Linux网络系统的攻击越来越多。主要攻击包括拒绝服务攻击、密码破解攻击、缓冲区溢出攻击、IP欺骗攻击、监控网络攻击以及欺骗用户,如端口扫描攻击和攻击。范围从拒绝服务到完全损害和破坏。Linux服务器的操作。

(一)拒绝服务攻击
拒绝服务(DoS)攻击是指黑客采用破坏性的方法来阻塞目标网络资源,导致网络暂时或永久地瘫痪,使Linux网络服务器无法为普通用户提供服务。例如,黑客可以通过使用一个假的源地址或多台控制该位置的计算机来禁用目标服务器系统,从而同时向目标计算机发送大量连续的TCP/IP请求。大多数拒绝服务攻击可以导致相对较低的风险水平,甚至那些可以导致系统重新启动的攻击也只是暂时的。拒绝服务攻击包括简单拒绝服务攻击、分布式拒绝服务攻击、DNS分布式拒绝服务攻击和FTP攻击。由于拒绝服务攻击工具的普及和协议层的缺陷,拒绝服务攻击已经成为最广泛和最难防范的攻击。

(二)密码破解攻击
密码破解攻击的目的是破解用户的密码,获取加密的信息资源。密码安全是保护系统安全的第一道防线。然而,在实际应用中,用户往往忽略自己的密码,密码策略难以实现。黑客有各种工具来破解技术和社会保护密码,包括字典攻击、混合攻击和蛮力攻击。例如,黑客可以使用高速计算机,加上字典库,尝试各种密码组合,直到最终找到一个密码进入系统并打开网络资源。

(三)缓冲区溢出攻击
缓冲区溢出攻击是指攻击者将非常长的字符串复制到空间有限的缓冲区中,并覆盖相邻的存储单元,这通常会导致程序失败,甚至崩溃或重新启动系统。缓冲区溢出漏洞在应用程序和操作系统中广泛存在。

(四)IP欺骗攻击
IP欺骗攻击使用TCP/IP协议攻击网络,不检查安全漏洞的返回地址。IP欺骗是欺骗别人的IP地址的行为,本质上允许一台计算机模拟另一台计算机。IP欺骗是通过使用主机之间的正常信任关系来启动的。所谓信任关系就是两台计算机网络上的p1和p2。p2可以使用telnet工具来验证登录p1主机不需要密码。您可以假装是p2的IP地址,您可以使用telnet工具在不需要任何密码的情况下登录到p1。密码验证。

(五)网络监控攻击
网络监控也是黑客常用的手段。黑客在成功登录网络主机并获得超级用户控制权后,可以利用网络监控来收集敏感数据或身份验证信息,从而在未来控制网络上的其他主机。

(六)欺骗用户攻击
欺骗攻击是工程技术人员假扮成网络公司或计算机服务提供商,打电话给用户,并要求用户在适当的时候输入密码。有时黑客会向用户发送电子邮件,要求用户更新他们的系统密码。这是一种很难处理用户攻击的方法。一旦用户的密码丢失,黑客就可以使用用户的帐户进入系统。

(七)端口扫描攻击
端口扫描是一种特定类型的TCP / UDP发送消息到目标主机的全部或特定端口扫描,诱导目标主机回复响应消息,分析返回的响应消息来推断目标主机端口的状态和其他信息。使用端口扫描工具,黑客可以发现目标主机上的各种漏洞,并利用它们攻击系统。

四、Linux 系统的安全策略

Linux是一个开源操作系统。为了在日益发达和复杂的网络环境中保证Linux系统的网络安全,系统管理员必须具有安全意识,并采取一定的安全措施来提高Linux系统的网络安全。下面从Linux系统的用户管理、文件管理、防攻击、数据备份等方面介绍Linux网络安全解决方案。

(一)用户管理

1.保证根账户的安全
根帐户是Linux系统上具有管理员特权的特权帐户。根帐户不受任何限制,所以在使用根帐户时应该非常小心,以避免误用。一般来说,不要使用根帐户登录,而且系统管理员使用其他人计算机上的根帐户登录服务器并不容易。
2.设置用户账号的安全级别
Linux系统上的每个帐户都可以授予不同的权限,在创建新用户ID时,系统管理员应该根据需要授予帐户不同的权限,并将它们合并到不同的用户组中。除了一些重要用户外,建议屏蔽其他用户的telnet权限,只授予ftp权限,防止一些人使用其他帐户登录系统。此外,Linux系统自动登录,允许或不允许输入/rar/log/secure结果,允许系统管理员检测可疑的输入记录。
3.确保用户密码的安全性
对于网络系统,密码容易出错,因为系统管理员应该告诉用户在设置密码时使用安全密码,并适当增加密码长度。系统管理员应该保护/etc/passwd和/etc/shadow文件免受无关人员的攻击,这样黑客就不能使用john和其他程序对/etc/passwd和/etc/shadow文件执行字典攻击来获取用户。密码。系统管理员必须定期模拟对系统的/etc/passwd和/etc/shadow文件的字典攻击,一旦发现不安全的密码,就强制用户更改密码。
(二)文件管理
加密Linux系统中的重要文件,加密重要文件。使用gpg gen-key生成密钥对并发布公钥,以便其他用户可以下载加密的公钥并将其发送回文件。接收到加密文件后,使用配对的私钥将其解密为明文。
设置文件系统的访问权限。Linux文件系统的安全性主要是通过设置文件权限来实现的。使用chown或chgrp命令正确设置文件的所有权或用户组关系。文件的不同用户(文件主用户、组用户和其他用户)只有所需文件的必要访问权限(读、写和可执行),这提高了文件访问的安全性。
(三)预防攻击
1.设置防火墙
防火墙的主要功能是实现两个或多个网络之间的透明访问,防止未经授权的用户进入系统。同时,防火墙可以尽可能少地暴露受保护的网络入口点,从而有效地减少外部网络对受保护网络的未经授权的访问和恶意攻击,保护系统。因此,防火墙在主机安全中扮演着非常重要的角色。配置得当的防火墙不仅是系统有效应对外部攻击的第一道防线,也是最重要的一道防线。它可以补偿由错误设置或软件漏洞引起的安全问题。在Linux系统中,通常使用iptables来完成防火墙配置,可以有效地防止IP地址欺骗、木马攻击、密码搜索攻击、Internet蠕虫和邮件攻击。
2.关闭不必要的服务
Linux系统安装了许多网络服务,有时存在严重的安全问题,用户应该关闭不需要的服务。Linux中的大多数网络服务都内置在/etc/inetd.中保存系统提供的Internet服务数据库。这个文件可以用来关闭系统中一些不必要的服务,使它们运行得更安全。
3.禁用系统对ping命令的响应
TCP协议本身有很多弱点。黑客可以使用一些技术来传输正常的数据包通道,进行数据的秘密传输。系统设置ping请求无响应,可以很好地防止黑客利用自身的漏洞攻击用户,给计算机网络安全带来风险。降至最低。

结论

上述网络安全策略可以大大提高Linux系统的网络安全,但不能完全消除黑客。随着Linux系统的发展,针对Linux系统的攻击方法也在不断变化。因此,Linux网络安全工作需要用技术和管理来更新。应不时关注安全技术的发展,以提高安全意识和安全技巧及公式。合理有效的安全策略是在定期检查系统安全的基础上,发现漏洞,立即采取措施保证Linux系统的安全。

2016-02-22 20:40:24 aircherfjt 阅读数 2277
  • 马哥Linux教程-Linux操作系统基础由浅入深全面讲解1

    本课程为全新马哥Linux全套系列课程之一--Linux基础入门和架构了解,从Linux起源,Linux架构和Linux形成历史开始逐步讲解,让你彻彻底底了解Linux的诞生,之后介绍了Linux相关文化和核心组成结构,以及Linux常用命令和基本用法,课程由浅入深,讲授方法受到98%学员一致好评!

    19349 人正在学习 去看看 马永亮


在线阅读地址:http://www.doc88.com/p-5126905896771.html


Linux编译构建定制qq群: 521902245

目录...0

前言...3

第零章 绪论...5

第一章 Linux最小操作系统编译构建研究...7

1 主机环境...7

2 grub编译...7

3 linux内核编译...8

3.1 下载源代码...8

3.2 配置内核...8

3.3 编译内核...9

4 initramfs.img制作...10

5 linux操作系统在磁盘上的构建...12

5.1 基本环境准备...12

5.2 磁盘分区和挂载...12

5.3 安装grub.13

5.4 安装内核...14

5.5 安装initramfs.img.15

6 initramfs.img进一步制作...16

6.1 使用busybox.16

7 切换到磁盘上真正的根文件系统...19

7.1 改写init19

8 增加功能和优化...20

8.1 系统初始化配置...20

8.2 增加网络功能...22

第二章 linux操作系统编译构建研究(LFS).26

1 环境准备...26

2 工具链的制作...26

2.1 编译环境搭建...26

2.2 工具链的编译制作...28

2.3 切换用户权限...43

3 目标机编译系统的制作...43

3.1 编译环境搭建...44

3.2 目标机编译系统的编译制作...44

3.3 切换环境变量...63

4 其他工具的编译安装...63

4.1 grub编译...63

4.2 其他工具编译安装...65

4.3 重新chroot81

5 系统信息配置与启动信息配置...81

5.1 系统信息配置...81

5.2 启动信息配置...85

6 linux内核编译安装...86

6.1 内核配置...86

6.2 内核编译安装...87

6.3 配置grub信息...88

6.4 其他配置信息...89

6.5 退出及打包...89

6.6 重新登录退出环境...89

7 linux操作系统在磁盘上的构建...90

7.1 基本环境准备...90

7.2 磁盘分区和挂载...90

7.3 复制所有lfs7.8文件到磁盘...91

7.4 安装grub.91

7.5 进入Linux操作系统...91

7.6 制作使用initramfs.img.91

8 后续优化配置...103

8.1 基本配置...103

8.2 网络配置...109

8.3 安装wget110

8.4 安装openssh.111

9 最终效果图...112

后记...113

 


 



没有更多推荐了,返回首页