一键脚本那些事儿

杂谈 15402 次围观 46 次吐槽

Linux Shell

之前说了不少关于域名的那些事儿,但远远没有说完。这不,一段时间没注意,又新增了不少新的域名后缀。如果你想留意更多后缀的域名,请看文末链接。
我们换个话题,来说说一键脚本的那些事儿。

首先,想说说一键脚本流行的原因何在?

众所周知的是,Linux 是占据大半壁江山的服务器系统,但在桌面上的占有率可就远不是那么回事儿了,使用和熟悉 Linux 的人远没有 Windows 多,但又因为各种外部因素(比如工作等)而又不得不使用 Linux 的话,一键脚本就是一个不错的选择了。

由于工作需要我才开始接触 Linux,最开始理所当然是 CentOS 发行版。原因无他,工作需要。我在网站的第一篇文章就写到我为什么要写 LAMP 一键脚本,原因是当时流行的各种一键脚本满足不了我的需求,身为一名程序员,就开始理所当然的造轮子了。当然在造轮子的过程中免不了要借鉴别人,还要不断地 Google 遇到的各种问题。
后来也陆续写了其他的一键脚本。在写这些脚本时,是什么动力让我去琢磨和研究?无它,个人需求罢了。
正是因为每一个一键脚本的诞生都是自己的需求,所以才能保持更新,保持长久的动力。于是我可以矫情的说,看,这就是兴趣(需求)的力量。

其次,说说一键脚本有哪些优点和缺点?

自从虚拟主机开始变得不再流行,使用 VPS 建站(当然也叫Cloud)就成了非常流行的做法。一开始我迷恋于各种邮箱后缀,从而开始了解和使用域名,再到使用 VPS 建站,这是一个很长的过程。
既然说到建站,那就免不了要和各种 Linux 系统发行版打交道,目前最流行的也就是 CentOS,Debian,Ubuntu。而 Ubuntu 实际上是基于 Debian 的衍生版,所以使用方法和命令也相差无几。
我们使用 Windows 系统多年,熟悉和习惯了用户界面交互,对于命令行操作就显得陌生和无措。一键脚本的存在,就是打破这种担忧,把所有命令按照顺序封装好,并判断执行结果是否正确,从而降低初学者对Linux的“恐惧”。
但缺点也是显而易见的,一键脚本对于用户来说,仿佛是一个黑盒子,你只知道执行完这个能达到什么效果,却不知道它在执行的过程中到底都做了什么。几乎所有的一键脚本都做不到轻松定制,它只能提供有限的几个选项让你必须做出选择。
一键脚本的选项是有限的,有时候并不能满足你的需求,正如我为什么选择重复造轮子,亦是如此。而定制脚本这种事,一般企业才这么干。
正是因为一键脚本有着显而易见的优点和缺点,所以在满足了我自己的需求之后,我将其开源了。

再次,说说一键脚本开源有哪些意义?

开源意味着接受监督,一切都以代码说了算。基于 Github 的流行,开源出来的各种一键脚本(当然还有其他各种程序代码),任何人都能看到,满足需求或者指出问题,都变得简单起来。
如果你是开发者,你当然可以 fork 了之后定制自己的性格化需求;如果你是使用者,发现 issue 也能和作者直接联系。
未来是构筑在软件之上的。而在各种软件的使用中,必然有各种一键脚本的一席之地。

最后,总结一下那些年我写过的一键脚本。
(按照时间顺序排名)

1、LAMP一键安装脚本
https://teddysun.com/lamp
https://lamp.sh

简述:经典的建站环境 Linux+Apache+MySQL/MariaDB+PHP 搭建。最开始我只适配了 CentOS 系统,后来才开始适配 Debian 和 Ubuntu。
关于这个脚本,我个人觉得最大的优点就是编译安装的 PHP 模块比较全面,实际上,一开始是为安装 Moodle(开源的在线学习系统)和 Owncloud(开源的网盘系统)而量身定制的。

2、L2TP/IPSec一键安装脚本
https://teddysun.com/448.html

简述:经典的 VPN 搭建。适用于 KVM、Xen 和部分 OpenVZ 虚拟的 VPS。最早写于 2013 年,更新于 2016 年。因为不推荐使用 PPTP 的方式,所以 PPTP 的一键安装脚本就不再列出。

3、Linux性能测试UnixBench一键脚本
https://teddysun.com/245.html

简述:UnixBench 是经典的 Linux 跑分软件。广泛用于测试 Linux 系统 VPS 的性能。

4、Shadowsocks Python版一键安装脚本
https://teddysun.com/342.html

简述:Shadowsocks 的 Python 语言实现的版本。Shadowsocks 始于 2013 年,2014 年开始流行,2015 年开始火爆,然而在 2015 年 8 月,因为你懂的原因该项目不再更新。本脚本写于 2014 年 3 月,迄今依然保持更新。

5、CentOS下shadowsocks-libev一键安装脚本
https://teddysun.com/357.html

简述:Shadowsocks 的 C 语言实现的版本。适用于 CentOS 系统。作者至今仍然在不断更新该版本,当然脚本也在保持更新。

6、Debian下shadowsocks-libev一键安装脚本
https://teddysun.com/358.html

简述:Shadowsocks 的 C 语言实现的版本。适用于 Debian/Ubuntu 系统。保持更新。

7、Shadowsocks-go一键安装脚本
https://teddysun.com/392.html

简述:Shadowsocks 的 Go 语言实现的版本。适用于 CentOS/Debian/Ubuntu 系统。常年更新,和作者同步。

8、一键测试脚本bench.sh
https://teddysun.com/444.html
简述:用于测试 Linux VPS 的下行网速和 IO 速度的测试脚本。跑完这个脚本,能让你对于自己所买的 VPS 有个直观的基于数据的评价。

9、ShadowsocksR一键安装脚本
https://shadowsocks.be/9.html

简述:Shadowsocks 的 Python 语言实现的版本。原作者不再更新后,这个版本的作者基于原来的版本新增了不少功能,可称之为继承和发扬了开源精神的新的 Shadowsocks。目前依然保持更新中。

10、一键备份脚本backup.sh
https://teddysun.com/469.html

简述:一键备份 MySQL/MariaDB/Percona 数据库和文件,目录等;加密备份文件;上传至 Google Drive 或 FTP 服务器。

11、Shadowsocks 一键安装脚本(四合一)
https://teddysun.com/486.html

简述:一键安装 Shadowsocks-Python, ShadowsocksR, Shadowsocks-Go, Shadowsocks-libev 版(四选一)服务端。
各版本的启动脚本及配置文件名不再重合;支持以多次运行来安装多个版本,且各个版本可以共存(注意端口号需设成不同);

12、一键安装最新内核并开启 BBR 脚本
https://teddysun.com/489.html

简述:一键安装最新版系统内核,并开启 TCP BBR 算法(该脚本只适用于非 OpenVZ 虚拟化的 VPS)。

以上所有脚本,皆开源在 Github,围观链接如下:
https://github.com/teddysun

写在最后

本人并非运维程序员,所写的以上脚本仅仅是出于学习和交流的目的,本着开源精神分享出来,疏漏和缺陷在所难免。
还有,我并非 Shadowsocks 项目的作者,对于该软件在使用过程中出现的问题,并非都有能力解决。
如你在使用过程中发现问题想与我交流,请务必学学提问的技巧,将问题描述清楚,包括且不限于:系统版本,现象描述,日志信息等。
知无不言,言无不尽。

对了,更多域名新后缀,参考链接如下:
https://www.iana.org/domains/root/db

转载请注明:秋水逸冰 » 一键脚本那些事儿

发表评论
取消评论
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
表情

已有评论 (46)

  1. 作为非程序员,虽然我对linux也有很多兴趣,也有很多需求推动我接触linux,但我接触起来就特别费劲………
    ntgeralt1个月前 (2016-12-24)回复
  2. 博主你好,感谢你的SS脚本,最近看到https://shadowsocks.be/10.html这个,安装过程报error reading information on service haproxy: No such file or directory Note: Forwarding request to 'systemctl enable haproxy.service'. Created symlink from /etc/systemd/system/multi-user.target.wants/haproxy.service to /usr/lib/systemd/system/haproxy.service. ./haproxy.sh: line 197: /etc/init.d/haproxy: No such file or directory haproxy start failure... ./haproxy.sh: line 211: /etc/init.d/haproxy: No such file or directory 这些错误 最后也/etc/init.d/ 管理 请问怎么办呢?(实装应该是阿里青岛VPS上 SS在linode上)
    Gemini2个月前 (2016-11-15)回复
    • CentOS 7 下的话,你可以试试通过以下命令来启动,停止。 systemctl start haproxy.service systemctl stop haproxy.service
      秋水逸冰2个月前 (2016-11-17)回复
      • 好吧 我忘记7.0改成这个指令了 感谢博主
        Gemini2个月前 (2016-11-18)回复
  3. 感谢博主精心制作的各种脚本,帮了我很多。对于我们这种只想使用其结果带来的功能,并不想花时间了解具体原理的人,一键脚本是很好的选择。开源又保证了安全性,你是个伟大的人。
    大膜法师2个月前 (2016-11-10)回复
  4. 博主您好,SS android已支持KCPTun协议,能写一个KCPTun的一键脚本吗?
    zannx5个月前 (2016-08-12)回复
    • 这个 kcptun 目前还没有 GUI,其客户端做的还不成熟。 单单就服务端做个一键脚本其实是很容易的。
      秋水逸冰5个月前 (2016-08-12)回复
  5. 一直在用你的跑分和SS脚本,好用
    Andrew5个月前 (2016-08-12)回复
  6. Ubuntu上,lamp.sh安装后,貌似php没有默认连接MySQL/MariaDB? 在php.ini中加上extension=mysql.so,好像还是找不到mysql.so这个驱动文件?菜鸟一个,不好意思,楼主可否指点一下?
    雄大6个月前 (2016-08-08)回复
    • 默认当然是可以连接 MySQL/MariaDB 的。 那么你是如何发现这个问题的呢,比如在安装什么程序的时候?
      秋水逸冰6个月前 (2016-08-08)回复
      • 问题是在phpinfo.php里看不到任何有关MySQL的内容,在Apache上发布php应用也说找不到MySQL的连接,在命令行打php也出现类似报错。现在解决了。貌似这个问题只有选PHP7的时候才有(其他组件都是默认版本),因为PHP7的数据库支持方式和前版本不同。解决方法是在执行lamp.sh之后再执行apt-get install php-mysql就可以了。楼主考虑更新一下脚本?
        雄大6个月前 (2016-08-09)回复
        • 不至于。我自己写的脚本我当然自己也在用。PHP7 下也是完全支持 MySQL 的。 如果可以的话,你可以把当初的安装日志(/root/lamp.log)发到我邮箱,帮你分析一下。
          秋水逸冰6个月前 (2016-08-09)回复
  7. 老王路过,代码菜鸟一个
    老王经销商6个月前 (2016-07-23)回复
  8. 哈哈,感谢秋大
    流浪的流氓7个月前 (2016-07-08)回复
  9. 真的是非常感谢您,如果没有您的这个脚本,我服务器上部署的科学上网的服务不知道什么时候才能真正的用上,一键脚本真的极大的降低了安装和配置的成本
    wangze7个月前 (2016-07-07)回复
  10. 为什么我看github的ss一直在更新?
    弱者7个月前 (2016-06-28)回复
  11. 我们说的openvpn脚本是免流的。现在都传开了,网上流传的都有后门的,斗的可厉害了,而且还是一帮学生。秋大出来教训教训啊
    老二7个月前 (2016-06-24)回复
    • 哈哈。这种 shell 代码一般是不作混淆的,明眼人一看便知,怎么搞后门我倒是很好奇。
      秋水逸冰7个月前 (2016-06-26)回复
      • 他们几个学生搞的可厉害了 相互黑对方的网站。 后门是偷流量 他们关键是他们最多只算个站长。他们应该不会写程序。。感觉很没水平,而且还收费对黑。 大牛都隐藏自己玩,他们都是忽悠普通人赚钱
        老二7个月前 (2016-06-26)回复
        • 求网址。围观一下。
          弱者7个月前 (2016-06-28)回复
      • 如果是看不懂脚本的,最简单的是直接在里面写一行添加用户的都不回被发现的吧
        uroot6个月前 (2016-07-30)回复
        • 代码是开源的,任何人都可以查看代码逻辑。一切阴谋论在代码面前都可以不攻自破。
          秋水逸冰6个月前 (2016-07-30)回复
  12. 秋大有做openvpn脚本的打算吗
    GG7个月前 (2016-06-17)回复
  13. 非常感谢分享,LZ辛苦
    杰迪武士7个月前 (2016-06-17)回复
  14. 支持你的一鍵腳本,不知道幫助了多少人!
    Javen8个月前 (2016-06-11)回复
  15. 我原本都用centmin mod的,升级php7 phpinfo依然有memcache,memcached. 所以PHP应该是支援的?
    CLAMP8个月前 (2016-06-10)回复