{"id":532,"date":"2024-06-12T00:02:09","date_gmt":"2024-06-11T16:02:09","guid":{"rendered":"https:\/\/sharebits.link\/?p=532"},"modified":"2024-06-12T00:02:09","modified_gmt":"2024-06-11T16:02:09","slug":"mjj%e7%89%88%e7%9a%84linux%e5%85%a5%e9%97%a8%e6%95%99%e7%a8%8b","status":"publish","type":"post","link":"https:\/\/sharebits.link\/?p=532","title":{"rendered":"mjj\u7248\u7684linux\u5165\u95e8\u6559\u7a0b"},"content":{"rendered":"<div class=\"lake-content\">\n<p id=\"ub20f8e53\" class=\"ne-p\"><strong><em><span class=\"ne-text\">2024\u5e746\u6708\uff0c\u7b2c\u4e00\u6b21\u4fee\u8ba2<\/span><\/em><\/strong><\/p>\n<p id=\"u7590c920\" class=\"ne-p\"><span class=\"ne-text\">\u672c\u6587\u7684\u9996\u8981\u76ee\u7684\u662f\u7ed9\u4e88Linux\u521d\u5b66\u8005\u4e00\u4e2a\u7b80\u5355\u3001\u6613\u5b66\u7684\u6559\u7a0b\uff0c\u4ee5\u4fbf\u5728\u770b\u5b8c\u672c\u6587\u540e\u5bf9Linux\u7cfb\u7edf\u6709\u4e00\u4e2a\u57fa\u7840\u7684\u8ba4\u77e5\uff08\u800c\u975e\u7cfb\u7edf\u7ea7\u7684\u6df1\u5165\uff09\uff0c\u53ef\u4ee5\u5bf9\u5e38\u89c1\u7684\u8f6f\u4ef6\u548c\u529f\u80fd\u8fdb\u884c\u914d\u7f6e\uff0c\u751a\u81f3\u53ef\u4ee5\u81ea\u5df1\u5199\u4e00\u5199<\/span><span class=\"ne-text\">shell<\/span><span class=\"ne-text\">\u811a\u672c\u3002<\/span><\/p>\n<p id=\"u7857efd4\" class=\"ne-p\"><span class=\"ne-text\">\u4e8e2024\u5e746\u6708\u66f4\u65b0\uff0c\u91c7\u7528\u7684\u7cfb\u7edf\u4e3a<\/span><span class=\"ne-text\">Debian GNU\/Linux 12 (bookworm)<\/span><span class=\"ne-text\">\u3002<\/span><\/p>\n<p id=\"uc49a021f\" class=\"ne-p\"><span class=\"ne-text\">\u672c\u6559\u7a0b\u5199\u4e8e2021\u5e74\u4e0b\u534a\u5e74\uff0c\u91c7\u7528\u7684\u7cfb\u7edf\u4e3a<\/span><span class=\"ne-text\">Debian GNU\/Linux 11 (bullseye)<\/span><span class=\"ne-text\">\u3002<\/span><\/p>\n<h2 id=\"Dbk2h\"><span class=\"ne-text\">0 \u524d\u8a00\u5410\u69fdCentOS\u548cUbuntu<\/span><\/h2>\n<p id=\"u5a04cee4\" class=\"ne-p\"><strong><span class=\"ne-text\">\u89e3\u91ca\u4f7f\u7528Debian\u800c\u4e0d\u662fCentOS\u7684\u539f\u56e0<\/span><\/strong><\/p>\n<p id=\"ub58d3a79\" class=\"ne-p\"><span class=\"ne-text\">\u56fd\u5185\u9996\u6279\u63a5\u89e6Linux\u7cfb\u7edf\u7684\u4eba\u4e3b\u8981\u96c6\u4e2d\u5728\u79d1\u7814\u9662\u6821\uff0c\u5927\u591a\u6570\u662f\u5ef6\u7eed\u4e86Unix-like\u7684\u80cc\u666f\uff0c\u5728\u5343\u79a7\u5e74\u524d\u540e\u624d\u6709\u4e86\u771f\u6b63\u610f\u4e49\u4e0a\u7684Linux\u4f7f\u7528\u8005\uff1a\u7eafLinux\u5e73\u53f0\u5f00\u53d1\u3001\u8fd0\u884c\u670d\u52a1\u548c\u5e94\u7528\uff0c\u4ed6\u4eec\u6216\u76f4\u63a5\u6216\u95f4\u63a5\u5730\u63a8\u5e7f\u4e86Linux\u7cfb\u7edf\u3002\u7ea2\u5e3d\uff08Red Hat, Inc.\uff09\u57281994\u5e74\u5c31\u5f00\u59cb\u53d1\u5e03\u4e86\u540c\u540d\u7684\u64cd\u4f5c\u7cfb\u7edf\uff1aRed Hat Linux\uff08\u540e\u6539\u7ec4\u4e3aRed Hat Enterprise Linux\uff0c\u7f29\u5199\u4e3aRHEL\uff09\u3002\u5f97\u76ca\u4e8e\u7ea2\u5e3d\u4f18\u79c0\u7684\u56e2\u961f\u548c\u5546\u4e1a\u652f\u6301\uff0cRHEL\u8fd9\u4e00\u53d1\u884c\u7248\u8fc5\u901f\u5360\u9886\u4e86\u56fd\u5185\u5e02\u573a\u3002\u5f7c\u65f6\u7684\u56fd\u5185\u8ba1\u7b97\u673a\u5e02\u573a\u8fdc\u4e0d\u5982\u4eca\u65e5\u7e41\u8363\uff0c\u5728\u53e3\u53e3\u76f8\u4f20\u548c\u7ea2\u5e3d\u7684\u63a8\u5e7f\u4e2d\uff0cRHEL\u6210\u4e3a\u4e86Linux\u5165\u95e8\u7684\u4e3b\u6d41\u9009\u9879\uff0c\u5373\u4f7f\u540e\u6765\u53f7\u79f0\u7528\u6237\u53cb\u597d\u7684Ubuntu\u51fa\u73b0\u4e86\uff0c\u7edd\u5927\u591a\u6570\u5c1d\u9c9c\u7684\u4eba\u4f9d\u7136\u80fd\u770b\u5230\u4f17\u591a\u7f51\u7ad9\u91cc\u9762\u53ea\u63d0\u4f9bRHEL\u7248\u672c\u7684\u6559\u7a0b\u3002<\/span><\/p>\n<p id=\"u86e0509f\" class=\"ne-p\"><span class=\"ne-text\">CentOS\u662f\u6839\u636eRHEL\u7684\u6e90\u7801\u91cd\u65b0\u7f16\u8bd1\u7684\uff0c\u7b49\u4e8e\u6362\u5546\u6807\u7248\u672c\u7684RHEL\uff0c\u8f6f\u4ef6\u5c42\u9762\u4e0a\uff0c\u4e24\u8005\u65e0\u672c\u8d28\u533a\u522b\u3002\u4f46CentOS\u662f\u53cd\u4eba\u7c7b\u7684\uff0c\u81f3\u5c11\u662f\u53cd\u5165\u95e8\u7528\u6237\u7684\u3002\u4f7f\u7528RHEL\u7684\u57fa\u672c\u4e3a\u5546\u4e1a\u7528\u6237\uff0c\u53ef\u4ee5\u4ed8\u8d39\u83b7\u5f97\u7ea2\u5e3d\u7684\u6280\u672f\u652f\u6301\uff0c\u6216\u8005\u5e72\u8106\u6709\u4e00\u4e2a\u81ea\u5df1\u7684\u7ef4\u62a4\u56e2\u961f\uff1b\u800cCentOS\u4f5c\u4e3a\u4e00\u4e2a\u793e\u533a\u81ea\u53d1\u5f62\u6210\u7684\u64cd\u4f5c\u7cfb\u7edf\uff0c\u62e5\u6709\u9648\u65e7\u7684\u8f6f\u4ef6\u6e90\/\u5305\uff0c\u7e41\u7410\u7684\u914d\u7f6e\uff0c\u548c\u5bf9\u4e2a\u4eba\u7528\u6237\u800c\u8a00\u6839\u672c\u6ca1\u6709\u5fc5\u8981\u7684SElinux\u7b49\u3002\u4e3e\u4e2a\u4f8b\u5b50\uff0c\u5f88\u591a\u5165\u95e8\u8005\u8ddf\u968f\u6559\u7a0b\uff0c\u5728<\/span><span class=\"ne-text\">\/etc\/ssh\/sshd_config<\/span><span class=\"ne-text\">\u4e2d\u4fee\u6539SSH\u7aef\u53e3\u65f6\uff0c\u660e\u660e\u6240\u6709\u7684\u64cd\u4f5c\u90fd\u6ca1\u6709\u95ee\u9898\uff0c\u4f46\u662f\u6b7b\u6d3b\u65e0\u6cd5\u751f\u6548\uff0c\u6700\u7ec8\u53d1\u73b0\u662f\u6ca1\u6709\u5728SElinux\u91cc\u9762\u4fee\u6539\u653e\u884c\u89c4\u5219\u3002\u5982\u679c\u4f60\u60f3\u5b89\u88c5\u4e2a\u8f6f\u4ef6\uff0c\u4f60\u5c31\u5f97\u8003\u8651\u662f\u4ece\u843d\u540e\u4e3b\u6d41\u7248\u672c\u597d\u51e0\u4ee3\u7684\u8f6f\u4ef6\u6e90\/\u5305\u91cc\u9762\u5b89\u88c5\uff0c\u8fd8\u662f\u81ea\u5df1\u4e0b\u8f7d\u6e90\u7801\u8fdb\u884c\u7f16\u8bd1\u4ee5\u83b7\u53d6\u4e3b\u6d41\u7684\u4f7f\u7528\u4f53\u9a8c\u3002\u5bf9\u4e8e\u5165\u95e8\u8005\u800c\u8a00\uff0cCentOS\u7684\u5b89\u5168\u6027\u548c\u7a33\u5b9a\u6027\u662f\u4e2a\u865a\u5047\u7684\u6982\u5ff5\uff0c\u6bd5\u7adf\u8ba9\u4e00\u4e2a\u521a\u63a5\u89e6Linux\u7684\u4eba\u53bb\u81ea\u5df1\u7f16\u8bd1\u6e90\u7801\u5b89\u88c5\uff0c\u65e0\u5f02\u4e8e\u8ba9\u5c0f\u5b66\u751f\u4e0a\u6218\u573a\uff0c\u8f93\u4e86\u5c31\u8bf4\u662f\u5c0f\u5b66\u751f\u6218\u6597\u529b\u592a\u5f31\u3002\u6b64\u5916\uff0c\u56e0\u4e3aRedHat\u6536\u7f16CentOS\uff0c\u4ee5\u540e\u518d\u4e5f\u4e0d\u4f1a\u89c1\u5230CentOS 9\u4e4b\u7c7b\u7684\u7248\u672c\u4e86\uff0c\u800c\u662fCentOS Stream\uff0c\u8fd9\u662fRHEL\u7684\u6d4b\u8bd5\u7248\u3002\u539f\u5148\u7684CentOS 8\u4e5f\u88ab\u5ba3\u5e03\u63d0\u524d\u7ec8\u6b62\u652f\u6301\uff0cCentOS 7\u4e5f\u5c06\u5728\u672c\u6708\uff082024\u5e746\u6708\uff09\u7ec8\u6b62\u652f\u6301\uff0c\u8fd9\u610f\u5473\u7740CentOS\u7684\u672a\u6765\u662f\u4e0d\u786e\u5b9a\u7684\uff0c\u4e0d\u518d\u662f\u4e00\u4e2a\u7a33\u5b9a\u7684\u53d1\u884c\u7248\u3002<\/span><\/p>\n<p id=\"uf54b3c84\" class=\"ne-p\"><strong><span class=\"ne-text\">\u4f9d\u65e7\u4e0d\u63a8\u8350RHEL\u7684\u5176\u4ed6\u884d\u751f\u7248\uff0c\u5982AlmaLinux\u548cRocky Linux<\/span><\/strong><\/p>\n<p id=\"ud9d13c32\" class=\"ne-p\"><span class=\"ne-text\">CentOS\u7684\u7ec8\u6b62\u652f\u6301\uff0c\u8ba9\u5f88\u591a\u4eba\u5f00\u59cb\u5bfb\u627e\u66ff\u4ee3\u54c1\uff0cAlmaLinux\u548cRocky Linux\u662f\u4e24\u4e2a\u6700\u53d7\u5173\u6ce8\u7684\u66ff\u4ee3\u54c1\u3002AlmaLinux\u662f\u7531CloudLinux\u516c\u53f8\u63a8\u51fa\u7684\uff0cRocky Linux\u662f\u7531CentOS\u7684\u521b\u59cb\u4eba\u63a8\u51fa\u7684\u3002\u4f46\u662f\uff0c\u8fd9\u4e24\u4e2a\u53d1\u884c\u7248\u7684\u76ee\u7684\u90fd\u662f\u4e3a\u4e86\u586b\u8865CentOS\u6d88\u5931\u540e\u7559\u4e0b\u7684\u7a7a\u767d\uff0c\u4ee5\u83b7\u53d6\u7a33\u5b9a\u7684RHEL\u4f53\u9a8c\u3002AlmaLinux\u548cRocky Linux\u90fd\u662f\u57fa\u4e8eRHEL\u7684\u6e90\u4ee3\u7801\u6784\u5efa\u7684\uff0c\u56e0\u6b64\u5b83\u4eec\u7684\u8f6f\u4ef6\u5305\u548c\u914d\u7f6e\u6587\u4ef6\u4e0eRHEL\u57fa\u672c\u76f8\u540c\u3002\u8fd9\u610f\u5473\u7740\u5b83\u4eec\u7ee7\u627f\u4e86CentOS\u7684\u6240\u6709\u95ee\u9898\uff0c\u5305\u62ec\u9648\u65e7\u7684\u8f6f\u4ef6\u5305\u548c\u7e41\u7410\u7684\u914d\u7f6e\u3002\u56e0\u6b64\uff0c\u6211\u4ecd\u7136\u4e0d\u63a8\u8350\u4f7f\u7528\u8fd9\u4e24\u4e2a\u53d1\u884c\u7248\u3002<\/span><\/p>\n<p id=\"u607ab6e0\" class=\"ne-p\"><strong><span class=\"ne-text\">\u4e3a\u4ec0\u4e48\u4e0d\u63a8\u8350Ubuntu<\/span><\/strong><\/p>\n<p id=\"u23c2a763\" class=\"ne-p\"><span class=\"ne-text\">Ubuntu\u662fCanonical\u516c\u53f8\u57fa\u4e8eDebain\u53d1\u884c\u7684\uff0c\u4ee5\u684c\u9762\u5e94\u7528\u4e3a\u4e3b\u7684Linux\u53d1\u884c\u7248\u3002\u901a\u8fc7\u5411\u4f01\u4e1a\u63d0\u4f9b\u670d\u52a1\u4f5c\u4e3a\u76c8\u5229\u65b9\u5f0f\uff0c\u9762\u5411\u4e2a\u4eba\u5b8c\u5168\u514d\u8d39\u3002\u4f5c\u4e3a\u4e00\u4e2a\u5546\u4e1a\u516c\u53f8\uff0c\u76c8\u5229\u59cb\u7ec8\u662f\u7b2c\u4e00\u76ee\u7684\u3002\u56e0\u6b64\uff0cCanonical\u5411Ubuntu\u4e2d\u5f15\u5165\u4e86\u4e00\u5806\u79c1\u8d27\uff0c\u5982Snap\u548c\u7ec8\u7aef\u4e2d\u6253\u5e7f\u544a\u7b49\u3002Snap\u662fCanonical\u516c\u53f8\u63a8\u51fa\u7684\u4e00\u79cd\u5e94\u7528\u6253\u5305\u683c\u5f0f\uff0c\u4ee5\u89e3\u51b3\u7f20\u7ed5Linux\u7cfb\u7edf\u5df2\u4e45\u7684\u4f9d\u8d56\u95ee\u9898\uff0c\u540c\u7c7b\u578b\u7684\u8fd8\u662f\u6709Red Hat\u63a8\u51fa\u7684flatpak\uff0c\u548cSimon Peter\u4e2a\u4eba\u63a8\u51fa\u7684AppImage\u3002\u4f46\u662fsnap\u7684\u6027\u80fd\u548c\u7a33\u5b9a\u6027\u4e00\u76f4\u4e3a\u4eba\u8bdf\u75c5\uff0c\u800c\u5f88\u591a\u8f6f\u4ef6\u90fd\u662f\u5f3a\u5236\u5b89\u88c5snap\u7248\u672c\uff0c\u6bd4\u5982Firefox\u3002\u6b64\u5916\uff0c\u4e0d\u5f00\u6e90\u4e5f\u4e0d\u652f\u6301\u955c\u50cf\uff0c\u4e0b\u8f7d\u5b89\u88c5\u901f\u5ea6\u6162\uff0c\u5360\u7528\u7a7a\u95f4\u5927\uff0c\u6c61\u67d3<\/span><span class=\"ne-text\">\/dev<\/span><span class=\"ne-text\">\uff0c\u6bd4\u5982\u4f7f\u7528<\/span><span class=\"ne-text\">lsblk<\/span><span class=\"ne-text\">\u547d\u4ee4\u67e5\u770b\u7cfb\u7edf\u7684\u78c1\u76d8\u4f7f\u7528\u60c5\u51b5\uff0c\u4f1a\u53d1\u73b0\u6302\u5728\u4e86\u4e00\u4e9b\u5217\u7684<\/span><span class=\"ne-text\">loop<\/span><span class=\"ne-text\">\uff0c\u5982\u4e0b\u6240\u793a\uff1a<\/span><\/p>\n<pre id=\"eCf4U\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>loop0    7:0    0  14.5M  1 loop \/snap\/gnome-logs\r\nloop1    7:1    0   2.3M  1 loop \/snap\/gnome-calculator\r\nloop2    7:2    0  86.6M  1 loop \/snap\/core\r\nloop3    7:3    0  86.6M  1 loop \/snap\/core\r\nloop4    7:4    0   3.3M  1 loop \/snap\/gnome-system-monitor \r\nloop5    7:5    0    13M  1 loop \/snap\/gnome-characters<\/code><\/pre>\n<p id=\"uc78261f0\" class=\"ne-p\"><strong><span class=\"ne-text\">\u5f3a\u70c8\u63a8\u8350Deabin<\/span><\/strong><\/p>\n<p id=\"u33fc1474\" class=\"ne-p\"><span class=\"ne-text\">\u6240\u4ee5\u672c\u6587\u4ee5Debian GNU\/Linux\uff08\u540e\u7eed\u7b80\u79f0\u4e3aDebian\uff09\u6765\u6f14\u793a\uff0c\u4e5f\u6709\u7740\u63a8\u5e7fDebian\u7684\u610f\u601d\u5728\u91cc\u9762\uff0c\u6bd5\u7adf\u76f8\u6bd4\u4e8eUbuntu\u5f80\u7cfb\u7edf\u91cc\u9762\u585e\u5305\u62ecsnap\u5728\u5185\u7684\u4e00\u7cfb\u5217\u79c1\u8d27\u800c\u8a00\uff0cDebain\u59cb\u7ec8\u9075\u5faa\u7740\u4e00\u4e2a\u7eaf\u51c0\u7684Linux\u7684\u8981\u6c42\u3002\u800c\u5176\u4ed6\u4e00\u4e9b\u53d1\u884c\u7248\uff0c\u8981\u4e48\u662f\u4e13\u7528\u6027\u592a\u5f3a\uff08\u5982SUSE\uff09\uff0c\u8981\u4e48\u662f\u5165\u95e8\u8005\u4e0d\u53cb\u597d\uff08\u5982 Arch Linux\uff09\uff0c\u6743\u8861\u4e4b\u540e\uff0c\u9009\u62e9\u4e86\u5199\u672c\u6587\u65f6\uff0c\u6700\u65b0\u7684Debian\u7cfb\u7edf\uff0c\u5373Debian GNU\/Linux 12 (bookworm)\u3002<\/span><\/p>\n<h2 id=\"GogSv\"><span class=\"ne-text\">1 \u73af\u5883\u642d\u5efa<\/span><\/h2>\n<h3 id=\"D0cFy\"><span class=\"ne-text\">1.1 \u7cfb\u7edf\u9009\u62e9\u4e0e\u5b89\u88c5<\/span><\/h3>\n<p id=\"u3e5a18ac\" class=\"ne-p\"><span class=\"ne-text\">Debian\u7684\u5b89\u88c5\u5305\u6709\u4e00\u7cfb\u5217\u7684\u524d\u7f00\u6216\u8005\u540e\u7f00\uff0c\u4f8b\u5982\u5728\u9ed8\u8ba4\u7684\u4e0b\u8f7d\u5730\u5740<\/span><span class=\"ne-text\">https:\/\/www.debian.org\/download<\/span><span class=\"ne-text\">\u4e2d\u7684\u662f<\/span><span class=\"ne-text\">debian-12.5.0-amd64-netinst.iso<\/span><span class=\"ne-text\">\u3002\u5176\u4e2d\uff1a<\/span><\/p>\n<ul class=\"ne-ul\">\n<li id=\"ud3fbb697\" data-lake-index-type=\"0\"><span class=\"ne-text\">12\u4ee3\u8868\u7248\u672c\u662f12\uff0c5\u662f\u5927\u66f4\u65b0\u6b21\u6570\uff0c\u4ee3\u53f7\u662f<\/span><span class=\"ne-text\">bookworm<\/span><span class=\"ne-text\">\uff0c\u5404\u7248\u672c\u4ee3\u53f7\u90fd\u6765\u6e90\u4e8e\u7535\u5f71\u300a\u73a9\u5177\u603b\u52a8\u5458\u300b\u4e2d\u7684\u89d2\u8272\u540d\u79f0\u3002\u53ea\u8981\u7248\u672c\u53f7\u4e00\u81f4\uff0c\u4f7f\u7528\u548c\u4f53\u9a8c\u5c31\u662f\u4e00\u81f4\u7684\u3002<\/span><\/li>\n<li id=\"u7f2c1374\" data-lake-index-type=\"0\"><span class=\"ne-text\">amd64\u662f\u6307\u7cfb\u7edf\u4e3a64\u4f4d\u7684\uff0ci386\u6216\u8005x86\u662f32\u4f4d\u7684\uff0camd64\u6216\u8005x86-64\u662f64\u4f4d\u7684\uff0c32\u4f4d\u7cfb\u7edf\u5df2\u7ecf\u88ab\u9010\u6b65\u5f03\u7528\uff0c\u76ee\u524d\u4ec5\u5728\u5c11\u6570\u7279\u5b9a\u573a\u666f\u4e2d\u4f7f\u7528\u3002<\/span><\/li>\n<li id=\"ubb4f3679\" data-lake-index-type=\"0\"><span class=\"ne-text\">netinst\u662f\u7f51\u7edc\u5b89\u88c5\u7248\u672c\uff0c\u53ea\u662f\u4e2a\u5b89\u88c5\u5668\uff0c\u5b89\u88c5\u8fc7\u7a0b\u9700\u8981\u8054\u7f51\u3002\u56e0\u4e3a\u7cfb\u7edf\u548c\u8f6f\u4ef6\u6e90\/\u5305\u8fc7\u4e8e\u5e9e\u5927\uff0c\u5b8c\u6574\u7248\u672c\u4f7f\u7528\u6807\u51c6DVD\u5149\u76d8\u5bb9\u91cf\uff084.7GB\uff09\u8fdb\u884c\u5206\u76d8\u50a8\u5b58\u3002\u56e0\u6b64DVD\u540e\u7f001\uff08<\/span><span class=\"ne-text\">DVD-1<\/span><span class=\"ne-text\">\uff09\uff0c\u5373\u7b2c\u4e00\u4efd\u5305\u542b\u5b8c\u6574\u7684\u7cfb\u7edf\uff0c\u5982\uff1a<\/span><span class=\"ne-text\">debian-12.5.0-amd64-DVD-1.iso<\/span><span class=\"ne-text\">\u3002\u5269\u4f59\u6570\u5b57\u90fd\u662f\u8f6f\u4ef6\u6e90\/\u5305\uff0c\u9002\u7528\u4e8e\u65e0\u4e92\u8054\u7f51\u573a\u666f\u4e2d\u3002<\/span><\/li>\n<li id=\"ucef444ed\" data-lake-index-type=\"0\"><span class=\"ne-text\">Non-free Firmware\uff0c\u975e\u81ea\u7531\u56fa\u4ef6\u3002\u5f88\u591a\u7535\u8111\u4f7f\u7528\u4e86\u53ea\u63d0\u4f9b\u975e\u5f00\u6e90\u56fa\u4ef6\u7684\u786c\u4ef6\uff0c\u6bd4\u5982intel\u548cRealtek\u7b49\u516c\u53f8\u7684\u90e8\u5206WiFi\u7f51\u5361\u3002\u6b64\u524d\u7248\u672c\u7684Debain\u7cfb\u7edf\u9ed8\u8ba4\u4e0d\u63d0\u4f9b\u975e\u5f00\u6e90\u56fa\u4ef6\uff0c\u4f46\u81ea\u4eceDebain 12\u5f00\u59cb\uff0c\u9ed8\u8ba4\u81ea\u52a8\u4e0b\u8f7d\u548c\u5b89\u88c5\u7b2c\u4e09\u65b9\u975e\u5f00\u6e90\u9a71\u52a8\u7684\uff0c\u518d\u4e5f\u4e0d\u9700\u8981\u4f7f\u7528\u5e26\u6709\u975e\u5f00\u6e90\u56fa\u4ef6\u524d\u7f00\u7684\u5b89\u88c5\u5305\u4e86\uff0c\u5982<\/span><span class=\"ne-text\">firmware-11.1.0-amd64-DVD-1.iso<\/span><span class=\"ne-text\">\u3002<\/span><\/li>\n<\/ul>\n<p id=\"u7d2270e8\" class=\"ne-p\"><span class=\"ne-text\">VPS\u5168\u79f0\u4e3avirtual private server\uff08\u865a\u62df\u4e13\u7528\u670d\u52a1\u5668\uff09\uff0c\u5982\u679c\u9700\u8981\u5b89\u88c5\u7eaf\u51c0\u7248\u7684Debian 11\u7cfb\u7edf\uff0c\u63a8\u8350\u4f7f\u7528vicer\u7684Linux\u4e00\u952e\u91cd\u88c5\u811a\u672c\uff08\u5982\u4e0b\uff09\uff1a<\/span><\/p>\n<p id=\"u4956a904\" class=\"ne-p\"><span class=\"ne-text\">bash &lt;(wget &#8211;no-check-certificate -qO- &#8216;https:\/\/raw.githubusercontent.com\/MoeClub\/Note\/master\/InstallNET.sh&#8217;) -d 11 -v 64 -p &#8220;\u81ea\u5b9a\u4e49root\u5bc6\u7801&#8221; -port &#8220;\u81ea\u5b9a\u4e49ssh\u7aef\u53e3&#8221;<\/span><\/p>\n<h3 id=\"jekEz\"><span class=\"ne-text\">1.2 \u5e38\u7528\u7684\u547d\u4ee4<\/span><\/h3>\n<p id=\"uc88584b8\" class=\"ne-p\"><span class=\"ne-text\">cat<\/span> <span class=\"ne-text\">\u7528\u4e8e\u67e5\u770b\u6587\u672c\u6587\u4ef6\u7684\u5185\u5bb9\uff0c\u5982<\/span><span class=\"ne-text\">cat \/etc\/os-release<\/span> <span class=\"ne-text\">\u5c06\u663e\u793a\u7cfb\u7edf\u4fe1\u606f\uff0c\u5982\u4e0b\uff1a<\/span><\/p>\n<pre id=\"N5Sdo\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>PRETTY_NAME=\"Debian GNU\/Linux 11 (bullseye)\"\r\nNAME=\"Debian GNU\/Linux\"\r\nVERSION_ID=\"11\"\r\nVERSION=\"11 (bullseye)\"\r\nVERSION_CODENAME=bullseye\r\nID=debian\r\nHOME_URL=\"https:\/\/www.debian.org\/\"\r\nSUPPORT_URL=\"https:\/\/www.debian.org\/support\"\r\nBUG_REPORT_URL=\"https:\/\/bugs.debian.org\/\"<\/code><\/pre>\n<p id=\"ue38123cf\" class=\"ne-p\"><span class=\"ne-text\">touch<\/span> <span class=\"ne-text\">\u65b0\u5efa\u6587\u672c\u6587\u4ef6\uff0c\u5982<\/span><span class=\"ne-text\">touch \/home\/hello.py<\/span> <span class=\"ne-text\">\u5c06\u5728<\/span><span class=\"ne-text\">home<\/span> <span class=\"ne-text\">\u6587\u4ef6\u5939\u4e0b\u65b0\u5efa\u4e00\u4e2aPython\u6587\u4ef6\u3002<\/span><\/p>\n<p id=\"u3935555e\" class=\"ne-p\"><span class=\"ne-text\">ls<\/span> <span class=\"ne-text\">\u5217\u51fa\u6240\u6709\u6587\u4ef6\uff0c\u4f46\u9ed8\u8ba4\u53ea\u662f\u663e\u793a\u51fa\u6700\u57fa\u7840\u7684\u6587\u4ef6\u548c\u6587\u4ef6\u5939\uff0c\u5982\u679c\u9700\u8981\u66f4\u8be6\u7ec6\u7684\u4fe1\u606f\uff0c\u5219\u4f7f\u7528<\/span><span class=\"ne-text\">ls -la<\/span><span class=\"ne-text\">\uff0c\u8fd9\u5c06\u5217\u51fa\u5305\u62ec\u9690\u85cf\u6587\u4ef6\u5728\u5185\u7684\u6240\u6709\u6587\u4ef6\u548c\u6587\u4ef6\u5939\uff0c\u5e76\u4e14\u7ed9\u51fa\u5bf9\u5e94\u7684\u6743\u9650\u3001\u5927\u5c0f\u548c\u65e5\u671f\u7b49\u4fe1\u606f\u3002<\/span><\/p>\n<p id=\"ubd2b8834\" class=\"ne-p\"><span class=\"ne-text\">cd<\/span> <span class=\"ne-text\">\u8fdb\u5165\u6307\u5b9a\u6587\u4ef6\u5939\uff0c\u5982<\/span><span class=\"ne-text\">cd \/home<\/span> <span class=\"ne-text\">\u5c06\u8fdb\u5165<\/span><span class=\"ne-text\">home<\/span><span class=\"ne-text\">\u76ee\u5f55\u3002\u8fd4\u56de\u4e0a\u5c42\u76ee\u5f55\u7684\u547d\u4ee4\u662f<\/span><span class=\"ne-text\">cd ..<\/span><span class=\"ne-text\">\uff0c\u8fd4\u56de\u521a\u624d\u64cd\u4f5c\u7684\u76ee\u5f55\u7684\u547d\u4ee4\u662f<\/span><span class=\"ne-text\">cd &#8211;<\/span><span class=\"ne-text\">\u3002<\/span><\/p>\n<p id=\"ua0fd32f0\" class=\"ne-p\"><span class=\"ne-text\">mkdir<\/span> <span class=\"ne-text\">\u65b0\u5efa\u6587\u4ef6\u5939\uff0c\u5982<\/span><span class=\"ne-text\">mkdir \/home\/Python<\/span> <span class=\"ne-text\">\u5c06\u5728<\/span><span class=\"ne-text\">home<\/span> <span class=\"ne-text\">\u6587\u4ef6\u5939\u4e0b\u65b0\u5efa\u4e00\u4e2a<\/span><span class=\"ne-text\">Python<\/span> <span class=\"ne-text\">\u6587\u4ef6\u5939\u3002<\/span><\/p>\n<p id=\"u5a087ed3\" class=\"ne-p\"><span class=\"ne-text\">mv<\/span> <span class=\"ne-text\">\u79fb\u52a8\u6587\u4ef6\u548c\u6587\u4ef6\u5939\uff0c\u4e5f\u53ef\u4ee5\u7528\u6765\u4fee\u6539\u540d\u79f0\uff0c\u5982<\/span><span class=\"ne-text\">mv \/home\/hello.py \/home\/helloworld.py<\/span> <span class=\"ne-text\">\u5c06\u4e0a\u6587\u7684<\/span><span class=\"ne-text\">hello.py<\/span><span class=\"ne-text\">\u91cd\u547d\u540d\u4e3a<\/span><span class=\"ne-text\">helloworld.py<\/span><span class=\"ne-text\">\uff0c<\/span><span class=\"ne-text\">mv \/home\/helloworld.py \/home\/Python\/helloworld.py<\/span> <span class=\"ne-text\">\u5c06<\/span><span class=\"ne-text\">helloworld.py<\/span> <span class=\"ne-text\">\u7531<\/span><span class=\"ne-text\">home<\/span><span class=\"ne-text\">\u6587\u4ef6\u5939\u79fb\u52a8\u5230\u4e86\u6b21\u7ea7\u7684<\/span><span class=\"ne-text\">Python<\/span><span class=\"ne-text\">\u6587\u4ef6\u5939\u3002<\/span><\/p>\n<p id=\"u27b35509\" class=\"ne-p\"><span class=\"ne-text\">cp<\/span> <span class=\"ne-text\">\u590d\u5236\u6587\u4ef6\uff0c<\/span><span class=\"ne-text\">cp \/home\/Python\/hellowrold.py \/home\/Python\/HelloWorld.py<\/span> <span class=\"ne-text\">\u5c06<\/span><span class=\"ne-text\">helloworld.py<\/span><span class=\"ne-text\">\u590d\u5236\u4e3a<\/span><span class=\"ne-text\">HelloWolrd.py<\/span><span class=\"ne-text\">\u3002\u6ce8\u610f\uff1aLinux\u7cfb\u7edf\u4e25\u683c\u533a\u5206\u5927\u5c0f\u5199\uff0c<\/span><span class=\"ne-text\">helloworld.py<\/span><span class=\"ne-text\">\u548c<\/span><span class=\"ne-text\">HelloWolrd.py<\/span><span class=\"ne-text\">\u662f\u4e24\u4e2a\u6587\u4ef6\u3002\u5982\u679c\u60f3\u590d\u5236\u6574\u4e2a\u6587\u4ef6\u5939\uff0c\u5219\u9700\u8981\u5e26<\/span><span class=\"ne-text\">r<\/span><span class=\"ne-text\">\uff0c\u5373<\/span><span class=\"ne-text\">cp -r<\/span><span class=\"ne-text\">\uff0c\u4f46\u6b64\u547d\u4ee4\u65e0\u6cd5\u590d\u5236\u9690\u85cf\u6587\u4ef6\u5939\uff0c\u9700\u8981\u4f7f\u7528<\/span><span class=\"ne-text\">cp -r pathA\/. pathB<\/span> <span class=\"ne-text\">\u6ce8\u610f\u8fd9\u4e2a\u70b9<\/span><span class=\"ne-text\">.<\/span><span class=\"ne-text\">\u662f\u7075\u9b42\u3002<\/span><\/p>\n<p id=\"uce7d0941\" class=\"ne-p\"><span class=\"ne-text\">rm<\/span> <span class=\"ne-text\">\u5220\u9664\uff0c\u5373\u6c5f\u6e56\u4f20\u8bf4\u4e2d<\/span><span class=\"ne-text\">rm -rf<\/span> <span class=\"ne-text\">\uff0c<\/span><span class=\"ne-text\">r<\/span><span class=\"ne-text\">\u4e3a\u9012\u5f52\uff0c\u53ef\u4ee5\u5220\u9664\u6587\u4ef6\u5939\u4e2d\u7684\u6587\u4ef6\uff0c<\/span><span class=\"ne-text\">f<\/span><span class=\"ne-text\">\u4e3a\u5f3a\u5236\u5220\u9664\u3002<\/span><span class=\"ne-text\">rm \/home\/Python\/helloworld.py<\/span> <span class=\"ne-text\">\u53ef\u4ee5\u5220\u9664\u521a\u624d\u7684<\/span><span class=\"ne-text\">helloworld.py<\/span> <span class=\"ne-text\">\u6587\u4ef6\uff0c\u800c\u60f3\u5220\u9664\u5305\u62ec<\/span><span class=\"ne-text\">Python<\/span> <span class=\"ne-text\">\u5728\u5185\u7684\u6240\u6709\u6587\u4ef6\uff0c\u5219\u662f<\/span><span class=\"ne-text\">rm -rf \/home\/Python<\/span> <span class=\"ne-text\">\u3002<\/span><\/p>\n<p id=\"ua8bd24e0\" class=\"ne-p\"><span class=\"ne-text\">du -lh<\/span> <span class=\"ne-text\">\u67e5\u770b\u5f53\u524d\u6587\u4ef6\u5939\u4e0b\uff0c\u5404\u6587\u4ef6\u3001\u6587\u4ef6\u5939\u7684\u5927\u5c0f\uff0c<\/span><span class=\"ne-text\">l<\/span><span class=\"ne-text\">\u662f\u786c\u94fe\u63a5\uff08\u8f6f\u8fde\u63a5\u7c7b\u4f3c\u4e8e\u5feb\u6377\u65b9\u5f0f\uff09\uff0c<\/span><span class=\"ne-text\">h<\/span><span class=\"ne-text\">\u662f\u8ba9\u6587\u4ef6\u81ea\u52a8\u4f7f\u7528K\/M\/G\u663e\u793a\u800c\u4e0d\u662f\u53ea\u6709K\u3002<\/span><\/p>\n<h3 id=\"iPQZ5\"><span class=\"ne-text\">1.3 \u57fa\u7840\u6587\u672c\u7f16\u8f91\u5668nano\u3001vim<\/span><\/h3>\n<p id=\"ue398795c\" class=\"ne-p\"><span class=\"ne-text\">Linux\u7cfb\u7edf\u7684\u4e00\u5927\u4f18\u52bf\uff08\u540c\u65f6\u4e5f\u662f\u52a3\u52bf\uff09\u662f\u9ed8\u8ba4\u4e0d\u9700\u8981GUI\uff0c\u56e0\u6b64\u8282\u7701\u4e86\u5927\u91cf\u7684\u6027\u80fd\u5f00\u652f\uff0c\u65e0GUI\u7248\u672c\u7684Debian 11\u53ef\u4ee5\u5728512M\u751a\u81f3\u66f4\u5c0f\u5185\u5b58\u7684VPS\u4e0a\u6b63\u5e38\u542f\u52a8\u548c\u8fd0\u884c\u3002\u4f46\u7f3a\u5c11GUI\u52a0\u5927\u4e86\u5165\u95e8\u8005\u4fee\u6539\u6587\u4ef6\u7684\u96be\u5ea6\uff0c\u6240\u5e78Debian 11\u81ea\u5e26\u4e86\u7b80\u4fbf\u6613\u7528\u7684nano\u6587\u672c\u7f16\u8f91\u5668\u3002\u4ee5\u4e0b\u4ee5\u4fee\u6539\u7cfb\u7edf\u7684\u66f4\u65b0\u6e90\u4e3a\u4f8b<\/span><\/p>\n<p id=\"u10d15683\" class=\"ne-p\"><span class=\"ne-text\">nano \/etc\/apt\/sources.list #\u6253\u5f00sources.list\u6587\u4ef6\uff0c\u5728Linux\u7cfb\u7edf\u4e2d\uff0c#\u662f\u6ce8\u91ca\u7b26\uff0c\u5176\u540e\u7684\u5185\u5bb9\u4f1a\u88ab\u5ffd\u7565<\/span><\/p>\n<p id=\"u4681c2ff\" class=\"ne-p\"><a id=\"To2Od\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/nano_ui.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/nano_ui.jpg\" \/><\/a><\/p>\n<p id=\"ufe465a05\" class=\"ne-p\"><span class=\"ne-text\">\u5982\u56fe\u6240\u793a\uff0c\u5373\u4e3a<\/span><span class=\"ne-text\">nano<\/span><span class=\"ne-text\">\u6253\u5f00<\/span><span class=\"ne-text\">sources.list<\/span><span class=\"ne-text\">\u540e\u7684\u754c\u9762\uff0c\u6700\u4e0b\u9762\u4e24\u884c\u4e3a\u63d0\u793a\uff0c\u6bd4\u5982<\/span><span class=\"ne-text\">Ctrl+E<\/span><span class=\"ne-text\">\u4e3a\u9000\u51fa\uff0c\u5982\u679c\u6587\u6863\u88ab\u6539\u52a8\u4e86\uff0c\u5219\u4f1a\u51fa\u73b0\u4e0b\u56fe\uff0c\u8be2\u95ee\u662f\u5426\u4fdd\u5b58\u3002\u5982\u679c\u6ca1\u6709\u88ab\u66f4\u6539\uff0c\u5219\u4f1a\u76f4\u63a5\u9000\u51fa\u3002<\/span><\/p>\n<p id=\"u36e56d1f\" class=\"ne-p\"><a id=\"vEHAc\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/nano_ctrl_e.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/nano_ctrl_e.jpg\" \/><\/a><\/p>\n<p id=\"ue3ff329b\" class=\"ne-p\"><span class=\"ne-text\">Y<\/span><span class=\"ne-text\">\u5219\u4fdd\u5b58\uff0c<\/span><span class=\"ne-text\">N<\/span><span class=\"ne-text\">\u5219\u4e0d\u4fdd\u5b58\uff0c<\/span><span class=\"ne-text\">Ctrl+C<\/span><span class=\"ne-text\">\u53d6\u6d88\u64cd\u4f5c\u3002\u6b64\u5904\u8f93\u5165<\/span><span class=\"ne-text\">Y<\/span><span class=\"ne-text\">\uff0c\u5219\u4f1a\u5982\u4e0b\u56fe\uff1a<\/span><\/p>\n<p id=\"u9f7ed439\" class=\"ne-p\"><a id=\"TQdOG\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/nano_yes.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/nano_yes.jpg\" \/><\/a><\/p>\n<p id=\"ufcdfd00a\" class=\"ne-p\"><span class=\"ne-text\">\u6b64\u65f6\u6309\u4e0b<\/span><span class=\"ne-text\">Enter<\/span><span class=\"ne-text\">\u952e\u5c31\u4f1a\u4fdd\u5b58\u4e86\u3002<\/span><\/p>\n<p id=\"u233ae7e7\" class=\"ne-p\"><span class=\"ne-text\">\u8fd9\u91cc\u591a\u63d0\u4e00\u53e5\u5173\u4e8eDebian 11\u7684\u66f4\u65b0\u6e90\u5185\u5bb9\uff0c\u4e00\u822c\u662f\u4ee5\u4e0b6\u884c\u3002<\/span><\/p>\n<pre id=\"SI2Yx\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>deb http:\/\/deb.debian.org\/debian bullseye main contrib non-free\r\ndeb-src http:\/\/deb.debian.org\/debian bullseye main contrib non-free\r\n\r\ndeb http:\/\/deb.debian.org\/debian-security\/ bullseye-security main contrib non-free\r\ndeb-src http:\/\/deb.debian.org\/debian-security\/ bullseye-security main contrib non-free\r\n\r\ndeb http:\/\/deb.debian.org\/debian bullseye-updates main contrib non-free\r\ndeb-src http:\/\/deb.debian.org\/debian bullseye-updates main contrib non-free<\/code><\/pre>\n<p id=\"uf60a06e8\" class=\"ne-p\"><span class=\"ne-text\">deb\u8868\u793a\u4e3a\u5df2\u7ecf\u7f16\u8bd1\u597d\u7684\u5b89\u88c5\u5305\uff0c\u7c7b\u4f3c\u4e8eWindows\u4e0a\u7684MSI\u5b89\u88c5\u5305\uff0cdeb-src\u662f\u6e90\u6587\u4ef6\uff0c\u4e07\u4e00\u6ca1\u6709\u6253\u5305\u597d\uff0c\u63d0\u4f9b\u81ea\u5df1\u672c\u5730\u7f16\u8bd1\u5b89\u88c5\u7684\u673a\u4f1a\u3002\u603b\u5171\u5206\u4e09\u5927\u884c\uff0c\u7b2c\u4e00\u884c\u662f\u7cfb\u7edf\u4e3b\u6587\u4ef6\uff0c\u7b2c\u4e8c\u884c\u662f\u5b89\u5168\u6027\u66f4\u65b0\uff0c\u7b2c\u4e09\u4e2a\u662f\u4e00\u4e9b\u66f4\u65b0\u8865\u5145\uff0c\u63a8\u8350\u4e09\u4e2a\u90fd\u5199\u4e0a\u3002\u5728\u6bcf\u884c\u7684\u672b\u5c3e\u90fd\u6709<\/span><span class=\"ne-text\">main contrib non-free<\/span><span class=\"ne-text\">\u5b57\u6837\uff0c\u5176\u4e2d<\/span><span class=\"ne-text\">main<\/span><span class=\"ne-text\">\u662f\u5b98\u65b9\u7ed9\u7684\u5305\/\u6e90\uff0c\u4e25\u683c\u9075\u5b88\u76f8\u5173\u5f00\u6e90\u534f\u8bae\uff1b<\/span><span class=\"ne-text\">contrib<\/span><span class=\"ne-text\">\u662f\u5305\/\u6e90\u672c\u8eab\u9075\u5b88\u76f8\u5173\u5f00\u6e90\u534f\u8bae\uff0c\u4f46\u662f\u5b83\u4eec\u7684\u4f9d\u8d56\u5219\u4e0d\u662f\uff1b<\/span><span class=\"ne-text\">non-free<\/span><span class=\"ne-text\">\u662f\u79c1\u6709\u7684\u8f6f\u4ef6\uff0c\u6bd4\u5982\u4e0a\u6587\u63d0\u5230\u7684Realtek\u7684WiFi\u9a71\u52a8\u7b49\u3002\u9664\u6b64\u4e4b\u5916\uff0c\u5176\u5b9e\u8fd8\u6709\u4e2a<\/span><span class=\"ne-text\">Backports<\/span><span class=\"ne-text\">\u4f5c\u4e3a\u7b2c\u56db\u5927\u884c\uff0c\u662f\u5c06\u6bd4\u8f83\u9648\u65e7\u7684\u8f6f\u4ef6\u79fb\u690d\u8fc7\u6765\u7684\uff0c\u5f88\u5c11\u4f1a\u7528\u5230\uff0c\u4e00\u822c\u9ed8\u8ba4\u4e0d\u5199\u4e0a\u3002<\/span><\/p>\n<p id=\"u618b437a\" class=\"ne-p\"><span class=\"ne-text\">nano\u867d\u7136\u597d\uff0c\u4f46\u662f\u529f\u80fd\u7b80\u5355\uff0c\u53ea\u9002\u5408\u4e00\u4e9b\u7b80\u5355\u7684\u6587\u672c\u6587\u4ef6\u7f16\u8f91\u529f\u80fd\uff0c\u800c\u53d1\u5c55\u81eavi\u7684vim\u5219\u88ab\u6210\u4e3a\u7f16\u8f91\u5668\u4e4b\u795e\uff08Emacs\u88ab\u79f0\u4e3a\u795e\u4e4b\u7f16\u8f91\u5668\uff0cLinux\u4e4b\u7236Linus Torvalds\u5c31\u5728\u7528\uff09\u3002\u7cfb\u7edf\u4f1a\u81ea\u5e26vi\u4f46\u662f\u4e0d\u5e26vim\uff0c\u6b63\u597d\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u4e0a\u8ff0\u4fee\u6539\u8fc7\u7684\u66f4\u65b0\u6e90\u6765\u5b89\u88c5vim\u4f5c\u4e3a\u793a\u4f8b\u3002<\/span><\/p>\n<pre id=\"N40JS\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>apt update # \u66f4\u65b0\u4e00\u4e0b\u6e90\r\napt install vim -y #\u5b89\u88c5vim\u8fd9\u4e2a\u8f6f\u4ef6 -y\u662f\u786e\u8ba4\u5b89\u88c5<\/code><\/pre>\n<p id=\"u2031b069\" class=\"ne-p\"><span class=\"ne-text\">\u4f7f\u7528<\/span><span class=\"ne-text\">vim \/etc\/apt\/sources.list<\/span><span class=\"ne-text\">\u6253\u5f00\u66f4\u65b0\u6e90\u6587\u4ef6\uff0c\u5982\u4e0b\u56fe\u6240\u793a\uff1a<\/span><\/p>\n<p id=\"ub55c6f78\" class=\"ne-p\"><a id=\"aZO3a\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/vim_ui.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/vim_ui.jpg\" \/><\/a><\/p>\n<p id=\"u7cc554a5\" class=\"ne-p\"><span class=\"ne-text\">vim\u529f\u80fd\u4f17\u591a\uff0c\u4f7f\u7528\u590d\u6742\uff0c\u5f97\u6162\u6162\u8bf4\u3002\u5de6\u4e0b\u89d2\u662f\u6b64\u6587\u4ef6\u7684\u8def\u5f84\u548c\u540d\u79f0\uff0c\u53f3\u4e0b\u89d2\u662f\u5149\u6807\u6b64\u65f6\u7684\u884c\u6570\u548c\u5217\u6570\u3002\u6b64\u65f6\u662f\u65e0\u6cd5\u76f4\u63a5\u8f93\u5165\uff0c\u8981\u5148\u6309\u4e0b<\/span><span class=\"ne-text\">insert<\/span><span class=\"ne-text\">\u6216\u8005<\/span><span class=\"ne-text\">i<\/span><span class=\"ne-text\">\u952e\u53d8\u6210\u63d2\u5165\u6a21\u5f0f\u624d\u884c\u3002\u6b64\u65f6\uff0c\u5de6\u4e0b\u89d2\u5982\u4e0b\u56fe\uff0c\u53d8\u6210\u4e86INSERT\/\u63d2\u5165\u6a21\u5f0f\u3002<\/span><\/p>\n<p id=\"uc6a8e96e\" class=\"ne-p\"><a id=\"vBPdi\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/vim_s1.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/vim_s1.jpg\" \/><\/a><\/p>\n<p id=\"ue51ae6c3\" class=\"ne-p\"><span class=\"ne-text\">\u7136\u540e\u5c31\u662f\u8be5\u600e\u4e48\u5199\u5c31\u600e\u4e48\u5199\uff0c\u4e00\u4e9b\u5feb\u6377\u952e\u53bb\u767e\u5ea6\u8c37\u6b4c\u5fc5\u5e94\u5427\uff0c\u8bf4\u7684\u80af\u5b9a\u6bd4\u6211\u8be6\u7ec6\u3002\u4f46\u662f\u5fc5\u987b\u63d0\u5230\u5982\u4f55\u4fdd\u5b58\u6587\u4ef6\uff1a<\/span><span class=\"ne-text\">insert<\/span><span class=\"ne-text\">\u6a21\u5f0f\u4e0b\u6309<\/span><span class=\"ne-text\">esc<\/span><span class=\"ne-text\">\u952e\uff08\u4e00\u822c\u662f\u952e\u76d8\u6700\u5de6\u4e0a\u89d2\uff0c99%\u7684\u4eba\u53ef\u80fd\u90fd\u4e0d\u600e\u4e48\u7528\u7684\u4e00\u4e2a\u952e\uff09\uff0cINSERT\u4f1a\u6d88\u5931\u4e0d\u89c1\uff0c\u5982\u4e0b\u56fe\uff1a<\/span><\/p>\n<p id=\"u85633b12\" class=\"ne-p\"><a id=\"UcqGA\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/vim_s3.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/vim_s3.jpg\" \/><\/a><\/p>\n<p id=\"u1fa84ffb\" class=\"ne-p\"><span class=\"ne-text\">\u8fd9\u4e2a\u65f6\u5019\u518d\u6309\u4e0b<\/span><span class=\"ne-text\">:<\/span><span class=\"ne-text\">\u952e\uff0c\u754c\u9762\u4e0a\u4e5f\u4f1a\u51fa\u73b0\u4e00\u4e2a\u5192\u53f7\uff0c\u5982\u4e0b\u56fe\u3002\u6ce8\u610f\uff0c\u8fd9\u4e2a\u5192\u53f7\u662f\u534a\u89d2\u7684\uff0c\u5168\u89d2\u5192\u53f7\u662f\u6ca1\u7528\u7684\u3002<\/span><\/p>\n<p id=\"u98599348\" class=\"ne-p\"><a id=\"z1zZZ\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/vim_s2.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/vim_s2.jpg\" \/><\/a><\/p>\n<p id=\"uffdde98b\" class=\"ne-p\"><span class=\"ne-text\">\u8fd9\u4e2a\u65f6\u5019\uff0c\u6309\u4e0b<\/span><span class=\"ne-text\">wq<\/span><span class=\"ne-text\">\u8fd9\u4e24\u4e2a\u952e\uff0c\u5373\u53ef\u4fdd\u5b58\u5185\u5bb9\u3002w\u662fwrite\/\u5199\u5165\u7684\u610f\u601d\uff0cq\u662fquit\/\u9000\u51fa\u7684\u610f\u601d\u3002\u5982\u679c\u4f60\u4e0d\u60f3\u4fdd\u5b58\uff0c\u5219\u53ea\u8f93\u5165q\u952e\u5373\u53ef\uff0c\u4f46\u662f\u6709\u65f6\u5019\u56e0\u4e3a\u6587\u4ef6\u5df2\u7ecf\u88ab\u4fee\u6539\u4e86\uff0cvim\u4e0d\u8ba9\u9000\u51fa\uff0c\u8fd9\u65f6\u5019\u8f93\u5165<\/span><span class=\"ne-text\">q!<\/span><span class=\"ne-text\">\u5c31\u53ef\u4ee5\u4e86\uff0c\u611f\u53f9\u53f7\u662f\u5f3a\u5236\u6267\u884c\u7684\u610f\u601d\uff0c\u6267\u884c\u540e\u6587\u4ef6\u4e0d\u4f1a\u88ab\u4fee\u6539\u5e76\u4e14\u4f1a\u9000\u51favim\u3002<\/span><\/p>\n<h3 id=\"Twq2U\"><span class=\"ne-text\">1.4 \u66f4\u65b0\u7cfb\u7edf<\/span><\/h3>\n<p id=\"u0b3b9029\" class=\"ne-p\"><span class=\"ne-text\">\u81f3\u6b64\uff0c\u4e0d\u7ba1\u662f\u4f7f\u7528nano\u8fd8\u662fvim\u90fd\u53ef\u4ee5\u5bf9\u66f4\u65b0\u6e90\u8fdb\u884c\u7f16\u8f91\u4e86\uff0c\u8ba9\u6211\u4eec\u6765\u5177\u4f53\u4e86\u89e3\u4e00\u4e0b\u5982\u679c\u66f4\u65b0\u7cfb\u7edf\u548c\u76f8\u5173\u6307\u4ee4\u3002<\/span><\/p>\n<pre id=\"RJYup\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>apt update\r\napt list --upgradable\r\napt upgrade -y<\/code><\/pre>\n<p id=\"uf59b5224\" class=\"ne-p\"><span class=\"ne-text\">\u4ee5\u4e0a\u4e09\u884c\uff0c\u5206\u522b\u662f\u548c\u66f4\u65b0\u6e90\u540c\u6b65\uff0c\u663e\u793a\u51fa\u54ea\u4e9b\u8f6f\u4ef6\u53ef\u4ee5\u66f4\u65b0\uff0c\u4ee5\u53ca\u8fdb\u884c\u66f4\u65b0\u3002<\/span><\/p>\n<p id=\"u629aa932\" class=\"ne-p\"><span class=\"ne-text\">\u5982\u4e0a\u6587\u4e2d\uff0c\u5b89\u88c5\u4e86vim\uff0c\u82e5\u60f3\u5378\u8f7dvim\uff0c\u5219\u6709\u4ee5\u4e0b\u4e24\u4e2a\u547d\u4ee4\uff0c\u4efb\u610f\u4e00\u4e2a\u5373\u53ef\uff0c\u4f46\u4e4b\u95f4\u5b58\u5728\u5dee\u522b\u3002<\/span><\/p>\n<pre id=\"WbWbn\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>apt remove vim -y\r\napt purge vim -y<\/code><\/pre>\n<p id=\"ud9a87be8\" class=\"ne-p\"><span class=\"ne-text\">\u7b2c\u4e00\u4e2a\u4f1a\u5740\u5378\u8f7dvim\u8f6f\u4ef6\u672c\u8eab\uff0c\u914d\u7f6e\u6587\u4ef6\u4ecd\u7136\u4f1a\u672c\u7559\u4e0b\uff1b\u7b2c\u4e8c\u79cd\u8fde\u5e26\u7740\u914d\u7f6e\u6587\u4ef6\u548c\u76f8\u5173\u4f9d\u8d56\u4e00\u8d77\u5378\u8f7d\u4e86\uff0c\u6240\u4ee5\u5b58\u5728\u4e00\u5b9a\u98ce\u9669\u3002\u9664\u6b64\u4e4b\u5916\uff0c<\/span><span class=\"ne-text\">apt autoremove<\/span><span class=\"ne-text\">\u662f\u5bf9\u6574\u4e2a\u7cfb\u7edf\u8fdb\u884c\u6574\u7406\uff0c\u5c06\u4e0d\u9700\u8981\u7684\u4f9d\u8d56\u5378\u8f7d\u4e86\uff0c\u4e0d\u9488\u5bf9\u4e8e\u7279\u5b9a\u8f6f\u4ef6\u3002<\/span><\/p>\n<h2 id=\"THd6j\"><span class=\"ne-text\">2 SSH\u8fde\u63a5\u548c\u57fa\u7840\u914d\u7f6e<\/span><\/h2>\n<p id=\"u43da1c5f\" class=\"ne-p\"><span class=\"ne-text\">\u4e00\u822cVPS\u4f9b\u5e94\u5546\u90fd\u4f1a\u63d0\u4f9bSSH\u7684\u94fe\u63a5\u65b9\u5f0f\uff0c\u5305\u62ec\u7528\u6237\u540d\uff0c\u5bc6\u7801\u548c\u7aef\u53e3\u53f7\uff0c\u4e00\u4e9b\u6ce8\u91cd\u5b89\u5168\u6027\u7684\u4f1a\u4fee\u6539\u7aef\u53e3\u53f7\u751a\u81f3\u53ea\u6709\u91c7\u7528\u5bc6\u94a5\u624d\u80fd\u767b\u9646VPS\u3002\u8fd9\u91cc\u4f7f\u7528\u7eaf\u51c0\u7248\u7684\u7cfb\u7edf\u548c\u9ed8\u8ba4\u914d\u7f6e\u8fdb\u884c\u6f14\u793a\u3002<\/span><\/p>\n<h3 id=\"OyyiP\"><span class=\"ne-text\">2.1 \u8fde\u63a5SSH\u7684\u8f6f\u4ef6\u548c\u76f8\u5173\u64cd\u4f5c<\/span><\/h3>\n<p id=\"u1e3df6ef\" class=\"ne-p\"><span class=\"ne-text\">SSH\u8f6f\u4ef6\u6709\u5f00\u6e90\u7684\u548c\u4e0d\u5f00\u6e90\u7684\uff0c\u6709\u4ed8\u8d39\u7684\u548c\u514d\u8d39\u7684\uff0c\u6574\u7406\u4e86\u4e00\u4e2a\u5e38\u89c1SSH\u5ba2\u6237\u7aef\uff08Windows\u5e73\u53f0\uff09\u7684\u5bf9\u6bd4\u8868\u683c\u548c\u76f8\u5173\u4fe1\u606f\u3002\u5176\u5b9e\u57282021\u5e74\uff0cmacos\u3001Linux\u548cwindows 10\u90fd\u81ea\u5e26SSH\u529f\u80fd\uff0c\u8fd9\u91cc\u5148\u4e0d\u8ba8\u8bba\u3002\u4e2a\u4eba\u76ee\u524d\u4e3b\u7528mobaxterm\uff0c\u5076\u5c14\u4f7f\u7528xshell\u3002<\/span><\/p>\n<table id=\"bGia1\" class=\"ne-table\">\n<tbody>\n<tr>\n<td width=\"250\">\n<p id=\"uc8dc6f23\" class=\"ne-p\"><span class=\"ne-text\">\u540d\u79f0<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"u4a40f74f\" class=\"ne-p\"><span class=\"ne-text\">\u514d\u8d39\u4e0e\u5426<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"uc6f8adf7\" class=\"ne-p\"><span class=\"ne-text\">\u4e0b\u8f7d\u5730\u5740<\/span><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"250\">\n<p id=\"u692a3ebe\" class=\"ne-p\"><span class=\"ne-text\">Xshell<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"u95bb65cc\" class=\"ne-p\"><span class=\"ne-text\">\u5bb6\u5ead\/\u5b66\u6821\u514d\u8d39<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"ub8d87590\" class=\"ne-p\"><a class=\"ne-link\" href=\"https:\/\/www.netsarang.com\/zh\/free-for-home-school\/\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/www.netsarang.com\/zh\/free-for-home-school\/\"><span class=\"ne-text\">https:\/\/www.netsarang.com\/zh\/free-for-home-school\/<\/span><\/a><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"250\">\n<p id=\"u942f7a09\" class=\"ne-p\"><span class=\"ne-text\">MobaXterm<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"ua76247f5\" class=\"ne-p\"><span class=\"ne-text\">\u5bb6\u5ead\u7248\u514d\u8d39<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"u3d21d5bc\" class=\"ne-p\"><a class=\"ne-link\" href=\"https:\/\/mobaxterm.mobatek.net\/download.html\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/mobaxterm.mobatek.net\/download.html\"><span class=\"ne-text\">https:\/\/mobaxterm.mobatek.net\/download.html<\/span><\/a><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"250\">\n<p id=\"udb635e26\" class=\"ne-p\"><span class=\"ne-text\">FinalShell<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"ud2ea832a\" class=\"ne-p\"><span class=\"ne-text\">\u57fa\u7840\u529f\u80fd\u514d\u8d39<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"u980be637\" class=\"ne-p\"><a class=\"ne-link\" href=\"https:\/\/www.hostbuf.com\/t\/988.html\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/www.hostbuf.com\/t\/988.html\"><span class=\"ne-text\">https:\/\/www.hostbuf.com\/t\/988.html<\/span><\/a><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"250\">\n<p id=\"u07c110c6\" class=\"ne-p\"><span class=\"ne-text\">electerm<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"u7159beb0\" class=\"ne-p\"><span class=\"ne-text\">\u514d\u8d39+\u5f00\u6e90<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"u105a3d7f\" class=\"ne-p\"><a class=\"ne-link\" href=\"https:\/\/github.com\/electerm\/electerm\/releases\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/github.com\/electerm\/electerm\/releases\"><span class=\"ne-text\">https:\/\/github.com\/electerm\/electerm\/releases<\/span><\/a><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"250\">\n<p id=\"u8620e89c\" class=\"ne-p\"><span class=\"ne-text\">PuTTY<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"u4b3367e7\" class=\"ne-p\"><span class=\"ne-text\">\u514d\u8d39+\u5f00\u6e90<\/span><\/p>\n<\/td>\n<td width=\"250\">\n<p id=\"u17494d49\" class=\"ne-p\"><a class=\"ne-link\" href=\"https:\/\/www.chiark.greenend.org.uk\/~sgtatham\/putty\/latest.html\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/www.chiark.greenend.org.uk\/~sgtatham\/putty\/latest.html\"><span class=\"ne-text\">https:\/\/www.chiark.greenend.org.uk\/~sgtatham\/putty\/latest.html<\/span><\/a><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p id=\"u5024d729\" class=\"ne-p\"><span class=\"ne-text\">Xshell\uff1a\u4f20\u64ad\u5e7f\u6cdb\uff0c\u81ea\u5e26\u4e2d\u6587\uff0c\u4e2a\u4eba\u4f7f\u7528\u5b8c\u5168\u514d\u8d39\uff0c\u4f46\u662f\u4f1a\u8bdd\u7a97\u53e3\u9650\u5236\u6700\u591a\u53ea\u80fd\u6253\u5f00\u56db\u4e2aSSH\u8fde\u63a5\uff0c\u518d\u591a\u4e4b\u540e\u5c31\u4f1a\u81ea\u52a8\u65b0\u5efa\u4f1a\u8bdd\u7a97\u53e3\u4e86\uff0c\u4f20\u8f93\u6587\u4ef6\u9700\u8981\u914d\u5408Xftp\u624d\u884c\u3002\u76ee\u524d\u56fd\u533a\u88ab\u81ed\u540d\u662d\u8457\u7684\u601d\u6770\u9a6c\u514b\u4e01\u4ee3\u7406\u4e86\uff0c\u5982\u9700\u4f7f\u7528\uff0c\u8bf7\u524d\u5f80\u5b98\u7f51\u4e0b\u8f7d\uff0c\u5728\u8f93\u5165\u90ae\u4ef6\u548c\u59d3\u540d\u540e\uff0c\u4f1a\u6536\u5230\u4e00\u5c01\u90ae\u4ef6\uff0c\u90ae\u4ef6\u91cc\u9762\u7ed9\u51fa\u4e0b\u8f7d\u8fde\u63a5\u3002<\/span><\/p>\n<p id=\"uc82d68b9\" class=\"ne-p\"><span class=\"ne-text\">MobaXterm\uff1a\u53ea\u6709\u82f1\u6587\u7248\u672c\uff0c\u5076\u5c14\u4f1a\u53cd\u5e94\u6162\u534a\u62cd\uff0c\u9664\u6b64\u4e4b\u5916\u6ca1\u7f3a\u70b9\u3002\u529f\u80fd\u6781\u5176\u5f3a\u5927\uff0c\u4f20\u8f93\u6587\u4ef6\u3001\u6027\u80fd\u76d1\u63a7\u3001\u4e32\u53e3\u901a\u4fe1\u3001X11\u652f\u6301\u3001IP\u68c0\u6d4b\u3001\u5b8f\u3001WSL\u3001\u8fdc\u7a0b\u684c\u9762\u7b49\uff0c\u80fd\u60f3\u5230\u7684\u529f\u80fd\u90fd\u6709\uff0c\u800c\u4e14\u4e2a\u4eba\u4f7f\u7528\u514d\u8d39\u3002<\/span><\/p>\n<p id=\"ufbecf231\" class=\"ne-p\"><span class=\"ne-text\">FinalShell\uff1a\u56fd\u4eba\u5f00\u53d1\uff0c\u6240\u4ee5\u672c\u5730\u5316\u5f88\u597d\uff0c\u5168\u4e2d\u6587\uff0c\u65e5\u5e38\u9700\u8981\u7684\u529f\u80fd\u4e5f\u90fd\u6709\u3002\u6709\u4e00\u4e9b\u8fdb\u9636\u529f\u80fd\u9700\u8981\u4ed8\u8d39\uff0c\u4e5f\u53ef\u4ee5\u4e91\u7aef\u4fdd\u5b58SSH\u8d26\u53f7\uff0c\u867d\u7136\u4e5f\u662f\u4ed8\u8d39\u529f\u80fd\u3002\u7f3a\u70b9\u7684\u8bdd\uff0c\u548cMobaXterm\u4e00\u6837\uff0cJAVA\u5199\u7684\u4e1c\u897f\uff0c\u603b\u662f\u8ba9\u4eba\u89c9\u5f97\u6162\u534a\u62cd\u3002<\/span><\/p>\n<p id=\"u5ce4e9a8\" class=\"ne-p\"><span class=\"ne-text\">electerm\uff1a\u65e5\u5e38\u6240\u9700\u529f\u80fd\u90fd\u6709\uff0c\u5b8c\u5168\u5f00\u6e90\u548c\u514d\u8d39\uff0c\u8fd8\u53ef\u4ee5\u901a\u8fc7GitHub\u5b9e\u73b0\u514d\u8d39\u7684\u4e91\u7aef\u4fdd\u5b58SSH\u8d26\u53f7\u529f\u80fd\uff0c\u9002\u5408\u81ea\u5df1\u6298\u817e\u548c\u9b54\u6539\u3002\u57fa\u4e8eelectron\u5f00\u53d1\u7684\uff0c\u4ece\u800c\u5b9e\u73b0\u4e86\u8de8\u5e73\u53f0\uff0cWindows\u3001Mac\u548cLinux\u90fd\u6709\u5ba2\u6237\u7aef\u3002\u4e0d\u8fc7\u7f3a\u70b9\u4e5f\u663e\u800c\u6613\u89c1\uff0celectron\u672c\u8d28\u4e0a\u662f\u4e2a\u6d4f\u89c8\u5668\uff0c\u5360\u5185\u5b58\u548c\u786c\u76d8\u7a7a\u95f4\u3002<\/span><\/p>\n<p id=\"u7556f135\" class=\"ne-p\"><span class=\"ne-text\">PuTTY\uff1a\u7531Simon Tatham\u5f00\u53d1\u548c\u7ef4\u62a4\u7684\uff0c\u8001\u724c\u4e2d\u7684\u8001\u724c\uff0c\u4f46\u662f\u7f3a\u5c11\u4eba\u6027\u5316\u8bbe\u7f6e\uff0c\u4e0d\u63a8\u8350\u3002<\/span><\/p>\n<h3 id=\"dVyN7\"><span class=\"ne-text\">2.2 SSH\u914d\u7f6e\u6587\u4ef6\u4ecb\u7ecd\u548c\u4fee\u6539<\/span><\/h3>\n<p id=\"u1042ed16\" class=\"ne-p\"><span class=\"ne-text\">SSH\u7684\u914d\u7f6e\u6587\u4ef6\u5728<\/span><span class=\"ne-text\">\/etc\/ssh\/sshd_config<\/span><span class=\"ne-text\">\u4e2d\uff0c\u662f\u4e00\u4e2a\u7eaf\u6587\u672c\u6587\u4ef6\uff0c\u53ef\u4ee5\u4f7f\u7528<\/span><span class=\"ne-text\">nano<\/span><span class=\"ne-text\">\u6216\u8005<\/span><span class=\"ne-text\">vim<\/span><span class=\"ne-text\">\u6253\u5f00\u548c\u7f16\u8f91\u3002\u6253\u5f00\u6587\u4ef6\u540e\uff0c\u5728\u524d\u51e0\u884c\u5c31\u80fd\u770b\u5230<\/span><span class=\"ne-text\">#Port 22<\/span><span class=\"ne-text\">\u5b57\u6837\uff0c\u8fd9\u4e2a\u4ee3\u8868\u4f7f\u7528\u4e86\u9ed8\u8ba4\u768422\u7aef\u53e3\u4f5c\u4e3aSSH\u8fde\u63a5\u4f7f\u7528\u3002\u56e0\u4e3a\u5927\u5bb6\u90fd\u5728\u4f7f\u752822\u7aef\u53e3\uff0c\u6240\u4ee5\u4f1a\u6709\u4e00\u4e9b\u626b\u63cf\u673a\u5668\u4f7f\u7528\u5f31\u5bc6\u7801\u4e0d\u65ad\u5c1d\u8bd5\u767b\u5f55\uff0c\u4f7f\u7528<\/span><span class=\"ne-text\">lastb<\/span><span class=\"ne-text\">\u547d\u4ee4\u53ef\u4ee5\u67e5\u770b\u767b\u5f55\u5931\u8d25\u7684\u8bb0\u5f55\uff0c\u5982\u4e0b\u56fe\u3002233333\u662f\u5c1d\u8bd5\u767b\u5f55\u7684\u8d26\u53f7\uff0c144.214.xxx.xxx\u662f\u53d1\u8d77\u8005\u7684IP\uff0c\u6700\u540e\u9762\u662f\u5c1d\u8bd5\u767b\u5f55\u7684\u65f6\u95f4\u3002<\/span><\/p>\n<p id=\"u71667be8\" class=\"ne-p\"><a id=\"lJM16\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/ssh_lastb.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/ssh_lastb.jpg\" \/><\/a><\/p>\n<p id=\"u4c2d189a\" class=\"ne-p\"><span class=\"ne-text\">\u56e0\u6b64\uff0c\u6211\u4eec\u53ef\u4ee5\u6539\u6210\u9ad8\u7aef\u53e3\uff0c\u6bd4\u5982<\/span><span class=\"ne-text\">35261<\/span><span class=\"ne-text\">\u8fd9\u79cd\u6ca1\u6709\u7279\u6b8a\u542b\u4e49\/\u6392\u5217\u7684\u968f\u673a\u6570\uff0c\u4ee5\u51cf\u5c0f\u88ab\u653b\u51fb\u7684\u53ef\u80fd\u3002\u8981\u6ce8\u610f\u7aef\u53e3\u53ea\u80fd\u57280-65535\u4e4b\u95f4\uff0c\u5e76\u4e14\u5f88\u591a\u4f4e\u4f4d\u6570\u7684\u7aef\u53e3\uff0c\u5df2\u7ecf\u88ab\u5171\u8bc6\u7684\u7a0b\u5e8f\u5360\u9886\u4e86\uff0c\u6bd4\u598280\u7aef\u53e3\u662fhttp\u7684\uff0c443\u7aef\u53e3\u662fhttps\u7684\uff0c\u5c31\u598222\u662fSSH\u7684\u4e00\u6837\u3002\u6b64\u5904\uff0c\u6211\u4eec\u4fee\u6539<\/span><span class=\"ne-text\">\/etc\/ssh\/sshd_config<\/span><span class=\"ne-text\">\u4e2d\u7684\u7aef\u53e3\u6570\u540e\uff0c\u8fd8\u9700\u8981\u91cd\u542fSSH\u670d\u52a1\u624d\u884c\uff0c\u5426\u5219\u53ea\u4f1a\u5728\u7cfb\u7edf\u4e0b\u6b21\u91cd\u542f\u540e\u624d\u542f\u7528\u65b0\u7684\u7aef\u53e3\u3002<\/span><\/p>\n<p id=\"u4a654012\" class=\"ne-p\"><span class=\"ne-text\">systemctl restart ssh #\u91cd\u542fSSH\u670d\u52a1<\/span><\/p>\n<p id=\"u9b21ba32\" class=\"ne-p\"><span class=\"ne-text\">systemctl<\/span><span class=\"ne-text\">\u662fsystemd\u7684\u547d\u4ee4\uff0c\u7528\u4e8e\u542f\u52a8\u548c\u76d1\u63a7\u7cfb\u7edf\u670d\u52a1\u7684\uff0c\u5728\u7cfb\u7edf\u5185\u6838\u542f\u52a8\u540e\uff0csystemd\u5c31\u4f1a\u5f00\u59cb\u670d\u52a1\uff0c<\/span><span class=\"ne-text\">restart<\/span><span class=\"ne-text\">\u5373\u91cd\u542f\u7684\u610f\u601d\u3002\u5173\u4e8esystemd\u7684\u76f8\u5173\u5185\u5bb9\uff0c\u540e\u6587\u4f1a\u8be6\u7ec6\u8bf4\u660e\u3002<\/span><\/p>\n<p id=\"u418f0989\" class=\"ne-p\"><span class=\"ne-text\">\u9664\u6b64\u4e4b\u5916\uff0c\u628a\u5bc6\u7801\u6539\u7684\u590d\u6742\u4e00\u4e9b\uff0c\u4e5f\u53ef\u4ee5\u6709\u6548\u7684\u964d\u4f4e\u7cfb\u7edf\u88ab\u9ed1\u7684\u98ce\u9669\uff0c\u4f7f\u7528<\/span><span class=\"ne-text\">passwd root<\/span><span class=\"ne-text\">\u547d\u4ee4\uff0c\u5373\u53ef\u4fee\u6539root\u8d26\u53f7\u7684\u5bc6\u7801\uff0c\u4f1a\u63d0\u793a<\/span><span class=\"ne-text\">New password:<\/span><span class=\"ne-text\">\uff0c\u6b64\u65f6\u8f93\u5165\u65b0\u5bc6\u7801\uff0c\u6ce8\u610f\u8fd9\u91cc\u662f\u770b\u4e0d\u89c1\u4efb\u4f55\u8f93\u5165\u53cd\u9988\u7684\uff0c\u968f\u540e\u5728\u663e\u793a<\/span><span class=\"ne-text\">Retype new password:<\/span><span class=\"ne-text\">\u540e\u518d\u6b21\u8f93\u5165\u4e00\u904d\uff0c\u5982\u679c\u4e24\u6b21\u5bc6\u7801\u76f8\u540c\uff0c\u5c31\u4f1a\u66f4\u65b0root\u5bc6\u7801\u4e86\u3002<\/span><\/p>\n<h3 id=\"FNBxt\"><span class=\"ne-text\">2.3 \u4f7f\u7528\u5bc6\u94a5\u767b\u9646SSH<\/span><\/h3>\n<p id=\"uecc4da35\" class=\"ne-p\"><span class=\"ne-text\">\u5373\u4f7f\u66f4\u6539\u4e86\u7aef\u53e3\uff0c\u4f46\u56e0\u4e3a\u4f7f\u7528\u5bc6\u7801\u5373\u53ef\u767b\u5f55\uff0c\u8003\u8651\u5230\u4e0d\u662f\u6240\u6709\u4eba\u90fd\u4f1a\u4f7f\u7528\u5f3a\u5bc6\u7801\uff0c\u6240\u4ee5SSH\u63d0\u4f9b\u4e86\u4f7f\u7528\u5bc6\u94a5\u767b\u5f55\u7684\u529f\u80fd\uff0c\u53ef\u4ee5\u7b80\u5355\u7406\u89e3\u6210\u662f\u4e00\u957f\u4e32\u590d\u6742\u7684\u5e76\u4e14\u53ef\u4ee5\u76f8\u4e92\u9a8c\u8bc1\u7684\u5bc6\u7801\u3002\u4ee5root\u7528\u6237\u4e3a\u4f8b\uff0c\u6f14\u793a\u5982\u4f55\u5c06SSH\u7531\u5bc6\u7801\u767b\u5f55\u6539\u6210\u5bc6\u94a5\u767b\u5f55\u3002<\/span><\/p>\n<p id=\"u027e8218\" class=\"ne-p\"><span class=\"ne-text\">\u8f93\u5165<\/span><span class=\"ne-text\">ssh-keygen -t rsa <\/span><span class=\"ne-text\">\uff0c\u968f\u540e\u4e00\u8defenter\u952e\uff0c\u5982\u4e0b\u56fe<\/span><\/p>\n<p id=\"u8680d32f\" class=\"ne-p\"><a id=\"fq7yy\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/ssh_key.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/ssh_key.jpg\" \/><\/a><\/p>\n<p id=\"u788089ff\" class=\"ne-p\"><span class=\"ne-text\">\u5728\u663e\u793a\u5b8c\u6210\u540e\uff0c\u5728<\/span><span class=\"ne-text\">\/root\/.ssh\/<\/span><span class=\"ne-text\">\u6587\u4ef6\u5939\u4e0b\uff0c\u4f60\u5c06\u770b\u5230<\/span><span class=\"ne-text\">id_rsa<\/span><span class=\"ne-text\">\u548c<\/span><span class=\"ne-text\">id_rsa.pub<\/span><span class=\"ne-text\">\u4e24\u4e2a\u6587\u4ef6\uff0cid_rsa\u662f\u79c1\u94a5\uff0c\u4e0b\u8f7d\u4e0b\u6765\u5e76\u59a5\u5584\u4fdd\u5b58\uff0cid_rsa.pub\u662f\u516c\u94a5\uff0c\u653e\u5728\u670d\u52a1\u5668\u4e0a\u7684\u3002\u5c06id_rsa.pub\u5199\u5165\u5230SSH\u7684\u5bc6\u94a5\u6587\u4ef6\u4e2d\uff1a<\/span><\/p>\n<pre id=\"ZBlQc\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>touch authorized_keys\r\ncat id_rsa.pub &gt;&gt; authorized_keys<\/code><\/pre>\n<p id=\"uf5ed9f86\" class=\"ne-p\"><span class=\"ne-text\">\u9664\u6b64\u4e4b\u5916\uff0c\u8fd8\u9700\u8981\u7ed9\u6587\u4ef6\u548c\u76f8\u5173\u6587\u4ef6\u5939\u5408\u9002\u7684\u6743\u9650\uff1a<\/span><\/p>\n<pre id=\"aAot4\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>chmod 600 authorized_keys\r\nchmod 700 ~\/.ssh<\/code><\/pre>\n<p id=\"u59da83ad\" class=\"ne-p\"><span class=\"ne-text\">\u8fd9\u91cc\u6709\u4e2a<\/span><span class=\"ne-text\">~<\/span><span class=\"ne-text\">\uff0c\u5b83\u4ee3\u8868\u7684\u662f<\/span><span class=\"ne-text\">\u5f53\u524d\u7528\u6237<\/span><span class=\"ne-text\">\uff0c\u6bd4\u5982\u73b0\u5728\u662froot\u7528\u6237\uff0c\u90a3<\/span><span class=\"ne-text\">~<\/span><span class=\"ne-text\">\u5c31\u662f<\/span><span class=\"ne-text\">root<\/span><span class=\"ne-text\">\uff0c\u6240\u4ee5<\/span><span class=\"ne-text\">chmod 700 ~\/.ssh<\/span><span class=\"ne-text\">\u7b49\u4e8e<\/span><span class=\"ne-text\">chmod 700 \/root\/.ssh<\/span><\/p>\n<p id=\"u7438e756\" class=\"ne-p\"><span class=\"ne-text\">\u73b0\u5728\u5bc6\u94a5\u5df2\u7ecf\u914d\u5bf9\u597d\u4e86\uff0c\u8fd8\u9700\u8981\u4fee\u6539SSH\u7684\u914d\u7f6e\u6587\u4ef6\uff0c\u6253\u5f00<\/span><span class=\"ne-text\">\/etc\/ssh\/sshd_config<\/span><span class=\"ne-text\">\u6587\u4ef6\uff0c\u67e5\u627e\u5e76\u4fee\u6539\u5982\u4e0b\uff1a<\/span><\/p>\n<pre id=\"BG2vT\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>PubkeyAuthentication yes # yes\u8868\u793a\u5141\u8bb8\u5bc6\u94a5\u767b\u9646\r\nAuthorizedKeysFile      .ssh\/authorized_keys .ssh\/authorized_keys2 # \u6307\u5b9a\u5bc6\u94a5\u7684\u6587\u4ef6\u4f4d\u7f6e\uff0c\u8fd9\u91cc\u662f\u53bb\u6389\u4e86\u5f00\u5934\u7684#\r\nPasswordAuthentication no # \u4e0d\u5141\u8bb8\u4f7f\u7528\u5bc6\u7801\u767b\u9646\uff0c\u7b49\u6d4b\u8bd5\u5bc6\u94a5\u767b\u9646\u6210\u529f\u4e86\u518d\u4fee\u6539\u6b64\u6761\uff0c\u4ee5\u9632\u65e0\u6cd5\u767b\u9646<\/code><\/pre>\n<p id=\"u7a4ac2dd\" class=\"ne-p\"><span class=\"ne-text\">\u4f7f\u7528<\/span><span class=\"ne-text\">systemctl restart ssh<\/span><span class=\"ne-text\">\u91cd\u542fSSH\u670d\u52a1\uff0c\u6b64\u523b\uff0c\u4f60\u5c06\u53ea\u80fd\u4f7f\u7528\u5bc6\u94a5\u624d\u80fd\u767b\u5f55\uff0c\u4e00\u65e6\u79c1\u94a5\u9057\u5931\u4e86\uff0c\u5c31\u518d\u4e5f\u8fdb\u4e0d\u53bb\u4e86\u3002<\/span><\/p>\n<h2 id=\"NChTq\"><span class=\"ne-text\">3 Linux\u6587\u4ef6\u7cfb\u7edf<\/span><\/h2>\n<h3 id=\"RAhWX\"><span class=\"ne-text\">3.1 \u6587\u4ef6\u7cfb\u7edf\u683c\u5f0f<\/span><\/h3>\n<p id=\"u28b19d69\" class=\"ne-p\"><span class=\"ne-text\">\u4e0eWindows\u5206\u5272\u786c\u76d8\uff08\u751a\u81f3\u4e00\u4e2a\u786c\u76d8\u88ab\u5212\u5206\u6210\u4e86\u597d\u51e0\u4e2a\uff09\u4e0d\u540c\uff0cLinux\u7684\u662f\u5c06\u6240\u6709\u786c\u76d8\u90fd<\/span><span class=\"ne-text\">\u6302\u8f7d<\/span><span class=\"ne-text\">\u5728\u4e86\u4e00\u8d77\u3002\u7b80\u5355\u6765\u8bf4\uff0cWindows\u5206C\u76d8D\u76d8\u7b49\uff0c\u8fd8\u9488\u5bf9\u8f6f\u76d8\u989d\u5916\u7ed9\u4e88\u4e86A\u76d8\u548cB\u76d8\uff0cLinux\u628a\u6240\u6709\u7684\u786c\u76d8\u90fd\u653e\u5728\u4e86<\/span><span class=\"ne-text\">\/<\/span><span class=\"ne-text\">\u4e0b\uff0c\u5373<\/span><span class=\"ne-text\">\u6839\u76ee\u5f55<\/span><span class=\"ne-text\">\uff0c\u8fd9\u4e5f\u662fLinux\u4e2droot\u8d26\u6237\u7684\u6743\u9650\u6700\u5927\u7684\u539f\u56e0\uff0c<\/span><span class=\"ne-text\">root<\/span><span class=\"ne-text\">\u5373\u4e3a\u6839\uff0c\u5982\u540c\u6811\u6839\u4e00\u6837\uff0c\u6240\u6709\u7684\u5185\u5bb9\u90fd\u8981\u57fa\u4e8e\u6839\u624d\u6709\u4e86\u53ef\u80fd\u3002\u6587\u4ef6\u7cfb\u7edf\u662f\u53e6\u5916\u4e00\u4e2a\u6781\u5176\u590d\u6742\u7684\u5185\u5bb9\uff0c\u8fd9\u91cc\u53ea\u63d0\u5230Windows\u4f7f\u7528\u7684\u662fNTFS\uff0c\u800cLinux\u666e\u904d\u91c7\u7528EXT4\u683c\u5f0f\uff0c\u8fd9\u4e24\u79cd\u6587\u4ef6\u7cfb\u7edf\u4e92\u4e0d\u517c\u5bb9\uff0c\u88c5\u5728Linux\u7cfb\u7edf\u4e0a\u7684\u786c\u76d8\uff0c\u5728Windows\u4e0a\u662f\u65e0\u6cd5\u76f4\u63a5\u8bfb\u5199\u7684\uff0c\u5fc5\u987b\u4f7f\u7528\u989d\u5916\u7684\u8f6f\u4ef6\u624d\u80fd\u8bbf\u95ee\u3002\u53cd\u8fc7\u6765\uff0c\u5728Linux\u4e0a\u8bfb\u53d6Windows\u4e0b\u7684\u786c\u76d8\u4e2d\u7684\u5185\u5bb9\uff0c\u9700\u8981\u5b89\u88c5<\/span><span class=\"ne-text\">ntfs-3g<\/span><span class=\"ne-text\">\u624d\u884c\u3002\u8fd9\u4e24\u79cd\u6587\u4ef6\u7cfb\u7edf\u5404\u6709\u4f18\u7f3a\u70b9\uff0c\u4e00\u822c\u4eba\u7528\u5c31\u884c\u4e86\uff0c\u4e0d\u8981\u95ee\uff0c\u95ee\u5c31\u662f\u7528\u9ed8\u8ba4\u3002\u5b9e\u9645\u4e0a\uff0c\u76ee\u524d\u5728\u5e7f\u6cdb\u4f7f\u7528\u7684\u6587\u4ef6\u7cfb\u7edf\u79cd\u7c7b\u7e41\u591a\uff0c\u6240\u6709\u9700\u8981\u5728\u5b83\u4eec\u4e4b\u95f4\u4ea4\u6362\u6587\u4ef6\u7684\u65f6\u5019\uff0c\u4f1a\u4f7f\u7528exFAT\u683c\u5f0f\u7684U\u76d8\/\u786c\u76d8\uff08exFAT\u662fFAT\u7684\u66ff\u4ee3\u54c1\uff0c\u56e0\u4e3aFAT\u4e0b\u5355\u4e2a\u6587\u4ef6\u6700\u5927\u4e0d\u80fd\u8d85\u8fc74G\uff09\u3002<\/span><\/p>\n<h3 id=\"vyEnO\"><span class=\"ne-text\">3.2 \u6587\u4ef6\u6811\u3001\u6587\u4ef6\u5939\u529f\u80fd\u548c\u6743\u9650<\/span><\/h3>\n<p id=\"u17b9d826\" class=\"ne-p\"><span class=\"ne-text\">\u5728<\/span><span class=\"ne-text\">\/<\/span><span class=\"ne-text\">\u76ee\u5f55\u4e0b\uff0c\u4f7f\u7528<\/span><span class=\"ne-text\">ls -la<\/span><span class=\"ne-text\">\u4f1a\u663e\u793a\u51fa\u6240\u6709\u7684\u6587\u4ef6\u548c\u6587\u4ef6\u5939\uff08\u5982\u4e0b\u56fe\u6240\u793a\uff09\uff0c<\/span><span class=\"ne-text\">a<\/span><span class=\"ne-text\">\u662f\u5217\u51fa\u6240\u6709\u6587\u4ef6\uff0c<\/span><span class=\"ne-text\">l<\/span><span class=\"ne-text\">\u662f\u663e\u793a\u8be6\u7ec6\u4fe1\u606f\u3002<\/span><\/p>\n<p id=\"u5b36cc0c\" class=\"ne-p\"><a id=\"faJ8G\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/root_files.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/root_files.jpg\" \/><\/a><\/p>\n<p id=\"u9126e041\" class=\"ne-p\"><span class=\"ne-text\">\u7b2c\u4e00\u5217\u662f\u6587\u4ef6\/\u6587\u4ef6\u5939\u7684\u6743\u9650\uff0c\u4e00\u5171\u670910\u4e2a\u5b57\u7b26\uff0c\u7b2c\u4e00\u4f4d\u662f\u6587\u4ef6\u7c7b\u578b\uff0c\u6bd4\u5982d\u4ee3\u8868\u6587\u4ef6\u5939\uff0cl\u4ee3\u8868\u94fe\u63a5\u3002\u4e4b\u540e\uff0c\u4e09\u4e2a\u4e3a\u4e00\u7ec4\uff0c\u603b\u51713\u7ec4\u3002r\u662f\u8bfb\uff0cw\u662f\u5199\uff0cx\u662f\u6267\u884c\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7\u6570\u5b57\u6765\u533a\u5206\uff0cr\u662f4\uff0cw\u662f2\uff0cx\u662f1\uff0c\u6240\u4ee5\u6709\u4e86\u5e38\u89c1\u7684\u4e00\u628a\u68ad<\/span><span class=\"ne-text\">chmod +777<\/span><span class=\"ne-text\">\u3002\u7b2c\u4e8c\u5217\u662f\u786c\u94fe\u63a5\u6570\u91cf\uff0c\u5373\u8fd9\u4e2a\u6587\u4ef6\/\u6587\u4ef6\u5939\u4e0b\u6709\u591a\u5c11\u771f\u5b9e\u653e\u7740\u7684\u6587\u4ef6\u3002\u7b2c\u4e09\u5217\u548c\u7b2c\u56db\u5217\u662f\u8fd9\u4e2a\u4ef6\u5206\u522b\u5c5e\u4e8e\u8c01\uff0c\u4ee5\u53ca\u8fd9\u4e2a\u4eba\u662f\u54ea\u4e2a\u7ec4\u7684\u3002\u8fd9\u91cc\u7684<\/span><span class=\"ne-text\">\u7ec4<\/span><span class=\"ne-text\">\u6982\u5ff5\u6765\u6e90\u4e8e\u6700\u5f00\u59cb\u7684unix\u662f\u4e2a\u591a\u7528\u6237\u7cfb\u7edf\uff0c\u6240\u6709\u4f1a\u628a\u7528\u6237\u5206\u7c7b\uff0c\u6bd4\u5982\u67d0\u8f6f\u4ef6\u7528\u6237\u653e\u4e00\u4e2a\u7ec4\uff0c\u7cfb\u7edf\u7ef4\u62a4\u4eba\u5458\u653e\u4e00\u4e2a\u7ec4\u7b49\u3002\u7b2c\u516d\u5217\u662f\u6587\u4ef6\/\u6587\u4ef6\u5939\u5927\u5c0f\uff0c\u9ed8\u8ba4\u5355\u4f4d\u662fK\u3002\u7b2c\u4e03\u516b\u4e5d\u5217\u662f\u4fee\u6539\u7684\u65e5\u671f\u3002\u6700\u540e\u4e00\u5217\u662f\u6587\u4ef6\/\u6587\u4ef6\u5939\u7684\u540d\u5b57\u3002\u6211\u4eec\u4f1a\u53d1\u73b0\u6709\u4e00\u4e9b<\/span><span class=\"ne-text\">-&gt;<\/span><span class=\"ne-text\">\u7684\u5b57\u6837\uff0c\u8fd9\u662f\u6307\u8f6f\u94fe\u63a5\u3002\u8f6f\u8fde\u63a5\u7c7b\u4f3c\u4e8eWindows\u4e0a\u7684\u5feb\u6377\u65b9\u5f0f\uff0c\u800c\u786c\u8fde\u63a5\u7c7b\u4f3c\u4e8e\u590d\u5236\u4e86\u4e00\u4efd\uff08\u4f46\u5e76\u4e0d\u4f1a\u771f\u7684\u5360\u7528\u7a7a\u95f4\uff09\u3002<\/span><\/p>\n<ul class=\"ne-ul\">\n<li id=\"udea2d492\" data-lake-index-type=\"0\"><span class=\"ne-text\">bin\u6216\u8005usr\/bin\uff1a\u5e94\u7528\u7a0b\u5e8f\uff0c\u6bd4\u5982Python\u7684\u4e3b\u7a0b\u5e8f\u5c31\u5728\u8fd9\u91cc<\/span><\/li>\n<li id=\"u1287ec56\" data-lake-index-type=\"0\"><span class=\"ne-text\">boot\uff1a\u7cfb\u7edf\u542f\u52a8\u6587\u4ef6<\/span><\/li>\n<li id=\"uac7347ef\" data-lake-index-type=\"0\"><span class=\"ne-text\">dev\uff1a\u5916\u90e8\u786c\u4ef6\u8bbe\u5907\uff0cLinux\u4e0b\u4e00\u5207\u7686\u6587\u4ef6\uff0c\u6240\u4ee5\u5916\u90e8\u786c\u4ef6\u8bbe\u5907\u4e5f\u662f\u4ee5\u6587\u4ef6\u5f62\u5f0f\u51fa\u73b0<\/span><\/li>\n<li id=\"uaa2cfb3b\" data-lake-index-type=\"0\"><span class=\"ne-text\">etc\uff1a\u7cfb\u7edf\u7684\u914d\u7f6e\u6587\u4ef6\uff0c\u6bd4\u5982\u4e0a\u8ff0\u63d0\u5230\u7684SSH\u7684\u914d\u7f6e\u6587\u4ef6\u5c31\u5728\u8fd9\u91cc<\/span><\/li>\n<li id=\"u23c520f0\" data-lake-index-type=\"0\"><span class=\"ne-text\">home\uff1a\u7528\u6237\u76ee\u5f55\uff0c\u7c7b\u4f3c\u4e8eWindows\u4e0a\u7684\u684c\u9762<\/span><\/li>\n<li id=\"ud3a221b0\" data-lake-index-type=\"0\"><span class=\"ne-text\">initrd.img\uff1a\u542f\u52a8\u6587\u4ef6\uff0c\u53ef\u4ee5\u770b\u5230\u5b83\u88ab\u8f6f\u8fde\u63a5\u5230\u4e86boot\u76ee\u5f55\u4e2d<\/span><\/li>\n<li id=\"ue2e3beb2\" data-lake-index-type=\"0\"><span class=\"ne-text\">lib\uff1a\u5e93\u6587\u4ef6\uff0c\u7c7b\u4f3c\u4e8eWindows\u7684dll\uff0c\u7a0b\u5e8f\u7684\u4f9d\u8d56\u90fd\u5728\u8fd9\u91cc<\/span><\/li>\n<li id=\"u589ff9dc\" data-lake-index-type=\"0\"><span class=\"ne-text\">lost+found\uff1a\u4e22\u5931\u5bfb\u627e\u6587\u4ef6\uff0c\u7cfb\u7edf\u88ab\u5f3a\u8feb\u5173\u673a\u540e\uff0c\u4f1a\u5728\u8fd9\u91cc\u8bb0\u5f55\u4e0b\u6765<\/span><\/li>\n<li id=\"u6f484a46\" data-lake-index-type=\"0\"><span class=\"ne-text\">media\uff1a\u5a92\u4f53\u6587\u4ef6\uff0c\u5982\u679c\u7cfb\u7edf\u53d1\u73b0\u4e86\u5149\u76d8\u4e4b\u7c7b\u7684\uff0c\u4f1a\u81ea\u52a8\u6302\u8f7d\u5230\u8fd9\u91cc<\/span><\/li>\n<li id=\"u379d513b\" data-lake-index-type=\"0\"><span class=\"ne-text\">mnt\uff1a\u4e34\u65f6\u6302\u8f7d\u76ee\u5f55\uff0c\u4e0a\u8ff0\u7684\u5149\u76d8\uff0c\u8fd8\u6709U\u76d8\u786c\u76d8\uff0c\u5982\u679c\u624b\u52a8\u6302\u8f7d\uff0c\u90fd\u4f1a\u9009\u62e9\u8fd9\u91cc<\/span><\/li>\n<li id=\"ub6216e97\" data-lake-index-type=\"0\"><span class=\"ne-text\">opt\uff1a\u7cfb\u7edf\u989d\u5916\u8f6f\u4ef6\u7684\u5b89\u88c5\u4f4d\u7f6e\uff0c\u6781\u5c11\u4f7f\u7528\uff0c\u6bd4\u5982\u7532\u9aa8\u6587\u7684\u6570\u636e\u5e93\u4f1a\u653e\u4e00\u4e9b\u4e1c\u897f\u5728\u8fd9\u91cc<\/span><\/li>\n<li id=\"u4adffddb\" data-lake-index-type=\"0\"><span class=\"ne-text\">proc\uff1a\u7cfb\u7edf\u8fdb\u7a0b\/\u5185\u6838\u4f1a\u628a\u4e00\u4e9b\u4fe1\u606f\u653e\u5230\u8fd9\u91cc\uff0c\u672c\u8d28\u4e0a\u662f\u53cd\u5e94\u7cfb\u7edf\u72b6\u6001\u800c\u4e0d\u662f\u6587\u4ef6<\/span><\/li>\n<li id=\"u220fa97d\" data-lake-index-type=\"0\"><span class=\"ne-text\">root\uff1aroot\u7528\u6237\u7684\u201c\u684c\u9762\u201d\uff0c\u666e\u901a\u7528\u6237\u5728home\u4e2d<\/span><\/li>\n<li id=\"u2d97b77b\" data-lake-index-type=\"0\"><span class=\"ne-text\">run\uff1a\u7cfb\u7edf\u542f\u52a8\u540e\u5b58\u653e\u4e34\u65f6\u6587\u4ef6<\/span><\/li>\n<li id=\"ue20beb04\" data-lake-index-type=\"0\"><span class=\"ne-text\">sbin\uff1aroot\u7528\u6237\u7684&#8221;bin&#8221;<\/span><\/li>\n<li id=\"u2fa652be\" data-lake-index-type=\"0\"><span class=\"ne-text\">srv\uff1a\u653e\u670d\u52a1\u8fd0\u884c\u800c\u9700\u8981\u7684\u6587\u4ef6<\/span><\/li>\n<li id=\"u989ba4c4\" data-lake-index-type=\"0\"><span class=\"ne-text\">sys\uff1a\u6587\u4ef6\u7cfb\u7edf\uff0c\u91cc\u9762\u5305\u62ec\u8fdb\u7a0b\u4fe1\u606f\uff0c\u8bbe\u5907\u4fe1\u606f\u548c\u7ec8\u7aef\u4fe1\u606f<\/span><\/li>\n<li id=\"uc7b9eaff\" data-lake-index-type=\"0\"><span class=\"ne-text\">tmp\uff1a\u4e34\u65f6\u6587\u4ef6<\/span><\/li>\n<li id=\"u35c5f440\" data-lake-index-type=\"0\"><span class=\"ne-text\">usr\uff1a\u5171\u4eab\u8d44\u6e90\uff0c\u7c7b\u4f3c\u4e8eWindows\u5b89\u88c5\u8f6f\u4ef6\u7684\u9ed8\u8ba4\u76ee\u5f55<\/span><\/li>\n<li id=\"uc40fda31\" data-lake-index-type=\"0\"><span class=\"ne-text\">var\uff1a\u4e0d\u65ad\u53d8\u5316\u7684\u6587\u4ef6\u4f1a\u653e\u5728\u8fd9\u91cc\uff0c\u6bd4\u5982\u65e5\u5fd7<\/span><\/li>\n<li id=\"ufe2f52ff\" data-lake-index-type=\"0\"><span class=\"ne-text\">vmlinuz\uff1a\u542f\u52a8\u6587\u4ef6\uff0c\u53ef\u4ee5\u770b\u5230\u5b83\u88ab\u8f6f\u8fde\u63a5\u5230\u4e86boot\u76ee\u5f55\u4e2d<\/span><\/li>\n<\/ul>\n<p id=\"u9eff2fe8\" class=\"ne-p\"><span class=\"ne-text\">\u5982\u679c\u6211\u4eec\u81ea\u5df1\u5199\u4e86\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u8fd8\u653e\u5728\u7cfb\u7edf\u91cc\u9762\u8fd0\u884c\uff0c\u90a3\u4e00\u822c\u662f\u5728<\/span><span class=\"ne-text\">\/usr\/local\/<\/span><span class=\"ne-text\">\u4e2d\u65b0\u5efa\u76ee\u5f55\uff0c\u8fd9\u9075\u5faa\u7740Linux\u7cfb\u7edf\u7684\u9ed8\u8ba4\u89c4\u5219\u3002<\/span><\/p>\n<h3 id=\"d0D7s\"><span class=\"ne-text\">3.3 \u793a\u4f8b\uff1a\u6302\u8f7dU\u76d8<\/span><\/h3>\n<p id=\"u91fa5ab6\" class=\"ne-p\"><span class=\"ne-text\">\u5982\u679c\u662fUbuntu\u684c\u9762\u7684\u8bdd\uff0c\u4f1a\u81ea\u52a8\u6302\u8f7dU\u76d8\uff0c\u4f46\u662f\u65e0GUI\u7248\u672c\u7684Linux\u5927\u6982\u7387\u4e0d\u4f1a\uff0c\u6240\u4ee5\u4f1a\u9700\u8981\u624b\u52a8\u6302\u8f7d\uff0c\u53c8\u6216\u8005\u52a0\u4e86\u4e00\u5757\u65b0\u7684\u786c\u76d8\uff0c\u9700\u8981\u6211\u4eec\u81ea\u5df1\u6302\u8f7d\u3002<\/span><\/p>\n<pre id=\"wXJW5\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>fdisk -l\r\nmkdir \/mnt\/usb\r\nmount \/dev\/sda1 \/mnt\/usb\r\numount \/mnt\/usb<\/code><\/pre>\n<p id=\"u26db55de\" class=\"ne-p\"><span class=\"ne-text\">fdisk -l<\/span><span class=\"ne-text\">\u662f\u663e\u793a\u51fa\u6240\u6709\u7684\u50a8\u5b58\uff0c\u4f1a\u663e\u793a\u51fa\u6765\u7c7b\u4f3c\u4e8e<\/span><span class=\"ne-text\">\/dev\/sda1<\/span><span class=\"ne-text\">\u7b49\uff0c<\/span><span class=\"ne-text\">mkdir \/mnt\/usb<\/span><span class=\"ne-text\">\u5728<\/span><span class=\"ne-text\">mnt<\/span><span class=\"ne-text\">\u76ee\u5f55\u91cc\u9762\u65b0\u5efa\u4e00\u4e2a\u6587\u4ef6\u5939\uff0c\u5373\u6302\u8f7d\u70b9\uff0c\u5047\u8bbe<\/span><span class=\"ne-text\">sda1<\/span><span class=\"ne-text\">\u5c31\u662f\u6211\u4eec\u63d2\u5165\u7684U\u76d8\uff0c<\/span><span class=\"ne-text\">mount \/dev\/sda1 \/mnt\/usb<\/span><span class=\"ne-text\">\u5c06\u8fd9\u5757U\u76d8\u6302\u8f7d\u5230\u4e86<\/span><span class=\"ne-text\">\/mnt\/usb<\/span><span class=\"ne-text\">\u4e2d\uff0c\u8fd9\u65f6\u5019\u6211\u4eec\u5c31\u80fd\u5728<\/span><span class=\"ne-text\">\/mnt\/usb<\/span><span class=\"ne-text\">\u4e2d\u770b\u5230U\u76d8\u91cc\u7684\u6587\u4ef6\u3002\u5982\u679c\u4e0d\u518d\u9700\u8981\u4e86\uff0c\u8981\u624b\u52a8\u79fb\u9664\u8fd9\u4e2aU\u76d8\uff0c\u4f7f\u7528<\/span><span class=\"ne-text\">umount \/mnt\/usb<\/span><span class=\"ne-text\">\u547d\u4ee4\u3002<\/span><\/p>\n<h2 id=\"WdtTx\"><span class=\"ne-text\">4 Shell\/Dash\u5165\u95e8<\/span><\/h2>\n<p id=\"u1bd9d589\" class=\"ne-p\"><span class=\"ne-text\">\u8ba9\u4eba\u5934\u5927\uff0cShell\u672c\u8eab\u5c31\u80fd\u5199\u4e00\u672c\u4e66\u4e86\uff0c\u5c11\u8bf4\u5f97\u6709300\u9875\uff01\u8fd9\u91cc\u9762\u5939\u6742\u7740\u4eceUnix\u5f00\u59cb\u7684\u4e00\u5927\u5806\u4e8b\u60c5\uff0cshell\u7684\u53d1\u5c55\uff0cbash\u548cdash\u7684\u533a\u522b\u4e0e\u8054\u7cfb\uff0c\u672c\u8eab\u7684\u547d\u4ee4\uff0c\u8c03\u7528\u7cfb\u7edf\u7684\u547d\u4ee4\uff0c\u4ea4\u4e92\u65b9\u5f0f\u3002\u7d2f\u4e86\uff0c\u59d1\u4e14\u5148\u628a\u5b83\u5f53\u6210\u4e00\u5806\u547d\u4ee4\u62fc\u51d1\u8d77\u6765\u7684\u811a\u672c\u5427\u3002<\/span><\/p>\n<p id=\"u700309f4\" class=\"ne-p\"><span class=\"ne-text\">\u8fd8\u662f\u5199\u4e2a\u4f8b\u5b50\uff0c\u7b80\u5355\u4ecb\u7ecd\u4e00\u4e0b\u5b9e\u9645\u5185\u5bb9\uff0c\u7b49\u4ee5\u540e\u6709\u65f6\u95f4\u4e86\u518d\u7ee7\u7eed\u8865\u5145\u3002\u6bd4\u5982\u6211\u4eec\u60f3\u5199\u4e00\u4e2a\u67e5\u770bCPU\u548c\u5185\u5b58\u4f7f\u7528\u7387\u7684\u811a\u672c\uff1a<\/span><\/p>\n<pre id=\"ltD6r\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>#!\/bin\/bash\r\n\r\necho \"which useage do you want to konw?\"\r\necho \"1 for CPU, 2 for RAM\"\r\nread choice\r\n\r\nif [ $choice -eq 1 ]\r\nthen\r\n   echo \"CPU usage\"\r\n   grep 'cpu ' \/proc\/stat | awk '{usage=($2+$4)*100\/($2+$4+$5)} END {print usage \"%\"}'\r\nelif [ $choice -eq 2 ]\r\nthen\r\n   echo \"RAM usage\"\r\n   free -m | grep Mem | awk '{print ($3\/$2)*100 \"%\"}'\r\nelse\r\n   echo \"WRONG INPUT\"\r\nfi<\/code><\/pre>\n<p id=\"uf5763181\" class=\"ne-p\"><span class=\"ne-text\">\u7ec6\u8bf4\u6bcf\u4e00\u884c\u5185\u5bb9<\/span><\/p>\n<p id=\"ud1e2aa80\" class=\"ne-p\"><span class=\"ne-text\">#!\/bin\/bash<\/span><span class=\"ne-text\">\u662f\u6307\u5b9a\u6b64\u6587\u4ef6\u7531\/bin\u4e0b\u9762\u7684bash\u8fd9\u4e2a\u7a0b\u5e8f\u6765\u6267\u884c\u3002<\/span><\/p>\n<p id=\"ufa08d726\" class=\"ne-p\"><span class=\"ne-text\">\u5728Debian 11\u91cc\u9762\uff0cbash\u5176\u5b9e\u662fdash\uff0c\u522b\u95eedash\u662f\u4ec0\u4e48\uff0c\u5c31\u5199bash\uff0c\u5929\u738b\u8001\u5b50\u6765\u4e86\u4e5f\u5199bash\u3002Bash\u5168\u79f0\u662fGNU Bourne-Again Shell\uff0cbash\u88ab\u4eceNetBSD\uff08\u4e00\u4e2aUnix\u7684\u5206\u652f\uff09\u4e0a\u79fb\u690d\u5230Debian\u4e0a\uff0c\u6240\u4ee5\u53ebdash (Debian Almquist Shell)\u3002<\/span><\/p>\n<p id=\"u7691acf2\" class=\"ne-p\"><span class=\"ne-text\">echo &#8220;which useage do you want to konw?&#8221;<\/span><span class=\"ne-text\">\u662f\u8f93\u51fa\u5192\u53f7\u5185\u7684\u6587\u5b57<\/span><\/p>\n<pre id=\"UnMDI\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>echo \"1 for CPU, 2 for RAM\"\r\nread choice<\/code><\/pre>\n<p id=\"ude7034eb\" class=\"ne-p\"><span class=\"ne-text\">\u628a\u8f93\u5165\u5185\u5bb9\u8d4b\u503c\u7ed9<\/span><span class=\"ne-text\">choice<\/span><span class=\"ne-text\">\u8fd9\u4e2a\u53d8\u91cf\uff0c\u5373\u6570\u5b571\u6216\u80052\u3002<\/span><span class=\"ne-text\">rcho -p &#8220;1 for CPU, 2 for RAM&#8221; choice<\/span><span class=\"ne-text\">\u4e5f\u53ef\u4ee5\u5b9e\u73b0\u76f8\u540c\u529f\u80fd\u3002<\/span><\/p>\n<pre id=\"qBaE4\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>if [ ... ]\r\nthen\r\n\t...\r\n\t...\r\nelif [ ... ]\r\nthen\r\n\t...\r\n\t...\r\nelse\r\n\t...\r\nfi<\/code><\/pre>\n<p id=\"u0af01b25\" class=\"ne-p\"><span class=\"ne-text\">\u8fd9\u662f\u4e00\u4e2aif&#8230;elif&#8230;else\u7684\u5224\u65ad\u8bed\u53e5\uff0c\u5148\u7ecf\u8fc7\u4e24\u6b21\u5224\u65ad\uff0c\u5982\u679c\u90fd\u4e0d\u80fd\u6210\u529f\uff0c\u90a3\u5c31\u6267\u884c\u6700\u540e\u4e00\u884c\u3002<\/span><\/p>\n<p id=\"u5f596e1f\" class=\"ne-p\"><span class=\"ne-text\">$choice -eq 1<\/span><span class=\"ne-text\">\u628a\u521a\u624d\u7684<\/span><span class=\"ne-text\">choice<\/span><span class=\"ne-text\">\u8fd9\u4e2a\u8f93\u5165\u53d8\u91cf\u548c\u6570\u5b571\u5bf9\u6bd4\uff0c\u6ce8\u610f\uff0c\u8981\u6709<\/span><span class=\"ne-text\">$<\/span><span class=\"ne-text\">\u624d\u4ee3\u8868\u53d8\u91cf\uff0c\u4e0d\u7136\u5c31\u9ed8\u8ba4\u662f\u6587\u5b57\uff0c<\/span><span class=\"ne-text\">-eq<\/span><span class=\"ne-text\">\u662f\u7b49\u4e8e\u7684\u610f\u601d\u3002\u5224\u65ad\u662f\u5426\u7b49\u4e8e1\uff0c\u662f\u7684\u8bdd\u5c31\u7ed9\u51faCPU\u4f7f\u7528\u91cf\uff0c\u5982\u679c\u4e0d\u7b49\u4e8e1\uff0c\u90a3\u5c31\u7ee7\u7eed\u5224\u65ad\u662f\u5426\u7b49\u4e8e2\uff0c\u662f\u7684\u8bdd\u5c31\u7ed9\u51faRAM\u4f7f\u7528\u91cf\uff0c\u5982\u679c\u4e0d\u7b49\u4e8e2\uff0c\u90a3\u5c31\u8f93\u51fa\u9519\u8bef\u63d0\u9192\uff0c\u7136\u540e\u7ed3\u675f\u3002<\/span><span class=\"ne-text\">grep<\/span><span class=\"ne-text\">\u662f\u6293\u53d6\u6709\u5173\u952e\u8bcd\u7684\u90a3\u4e00\u884c\uff0c<\/span><span class=\"ne-text\">$2<\/span><span class=\"ne-text\">\u662f\u8fd9\u4e00\u884c\u7684\u7b2c\u51e0\u4e2a\u5185\u5bb9\uff0c\u5982\u4e0b\uff1a<\/span><\/p>\n<p id=\"u2603ccee\" class=\"ne-p\"><a id=\"d7mOs\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/grep.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/grep.jpg\" \/><\/a><\/p>\n<p id=\"u117d9993\" class=\"ne-p\"><span class=\"ne-text\">grep Mem<\/span><span class=\"ne-text\">\u6293\u53d6\u5230\u4e86\u7b2c\u4e8c\u884c\uff0c\u5373\u771f\u5b9e\u5185\u5b58\u8fd9\u4e00\u884c\uff0c<\/span><span class=\"ne-text\">$2<\/span><span class=\"ne-text\">\u662f\u5185\u5b58\u603b\u91cf\uff0c<\/span><span class=\"ne-text\">$3<\/span><span class=\"ne-text\">\u662f\u5df2\u7ecf\u4f7f\u7528\u4e86\u7684\u5185\u5b58\uff0c\u56e0\u6b64<\/span><span class=\"ne-text\">($3\/$2)*100<\/span><span class=\"ne-text\">\u5c31\u662f\u5df2\u7ecf\u4f7f\u7528\u4e86\u767e\u5206\u4e4b\u591a\u5c11\u7684\u5185\u5b58\uff0c<\/span><\/p>\n<h2 id=\"iDlKC\"><span class=\"ne-text\">5 Crontab\u5b9a\u65f6\u4efb\u52a1<\/span><\/h2>\n<p id=\"u5d5fbbd0\" class=\"ne-p\"><span class=\"ne-text\">Crontab\u7528\u4e8e\u5b9a\u65f6\u4efb\u52a1\uff0c\u6bd4\u5982\u8bbe\u5b9a\u5468\u4e94\u665a\u4e0a\u8fd0\u884c\u811a\u672c\u5907\u4efd\u7f51\u7ad9\uff0c\u53c8\u6216\u8005\u6bcf\u5206\u949f\u68c0\u67e5\u4e00\u4e0bCPU\u4f7f\u7528\u7387\u7b49\u3002\u4f46\u9664\u6b64\u4e4b\u5916\uff0ccrontab\u8fd8\u6709\u4e2a<\/span><span class=\"ne-text\">@reboot<\/span><span class=\"ne-text\">\u529f\u80fd\uff0c\u5373\u53ef\u4ee5\u5728\u7cfb\u7edf\u542f\u52a8\u7684\u65f6\u5019\u81ea\u52a8\u8fd0\u884c\u6307\u5b9a\u7a0b\u5e8f\u3002<\/span><\/p>\n<p id=\"u2bafa1a9\" class=\"ne-p\"><span class=\"ne-text\">\u63a8\u8350<\/span><span class=\"ne-text\">crontab -e<\/span><span class=\"ne-text\">\uff0c\u5176\u4e2d\u7684<\/span><span class=\"ne-text\">-e<\/span><span class=\"ne-text\">\u662f\u6307\u5f53\u524d\u7528\u6237\uff0c\u4e0d\u5efa\u8bae\u76f4\u63a5\u4f7f\u7528<\/span><span class=\"ne-text\">crontab<\/span><span class=\"ne-text\">\u3002\u9996\u6b21\u8fd0\u884c<\/span><span class=\"ne-text\">crontab -e<\/span><span class=\"ne-text\">\u7684\u65f6\u5019\uff0c\u4f1a\u8ba9\u9009\u62e9\u4f7f\u7528\u4f55\u79cd\u7f16\u8f91\u5de5\u5177\uff0c\u8fd9\u4e2a\u968f\u4fbf\uff0cnano\u548cvim basic\u90fd\u884c\uff0c\u4ec0\u4e48\u987a\u624b\u548c\u4e60\u60ef\u5c31\u7528\u4ec0\u4e48\u3002<\/span><\/p>\n<p id=\"u645789d4\" class=\"ne-p\"><a id=\"SrZe1\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/crontab_eg.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/crontab_eg.jpg\" \/><\/a><\/p>\n<p id=\"u3a983e41\" class=\"ne-p\"><span class=\"ne-text\">\u5982\u4e0a\u56fe\uff0c\u5c06\u6bcf\u969415\u5206\u949f\uff0c\u5c31\u4f1a\u4f7f\u7528\u4f4d\u4e8e<\/span><span class=\"ne-text\">usr\/bin<\/span><span class=\"ne-text\">\u4e2d\u7684<\/span><span class=\"ne-text\">python3<\/span><span class=\"ne-text\">\u8fd0\u884c\u4f4d\u4e8e<\/span><span class=\"ne-text\">\/usr\/local\/weather<\/span><span class=\"ne-text\">\u4e2d\u7684<\/span><span class=\"ne-text\">weather.py<\/span><span class=\"ne-text\">\u7a0b\u5e8f\u3002\u524d\u4e94\u4e2a\u661f\u53f7\u5176\u5b9e\u662f\u8bbe\u7f6e\u7684\u65f6\u95f4\uff0c\u63a8\u8350\u53bb<\/span> <a class=\"ne-link\" href=\"https:\/\/crontab.guru\/\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/crontab.guru\/\"><span class=\"ne-text\">https:\/\/crontab.guru\/<\/span><\/a> <span class=\"ne-text\">\u8fd9\u91cc\u76f4\u63a5\u8bbe\u7f6e\u65f6\u95f4\uff08\u5982\u4e0b\u56fe\uff09\u3002\u7b2c\u4e00\u4e2a\u661f\u53f7\u662f\u5206\u949f\uff0c\u7b2c\u4e8c\u4e2a\u661f\u53f7\u662f\u5c0f\u65f6\uff0c\u7b2c\u4e09\u4e2a\u661f\u53f7\u662f\u5929\uff0c\u7b2c\u56db\u4e2a\u661f\u53f7\u662f\u6708\u4efd\uff0c\u7b2c\u4e94\u4e2a\u661f\u53f7\u662f\u6bcf\u5468\u7684\u7b2c\u51e0\u5929\u3002<\/span><\/p>\n<p id=\"ub76eefdd\" class=\"ne-p\"><a id=\"ktmdb\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/crontab_set.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/crontab_set.jpg\" \/><\/a><\/p>\n<h2 id=\"bSvBE\"><span class=\"ne-text\">6 \u7cfb\u7edf\u6743\u9650<\/span><\/h2>\n<h3 id=\"iIdEg\"><span class=\"ne-text\">6.1 root\u548cuser\uff0c\u4ee5\u53casudo<\/span><\/h3>\n<p id=\"u0d320858\" class=\"ne-p\"><span class=\"ne-text\">\u4e0a\u8ff0\u5df2\u7ecf\u7b80\u5355\u7684\u51cf\u5c11\u4e86root\u6765\u6e90\uff0c\u7531\u4e8eroot\u7684\u6743\u9650\u592a\u9ad8\uff0c\u4ee5\u81f3\u4e8e\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\u53d1\u73b0\u5e76\u4e0d\u5b89\u5168\uff0c\u800c\u4e14\u4f5c\u4e3a\u4e00\u4e2a\u521d\u59cb\u76ee\u7684\u662f\u591a\u7528\u6237\u591a\u7ec8\u7aef\u7684\u64cd\u4f5c\u7cfb\u7edf\uff0cLinux\u4e3b\u8981\u64cd\u4f5c\u90fd\u4e0d\u9700\u8981\u53d1\u751f\u5728root\u7528\u6237\u4e0a\u7684\u3002\u6240\u4ee5\u8fd9\u91cc\u5c31\u6709\u4e86user\u8fd9\u4e2a\u89d2\u8272\uff0c\u5982\u679c\u7528\u6237\u591a\u4e86\u8d77\u6765\uff0c\u4e3a\u4e86\u4fbf\u4e8e\u7ba1\u7406\uff0c\u4e5f\u4f1a\u628a\u67d0\u4e9b\u7528\u6237\u5206\u7ec4\uff0c\u5c31\u6709\u4e86group\u7684\u6982\u5ff5\u3002\u4ee5\u4e0b\u6f14\u793a\u4f7f\u7528root\u7528\u6237\u65b0\u5efa\u4e00\u4e2auser\u7528\u6237\u5e76\u8fdb\u5165\u6b64\u7528\u6237\uff1a<\/span><\/p>\n<p id=\"u0611ef35\" class=\"ne-p\"><a id=\"KvOZL\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/adduser.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/adduser.jpg\" \/><\/a><\/p>\n<p id=\"u55ddb6df\" class=\"ne-p\"><span class=\"ne-text\">\u5982\u56fe\u6240\u793a\uff0c<\/span><span class=\"ne-text\">adduser mjj<\/span><span class=\"ne-text\">\u4e3a\u65b0\u5efa\u4e00\u4e2a\u53eb\u505amjj\u7684\u7528\u6237\uff0c\u7531\u4e8e\u6b64\u524d\u5e76\u6ca1\u6709\u9664\u4e86root\u4e4b\u5916\u7684\u7528\u6237\uff0c\u6240\u4ee5\u4f1a\u4f7f\u7528\u8fd9\u4e2a\u540d\u5b57\u4f5c\u4e3agroup\/\u7ec4\u7684\u540d\u5b57\uff0c\u5e76\u4e14\u5728\/home\u6587\u4ef6\u5939\u91cc\u9762\u751f\u6210\u4e00\u4e2amjj\u6587\u4ef6\u5939\uff0c\u5373mjj\u7684\u201d\u684c\u9762\u201c\u3002\u6240\u4ee5\u8f93\u5165\u4e24\u6b21\u5bc6\u7801\uff0c\u4e4b\u540e\u4f1a\u95ee\u4e00\u5806\u95ee\u9898\uff0c\u90fd\u662f\u4f8b\u884c\u7684\uff0c\u4e00\u8defenter\u5c31\u597d\uff0c\u6700\u540e\u4f1a\u95ee\u4e00\u4e0b\u4fe1\u606f\u5bf9\u4e0d\u5bf9\uff0c\u8f93\u5165y\u5c31\u5b8c\u6210\u6dfb\u52a0\u65b0\u7528\u6237\u4e86\u3002<\/span><\/p>\n<p id=\"uec34cd62\" class=\"ne-p\"><span class=\"ne-text\">\u4f46\u6b64\u65f6\uff0cmjj\u8fd9\u4e2a\u7528\u6237\u7684\u6743\u9650\u662f\u5f88\u5c0f\u7684\uff0c\u56db\u820d\u4e94\u5165\u7b49\u4e8e\u6ca1\u6709\uff0c\u8fde\u67d0\u4e9b\u6587\u4ef6\u5939\u90fd\u4e0d\u80fd\u8fdb\u53bb\u66f4\u522b\u8bf4\u6267\u884c\u8f6f\u4ef6\u4e86\u3002\u4f7f\u7528<\/span><span class=\"ne-text\">su mjj<\/span><span class=\"ne-text\">\u5207\u6362\u5230mjj\u7528\u6237\u4e2d\uff0c\u53ef\u4ee5\u5728\u7ec8\u7aef\u4e2d\u770b\u5230\u5df2\u7ecf\u4eceroot@rn\u53d8\u6210\u4e86mjj@rn\uff0crn\u662f\u8fd9\u53f0\u670d\u52a1\u5668\u7684\u540d\u5b57\uff0c\u5373\u4e3a\u67d0\u67d0\u5728rn\u8fd9\u53f0\u670d\u52a1\u5668\u4e0a\u3002\u67e5\u770b\u4ee5\u4e0broot\u6587\u4ef6\u5939\u4e0b\u6709\u4e9b\u4ec0\u4e48\u4e1c\u897f\uff0c\u7ed3\u679c\u53d1\u73b0\u6743\u9650\u4e0d\u591f\u800c\u88ab\u62d2\u7edd\u8bbf\u95ee\/Permission denied\u3002<\/span><\/p>\n<p id=\"ue045569b\" class=\"ne-p\"><a id=\"mnMAi\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/sudo.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/sudo.jpg\" \/><\/a><\/p>\n<p id=\"u296c2937\" class=\"ne-p\"><span class=\"ne-text\">\u6240\u4ee5\u6211\u4eec\u8981\u7ed9\u4e00\u4e2a\u80fd\u591f\u4e34\u65f6\u4f7f\u7528root\u6743\u9650\u7684\u80fd\u529b\uff0c\u8fd9\u88ab\u79f0\u4e3a<\/span><span class=\"ne-text\">sudo<\/span><span class=\"ne-text\">\u3002<\/span><\/p>\n<pre id=\"fthzt\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>su root #\u5207\u6362\u56deroot\u8d26\u53f7\r\napt install sudo -y #\u6709\u4e9b\u65f6\u5019\uff0c\u7eaf\u51c0\u5b89\u88c5\u7684Debian\u7cfb\u7edf\u662f\u6ca1\u6709sudo\u7684\uff0c\u6240\u4ee5\u8981\u5b89\u88c5\u4e00\u4e0b\r\nusermod -aG sudo mjj ##\u7ed9\u4e88mjj\u7528\u6237sudo\u6743\u9650<\/code><\/pre>\n<p id=\"u5d1d69c9\" class=\"ne-p\"><span class=\"ne-text\">\u6b64\u65f6\uff0c\u6211\u4eec\u518d\u5207\u6362\u5230mjj\u7528\u6237\u4e0a\uff0c\u5728\u521a\u624d\u7684\u547d\u4ee4\u524d\u52a0\u4e0asudo\uff0c\u4e34\u65f6\u83b7\u53d6root\u6743\u9650\uff0c\u5c31\u53ef\u4ee5\u67e5\u770b\u4e86\uff1a<\/span><\/p>\n<p id=\"uad22542e\" class=\"ne-p\"><a id=\"hTKTE\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/sudo_root.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/sudo_root.jpg\" \/><\/a><\/p>\n<p id=\"u76b08bd9\" class=\"ne-p\"><span class=\"ne-text\">\u5728\u7528\u6237\u9996\u6b21\u4f7f\u7528root\u6743\u9650\u7684\u65f6\u5019\uff0c\u7cfb\u7edf\u4f1a\u63d0\u793a\u4e09\u4e2a\u51c6\u5219\uff0c\u4e5f\u8bf7\u8c28\u8bb0\uff1a<\/span><\/p>\n<ol class=\"ne-ol\">\n<li id=\"u4353c87f\" data-lake-index-type=\"0\"><span class=\"ne-text\">\u5c0a\u91cd\u4ed6\u4eba\u9690\u79c1\uff1b<\/span><\/li>\n<li id=\"ueccee3d6\" data-lake-index-type=\"0\"><span class=\"ne-text\">\u8f93\u5165\u4e4b\u524d\u8bf7\u4e09\u601d\uff1b<\/span><\/li>\n<li id=\"u9247eca2\" data-lake-index-type=\"0\"><span class=\"ne-text\">\u80fd\u529b\u8d8a\u5927\uff0c\u8d23\u4efb\u8d8a\u5927\u3002<\/span><\/li>\n<\/ol>\n<h3 id=\"VwchY\"><span class=\"ne-text\">6.2 chmod\u548cchown<\/span><\/h3>\n<p id=\"u1bba8c46\" class=\"ne-p\"><span class=\"ne-text\">chmod\u7684\u5168\u79f0\u662fchange mode\uff0c\u662f\u9488\u5bf9\u4e8e\u6587\u4ef6\u5939\u6216\u8005\u6587\u4ef6\uff0c\u6539\u53d8\u5b83\u4eec\u7684\u6743\u9650\uff0c\u8fd9\u6837\u5c31\u53ef\u4ee5\u8ba9\u67d0\u4e9b\u7528\u6237\u6b63\u5e38\u4f7f\u7528\u4e86\u3002\u8fd9\u91cc\u4e0d\u6df1\u5165\u63a2\u8ba8chmod\u7684\u4f7f\u7528\u8be6\u89e3\uff0c\u4ec5\u6f14\u793a\u4e00\u4e9b\u5e38\u89c1\u7684\u5185\u5bb9\u3002<\/span><span class=\"ne-text\">chmod +x helloworld.py<\/span> <span class=\"ne-text\">\u8fd9\u91cc\u7684<\/span><span class=\"ne-text\">x<\/span><span class=\"ne-text\">\u5728\u4e0a\u9762\u8bf4\u8fc7\uff0c\u662f\u6267\u884c\u7684\u610f\u601d\uff0c\u5373\u8d4b\u4e88\u6b64\u7a0b\u5e8f\u88ab\u6267\u884c\u7684\u6743\u9650\uff0c\u591a\u89c1\u4e8e\u4e00\u952e\u811a\u672c\u91cc\u9762\uff0c\u8ba9\u811a\u672c\u80fd\u591f\u6b63\u5e38\u8fd0\u884c\u3002<\/span><span class=\"ne-text\">+<\/span><span class=\"ne-text\">\u662f\u65b0\u589e\u6743\u9650\uff0c\u5982\u679c\u662f<\/span><span class=\"ne-text\">&#8211;<\/span><span class=\"ne-text\">\u5219\u662f\u53bb\u9664\u5bf9\u5e94\u7684\u6743\u9650\u3002<\/span><span class=\"ne-text\">chmod -R 755 folder\/<\/span> <span class=\"ne-text\">-R<\/span><span class=\"ne-text\">\u5982\u4e0a\u8ff0\u7684<\/span><span class=\"ne-text\">rm -rf<\/span><span class=\"ne-text\">\u4e2d\u7684<\/span><span class=\"ne-text\">r<\/span><span class=\"ne-text\">\u4e00\u6837\uff0c\u662f\u9012\u5f52\uff0c\u5373\u4ece\u8fd9\u91cc\u5f00\u59cb\uff0c\u4e0b\u9762\u4e0d\u8bba\u591a\u5c11\u5c42\u6587\u4ef6\u5939\uff0c\u90fd\u6267\u884c\u8fd9\u4e2a\u547d\u4ee4\u3002<\/span><span class=\"ne-text\">755<\/span><span class=\"ne-text\">\u662f\u6362\u7b97\u4e0b\u6765\uff0c\u5219\u662froot\u7528\u6237\u53ef\u4ee5\u8bfb\u5199\u6267\u884c\uff081+2+4=7\uff09\uff0c\u7528\u6237\u548c\u7528\u6237\u7ec4\u53ea\u80fd\u8bfb\u548c\u6267\u884c\uff081+4=5\uff09\uff0c\u4e0d\u80fd\u5bf9\u6587\u4ef6\u8fdb\u884c\u66f4\u6539\u3002\u67d0\u4e9b\u7a0b\u5e8f\u4f1a\u5bf9\u6587\u4ef6\u7684\u6743\u9650\u6709\u7740\u6781\u5176\u4e25\u91cd\u7684\u63a7\u5236\uff0c\u6bd4\u5982\u4e0a\u8bf4\u7684SSH\u5bc6\u94a5\uff0c\u5206\u522b\u7ed9<\/span><span class=\"ne-text\">authorized_keys<\/span><span class=\"ne-text\">600\u7684\u6743\u9650\u548c<\/span><span class=\"ne-text\">.ssh<\/span><span class=\"ne-text\">\u6587\u4ef6\u5939700\u7684\u6743\u9650\uff0c\u610f\u5473\u7740\u53ea\u80fd\u88ab\u6240\u6709\u8005\/owner\u8bfb\u5199\uff0c\u5728\u4f8b\u5b50\u4e2d\u5373\u4e3a\u53ea\u80fd\u88abroot\u8d26\u6237\u8bfb\u5199\u3002\u8fd9\u79cd\u8bbe\u8ba1\u8ba9\u6ca1\u6709\u76f8\u5e94\u6743\u9650\u7684\u4eba\u65e0\u6cd5\u4fee\u6539\u5bc6\u94a5\u767b\u9646\u7684\u65b9\u5f0f\uff0c\u6362\u800c\u8a00\u4e4b\uff0c\u9694\u7edd\u4e86\u7528\u6237\u4e4b\u95f4\u7684\u64cd\u4f5c\uff0c\u4ece\u800c\u589e\u5f3a\u5b89\u5168\u6027\u3002<\/span><\/p>\n<p id=\"u2b333a94\" class=\"ne-p\"><span class=\"ne-text\">chown\u7684\u5168\u79f0\u662fchange owner\uff0c\u662f\u7528\u4e8e\u8bbe\u7f6e\u6587\u4ef6\u6240\u6709\u6743\u7684\u3002\u7531\u4e8e<\/span><span class=\"ne-text\">\u5f52\u5c5e\u8005<\/span><span class=\"ne-text\">\u7684\u6982\u5ff5\u5e76\u6ca1\u6709\u6587\u4ef6\u8fd9\u4e2a\u6982\u5ff5\u5e38\u89c1\uff0c\u6240\u6709chown\u6bd4\u8f83\u5c11\u89c1\u5230\uff0c\u5927\u591a\u6570\u4eba\u63a5\u89e6\u5230\u7684\u65f6\u5019\uff0c\u5927\u6982\u662f\u5efa\u7f51\u7ad9\u7684\u65f6\u5019\u7528<\/span><span class=\"ne-text\">chown -R www-data:www-data-group \/var\/www\/html<\/span><span class=\"ne-text\">\u6765\u786e\u5b9a\u6587\u4ef6\u5173\u8054\u3002\u8fd9\u53e5\u7684\u610f\u601d\u662f\uff0c\u5c06<\/span><span class=\"ne-text\">\/var\/www\/html<\/span><span class=\"ne-text\">\u8fd9\u4e2a\u6587\u4ef6\u5939\u53ca\u91cc\u9762\u7684\u6240\u6709\u6587\u4ef6\u90fd\u5f52\u7ed9<\/span><span class=\"ne-text\">www-data-group<\/span><span class=\"ne-text\">\u7528\u6237\u7ec4\u7684<\/span><span class=\"ne-text\">www-data<\/span><span class=\"ne-text\">\u7528\u6237\u3002\u8fd9\u6837\u505a\u7684\u76ee\u7684\u662f\u5b9e\u73b0\u6743\u9650\u5206\u79bb\uff0c\u6587\u4ef6\u5206\u79bb\uff0c\u4ece\u800c\u8ba9\u670d\u52a1\u5668\u53ef\u4ee5\u66f4\u65b9\u4fbf\u7684\u88ab\u7ef4\u62a4\uff0c\u4ee5\u53ca\u660e\u786e\u4f7f\u7528\u9014\u5f84\u3002\u4e0d\u8fc7\u8003\u8651\u5230mjj\u5927\u90e8\u5206\u90fd\u662f\u4f7f\u7528VPS\u7684\uff0c\u53ef\u80fd\u5f88\u96be\u9047\u5230\u9700\u8981chown\u7684\u60c5\u51b5\u5427\u3002<\/span><\/p>\n<p id=\"udda75bd2\" class=\"ne-p\"><span class=\"ne-text\">\u4e0d\u8981<\/span><span class=\"ne-text\">chmod +777<\/span><span class=\"ne-text\">\uff01\u4e0d\u8981<\/span><span class=\"ne-text\">chmod +777<\/span><span class=\"ne-text\">\uff01\u4e0d\u8981<\/span><span class=\"ne-text\">chmod +777<\/span><span class=\"ne-text\">\uff01<\/span><strong><span class=\"ne-text\">\u4eba\u624d\u662f\u670d\u52a1\u5668\u5b89\u5168\u7684\u6700\u5927\u6f0f\u6d1e\uff01<\/span><\/strong><\/p>\n<h2 id=\"j7JnX\"><span class=\"ne-text\">7 Systemd\u5165\u95e8\u548c\u914d\u7f6e<\/span><\/h2>\n<h3 id=\"VDv3I\"><span class=\"ne-text\">7.1 \u5f00\u673a\u81ea\u542f\u548c\u8fdb\u7a0b\u5b88\u62a4<\/span><\/h3>\n<p id=\"ue1df5a45\" class=\"ne-p\"><span class=\"ne-text\">Systemd\u662f\u7531Redhat\u5bb6\u7684Lennart Poettering\u5f00\u53d1\u7684\uff0c\u5176\u4eba\u4ee5\u521b\u9020\u6027\u548c\u4e0d\u9760\u8c31\u95fb\u540d\uff0cSystemd\u5728\u6700\u5f00\u59cb\u7684\u65f6\u5019\uff0c\u548cinit\u76f8\u6bd4\u6ca1\u6709\u660e\u663e\u4f18\u52bf\uff0c\u7ecf\u8fc7\u591a\u6b21\u8fed\u4ee3\u624d\u6709\u4e86\u4eca\u5929\u7684\u7a33\u5b9a\u6027\u548c\u9002\u7528\u6027\uff0c\u73b0\u5728\u5c31\u8ba9\u8001\u65e7\u7684init\u8fdb\u5165\u5386\u53f2\u5783\u573e\u6876\u5427\u3002\u4e8b\u5b9e\u4e0a\uff0c\u5728Linux\u7cfb\u7edf\u542f\u52a8\u7684\u65f6\u5019\uff0c\u4e00\u65e6kernel\u8fd0\u884c\u4e86\uff0cSystemd\u5c31\u4f1a\u8ddf\u968f\u542f\u52a8\uff0c\u4e4b\u540e\u7531Systemd\u5524\u9192\u5e76\u7ef4\u62a4\u5404\u4e2a\u7a0b\u5e8f\u7684\u6b63\u5e38\u8fd0\u884c\uff0c\u6bd4\u5982\u7f51\u5361\uff0c\u663e\u793a\u5668\uff0cSSH\u670d\u52a1\u7b49\u3002\u4f60\u4f1a\u5728<\/span><span class=\"ne-text\">\/etc\/systemd\/system\/<\/span><span class=\"ne-text\">\u6587\u4ef6\u5939\u4e2d\u53d1\u73b0\u4e00\u4e2a\u53eb\u505a<\/span><span class=\"ne-text\">sshd.service<\/span><span class=\"ne-text\">\u7684\u6587\u4ef6\uff0c\u5e76\u4e14\u8fd8\u662fenable\u6a21\u5f0f\u7684\uff0c\u8fd9\u610f\u5473\u7740SSH\u662f<\/span><span class=\"ne-text\">\u5f00\u673a\u81ea\u542f<\/span><span class=\"ne-text\">\u7684\uff0c\u5e76\u4e14\u7cfb\u7edf\u4f1a\u4e00\u76f4\u76d1\u63a7\u8fd9\u8fd9\u4e2a\u7a0b\u5e8f\uff0c\u5982\u679c\u7a0b\u5e8f\u5d29\u6e83\uff0c\u7cfb\u7edf\u4f1a\u5c1d\u8bd5\u81ea\u52a8\u91cd\u542f\u5b83\u4ee5\u786e\u4fdd\u80fd\u591f\u6b63\u5e38\u8fd0\u884c\u3002<\/span><\/p>\n<p id=\"u4e57fd7b\" class=\"ne-p\"><span class=\"ne-text\">\u4ee5\u8457\u540d\u7684\u5185\u7f51\u7a7f\u900f<\/span><span class=\"ne-text\">frp<\/span><span class=\"ne-text\">\u7684\u670d\u52a1\u5668\u7aef\u7684Systemd\u6587\u4ef6\u4e3a\u4f8b\uff08\u4e0b\u8282\u5c06\u8be6\u7ec6\u4ecb\u7ecd\u5982\u4f55\u642d\u5efafrp\uff09\uff0c\u5c06<\/span><span class=\"ne-text\">frps.service<\/span><span class=\"ne-text\">\u653e\u5230<\/span><span class=\"ne-text\">\/etc\/systemd\/system\/<\/span><span class=\"ne-text\">\u6587\u4ef6\u5939\u4e2d\uff0c\u4f7f\u7528\u4ee5\u4e0b\u547d\u4ee4<\/span><\/p>\n<pre id=\"RVVLA\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>systemctl enable frps.service\r\nsystemctl start frps.service\r\nsystemctl status frps.service\r\nsystemctl restart frps.service<\/code><\/pre>\n<p id=\"u15ba94a9\" class=\"ne-p\"><span class=\"ne-text\">systemctl\u662fsystemd\u5728\u7cfb\u7edf\u4e2d\u7684\u7a0b\u5e8f\u540d\u5b57\uff0cenable\u662f\u6307\u8ba9\u8fd9\u4e2a\u7a0b\u5e8f\u80fd\u591f\u5f00\u673a\u81ea\u542f\uff0cstart\u4e3a\u8ba9\u7a0b\u5e8f\u73b0\u5c31\u8fd0\u884c\uff0cstatus\u662f\u67e5\u770b\u8fd9\u4e2a\u7a0b\u5e8f\u73b0\u5728\u7684\u72b6\u6001\uff0crestart\u662f\u91cd\u542f\u7a0b\u5e8f\u3002<\/span><\/p>\n<p id=\"ucafbb6d5\" class=\"ne-p\"><span class=\"ne-text\">\u5f53\u7136\uff0c\u6211\u4eec\u4e5f\u53ef\u4ee5\u81ea\u5df1\u5199systemd\u7684service\u6587\u4ef6\uff0c\u8fd9\u91cc\u4ee5<\/span> <a class=\"ne-link\" href=\"https:\/\/github.com\/cnsilvan\/UnblockNeteaseMusic\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/github.com\/cnsilvan\/UnblockNeteaseMusic\"><span class=\"ne-text\">https:\/\/github.com\/cnsilvan\/UnblockNeteaseMusic<\/span><\/a> <span class=\"ne-text\">\u89e3\u9501\u7f51\u6613\u4e91\u97f3\u4e50\u7684\u7a0b\u5e8f\u505a\u53c2\u8003<\/span><\/p>\n<pre id=\"DZUE9\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>[Unit]\r\nDescription=UnblockNeteaseMusic\r\nAfter=network.target\r\nWants=network.target\r\n\r\n[Service]\r\nType=simple\r\nWorkingDirectory=\/usr\/local\/UnblockNeteaseMusic\r\nExecStart=\/usr\/bin\/node app.js -e http:\/\/music.163.com -s -p 8888\r\nRestartPreventExitStatus=23\r\nRestart=always\r\n\r\n[Install]\r\nWantedBy=multi-user.target<\/code><\/pre>\n<p id=\"u08160189\" class=\"ne-p\"><span class=\"ne-text\">\u4e00\u5171\u5206\u4e3a\u4e09\u7ec4\uff0c\u5206\u522b\u4e3aUnit\uff0cService\u548cInstall\u3002Unit\u662f\u8fd9\u4e2a\u670d\u52a1\u7684\u540d\u79f0\uff0c\u793a\u4f8b\u4e2d\u4e3a<\/span><span class=\"ne-text\">UnblockNeteaseMusic<\/span><span class=\"ne-text\">\u800c<\/span><span class=\"ne-text\">After<\/span><span class=\"ne-text\">\u548c<\/span><span class=\"ne-text\">Wants<\/span><span class=\"ne-text\">\u6307\u660e\u7684<\/span><span class=\"ne-text\">network.target<\/span><span class=\"ne-text\">\u610f\u5473\u5e0c\u671b\u8fd9\u4e2a\u7a0b\u5e8f\u5728\u7f51\u7edc\u670d\u52a1\u542f\u52a8\u540e\u518d\u542f\u52a8\uff0c\u6bd5\u7adf\u662f\u4e2a\u7f51\u7edc\u529f\u80fd\uff0c\u4e0d\u80fd\u8fd8\u6ca1\u6709\u7f51\u5c31\u542f\u52a8\u4e86\u3002Service\u662f\u6838\u5fc3\u90e8\u5206\uff0c<\/span><span class=\"ne-text\">Type<\/span><span class=\"ne-text\">\u6307\u5b9a\u4e86\u7c7b\u578b,<\/span><span class=\"ne-text\">Simple<\/span><span class=\"ne-text\">\u662f\u9ed8\u8ba4\u7684\u7c7b\u578b\uff0c\u53d1\u73b0\u6709\u7f51\u4e86\u5c31\u542f\u52a8\u3002\u6b64\u5916\uff0c\u5e38\u89c1\u7684\u8fd8\u6709<\/span><span class=\"ne-text\">fork<\/span><span class=\"ne-text\">\u548c<\/span><span class=\"ne-text\">idle<\/span><span class=\"ne-text\">\uff0c\u524d\u8005\u610f\u5473\u7740\u7a0b\u5e8f\u4f9d\u8d56\u4e8e\u53e6\u5916\u4e00\u4e2a\u7a0b\u5e8f\u7684\u8fd0\u884c\uff0c\u901a\u5e38\u8fd8\u4f1a\u914d\u7f6e<\/span><span class=\"ne-text\">PIDFile<\/span><span class=\"ne-text\">\uff0c\u540e\u8005\u662f\u7b49\u7cfb\u7edf\u7a7a\u95f2\u4e86\u518d\u542f\u52a8\uff0c\u5c5e\u4e8e\u4e00\u70b9\u90fd\u4e0d\u6025\u7684\u3002<\/span><span class=\"ne-text\">WorkingDirectory<\/span><span class=\"ne-text\">\u662f\u5de5\u4f5c\u76ee\u5f55\uff0c<\/span><span class=\"ne-text\">ExecStart<\/span><span class=\"ne-text\">\u662f\u6267\u884c\u7684\u547d\u4ee4\uff0c\u5b9e\u4f8b\u4e2d\uff0c\u662f\u7528\u4f4d\u4e8e<\/span><span class=\"ne-text\">\/usr\/bin\/<\/span><span class=\"ne-text\">\u7684nodejs\u6267\u884c\u4f4d\u4e8e\u5de5\u4f5c\u76ee\u5f55\u7684<\/span><span class=\"ne-text\">app.js<\/span><span class=\"ne-text\">\u8fd9\u4e2a\u6587\u4ef6\uff0c\u5e76\u4e14\u8fd8\u5e26\u4e86\u53c2\u6570<\/span><span class=\"ne-text\">http:\/\/music.163.com -s -p 8888<\/span><span class=\"ne-text\">\u3002<\/span><span class=\"ne-text\">RestartPreventExitStatus<\/span><span class=\"ne-text\">\u662f\u6307\u5982\u679c\u62a5\u9519\u4fe1\u606f\u4e3a<\/span><span class=\"ne-text\">23<\/span><span class=\"ne-text\">\u5219\u4e0d\u4f1a\u518d\u91cd\u542f\u4e86\uff0c\u5177\u4f53\u62a5\u9519\u4fe1\u606f\u662f\u8fd0\u884c\u7684\u7a0b\u5e8f\u51b3\u5b9a\u7684\u3002<\/span><span class=\"ne-text\">Restart=always<\/span><span class=\"ne-text\">\u6307\u53ea\u8981\u4e0d\u662f23\u7684\u62a5\u9519\u4fe1\u606f\uff0c\u90a3\u5c31\u4e00\u65e6\u670d\u52a1\u505c\u4e86\uff0cSystemd\u5c31\u4f1a\u53bb\u91cd\u542f\u3002\u6700\u540e\u4e00\u90e8\u5206\uff0cInstall\u4e2d\u7684<\/span><span class=\"ne-text\">WantedBy=multi-user.target<\/span><span class=\"ne-text\">\u6307\u7f51\u7edc\u670d\u52a1\u5df2\u7ecf\u6b63\u5e38\u542f\u52a8\uff0c\u4e5f\u53ef\u4ee5\u8ba9\u7528\u6237\u767b\u5f55\u4e86\uff0c\u4f46\u662f\u5e76\u6ca1\u6709\u5f00\u542fGUI\u670d\u52a1\uff0c\u8fd9\u4e2a\u90e8\u5206\u4e0d\u7528\u53bb\u63a2\u7a76\u3002<\/span><\/p>\n<h3 id=\"tsKYd\"><span class=\"ne-text\">7.2 Timer\u4ee3\u66ffCrontab<\/span><\/h3>\n<p id=\"u0134f3ce\" class=\"ne-p\"><span class=\"ne-text\">\u6211\u5199\u4e86\u4e00\u4e2a\u81ea\u52a8\u767b\u5f55\u767e\u5ea6\u8d34\u5427\u5e76\u7b7e\u5230\u7684shell\u811a\u672c\uff0c\u60f3\u6bcf\u5929\u90fd\u8fd0\u884c\u4e00\u6b21\u5e2e\u6211\u62ff\u79ef\u5206\uff0c\u4f46\u662f\u53c8\u4e0d\u60f3\u7528crontab\u5b9e\u73b0\u5b9a\u65f6\u4efb\u52a1\uff0c\u90a3\u4e48Systemd\u4e5f\u662f\u6709\u7c7b\u4f3c\u7684\u529f\u80fd\u7684\uff0c\u540d\u5b57\u53eb\u505aTimer\uff0c\u5373\u5b9a\u65f6\u5668\u3002\u8fd9\u4e2a\u529f\u80fd\u9700\u8981\u4e24\u4e2a\u6587\u4ef6\uff0c\u6bd4\u8f83\u7e41\u7410\u3002<\/span><\/p>\n<p id=\"u807a72e2\" class=\"ne-p\"><span class=\"ne-text\">\u9700\u8981\u518d<\/span><span class=\"ne-text\">\/etc\/systemd\/system\/<\/span><span class=\"ne-text\">\u4e2d\u5199\u4e24\u4efd\u914d\u7f6e\u6587\u4ef6\uff0c<\/span><span class=\"ne-text\">tieba.service<\/span><span class=\"ne-text\">\u548c<\/span><span class=\"ne-text\">tieba.timer<\/span><span class=\"ne-text\">\uff0c\u524d\u7f00\u5fc5\u987b\u4e00\u6837\uff0c\u540e\u7f00\u4e0d\u540c\u3002<\/span><\/p>\n<p id=\"u7e4f025f\" class=\"ne-p\"><span class=\"ne-text\">\u524d\u8005\u5f88\u7b80\u5355\uff0c\u5c31\u662f\u4e2a\u811a\u672c\uff08\u5982\u4e0b\uff09\uff0c\u540d\u5b57\u548c\u7a0b\u5e8f\u7684\u8def\u5f84\uff1a<\/span><\/p>\n<pre id=\"UGqrF\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>[Unit]\r\nDescription=Tieba Sign\r\n\r\n[Service]\r\nExecStart=\/home\/tieba.sh<\/code><\/pre>\n<p id=\"u032f00c7\" class=\"ne-p\"><span class=\"ne-text\">\u540e\u8005<\/span><span class=\"ne-text\">tieba.timer<\/span><span class=\"ne-text\">\u9700\u8981\u8be6\u7ec6\u89e3\u91ca\uff1a<\/span><\/p>\n<pre id=\"x3CPH\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>[Unit]\r\nDescription=Tieba Sign Timer\r\n\r\n[Timer]\r\nOnCalendar=*-*-* 12:00:00\r\n\r\n[Install]\r\nWantedBy=timers.target<\/code><\/pre>\n<p id=\"u2df2529c\" class=\"ne-p\"><span class=\"ne-text\">Timer\u7684\u540d\u79f0\u9700\u8981\u662fservice\u540d\u5b57\u540e\u9762\u52a0\u4e00\u4e2aTimer\uff0c\u7528\u4ee5\u63d0\u9ad8\u51c6\u786e\u6027\u3002<\/span><span class=\"ne-text\">OnCalendar<\/span><span class=\"ne-text\">\u7c7b\u4f3c\u4e8e<\/span><span class=\"ne-text\">corntab<\/span><span class=\"ne-text\">\u7684<\/span><span class=\"ne-text\">* * * * *<\/span><span class=\"ne-text\">\uff0c\u5b9e\u4f8b\u4e2d\u7684\u610f\u5473\u6bcf\u5929\u4e2d\u534812\u70b9\u7684\u65f6\u5019\u6267\u884c\u4ee5\u4e0b<\/span><span class=\"ne-text\">tieba.service<\/span><span class=\"ne-text\">\u4e2d\u7684\u4f4d\u4e8e<\/span><span class=\"ne-text\">\/home<\/span><span class=\"ne-text\">\u6587\u4ef6\u5939\u7684<\/span><span class=\"ne-text\">tieba.sh<\/span><span class=\"ne-text\">\u8fd9\u4e2a\u7a0b\u5e8f\u3002\u6b64\u5904\u7684<\/span><span class=\"ne-text\">WantedBy<\/span><span class=\"ne-text\">\u662f<\/span><span class=\"ne-text\">timers.target<\/span><span class=\"ne-text\">\uff0c\u6307\u660e\u662f\u4e2a\u5b9a\u65f6\u5668\u3002<\/span><\/p>\n<h2 id=\"qISHS\"><span class=\"ne-text\">8 \u624b\u52a8\u914d\u7f6e\u7cfb\u7edf\uff1a\u4ee5frp\u4e3a\u4f8b<\/span><\/h2>\n<p id=\"u386a9e38\" class=\"ne-p\"><span class=\"ne-text\">frp\u662f\u4e2a\u5185\u7f51\u7a7f\u900f\u8f6f\u4ef6\uff0c\u53ef\u4ee5\u5c06\u5c40\u57df\u7f51\u8bbe\u5907\u901a\u8fc7frp\u670d\u52a1\u7aef\u6620\u5c04\u51fa\u6765\uff0c\u5b9e\u73b0\u516c\u7f51\u670d\u52a1\uff0c\u5e38\u89c1\u7684\u6709SSH\u3001http\/https\u670d\u52a1\u7b49\u3002\u8fd9\u91cc\u4ee5\u5c06\u5185\u7f51\u8bbe\u5907\u7684SSH\u6620\u5c04\u5230\u6709\u516c\u7f51IP\u7684\u670d\u52a1\u5668\u4e0a\u4e3a\u4f8b\uff0c\u4ece\u800c\u4e0d\u5728\u5bb6\u4e5f\u80fd\u670d\u52a1\u5bb6\u91cc\u9762\u7684\u670d\u52a1\u5668\u4e86\u3002<\/span><\/p>\n<p id=\"ue6e6df42\" class=\"ne-p\"><span class=\"ne-text\">\u5728\u8fd9\u91cc\u4e0b\u8f7d\u6700\u65b0\u7248\u7684\u5b89\u88c5\u5305<\/span> <a class=\"ne-link\" href=\"https:\/\/github.com\/fatedier\/frp\/releases\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/github.com\/fatedier\/frp\/releases\"><span class=\"ne-text\">https:\/\/github.com\/fatedier\/frp\/releases<\/span><\/a><\/p>\n<p id=\"u429be0a1\" class=\"ne-p\"><a id=\"JIFxn\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/frp_tar.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/frp_tar.jpg\" \/><\/a><\/p>\n<p id=\"u68de7b65\" class=\"ne-p\"><span class=\"ne-text\">\u5982\u56fe\u6240\u793a\uff0c0.38.0\u662f\u7248\u672c\u53f7\uff1b\u540e\u9762\u7684\u662f\u7cfb\u7edf\uff0cdarwin\u662fMacOS\uff0cfreebsd\u662fUNIX\u7684\u4e00\u4e2a\u5206\u652f\uff0c\u8fd9\u91cc\u6211\u4eec\u9009\u62e9linux\uff1b\u7d27\u8ddf\u7740\u7684\u662fCPU\u67b6\u6784\uff0c\u7531\u4e8e\u672c\u6b21\u670d\u52a1\u5668\u7684\u5ba2\u6237\u7aef\u662f\u88c5\u4e8664\u4f4d\u7cfb\u7edf\u7684\u6811\u8393\u6d3e4B\uff08arm\u67b6\u6784\u7684CPU\uff09\uff0c\u6240\u4ee5\u9009\u62e9<\/span><span class=\"ne-text\">frp_0.38.0_linux_arm64.tar.gz<\/span><span class=\"ne-text\">\uff0c\u800c\u670d\u52a1\u7aef\u662f\u666e\u901a\u7684VPS\uff0c\u6240\u4ee5\u9009\u62e9<\/span><span class=\"ne-text\">frp_0.38.0_linux_amd64.tar.gz<\/span><span class=\"ne-text\">\u3002<\/span><\/p>\n<p id=\"u4d73695d\" class=\"ne-p\"><strong><span class=\"ne-text\">\u670d\u52a1\u7aef\u914d\u7f6e<\/span><\/strong><\/p>\n<p id=\"uf98569b7\" class=\"ne-p\"><span class=\"ne-text\">\u6ce8\u610f\uff1a\u7248\u672c\u53f7\u548cCPU\u67b6\u6784\u987b\u6309\u7167\u5b9e\u9645\u60c5\u51b5\u51b3\u5b9a\u3002<\/span><\/p>\n<pre id=\"v7CYX\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>wget https:\/\/github.com\/fatedier\/frp\/releases\/download\/v0.38.0\/frp_0.38.0_linux_amd64.tar.gz\r\n# \u4f7f\u7528wget\u4e0b\u8f7d\u8f6f\u4ef6\u5305\r\ntar -zxvf frp_0.38.0_linux_amd64.tar.gz\r\n# \u89e3\u538b\u4e0b\u8f7d\u7684\u8f6f\u4ef6\u5305\r\ncd frp_0.38.0_linux_amd64\/\r\n# \u8fdb\u5165\u89e3\u538b\u540e\u7684\u6587\u4ef6\u5939\r\nmkdir \/etc\/frp\/\r\n# \u65b0\u5efa\u4e00\u4e2afrp\u7684\u6587\u4ef6\u5939\r\nmv frps.ini \/etc\/frp\/frps.ini\r\n# \u628a\u670d\u52a1\u5668\u7aef\u7684\u914d\u7f6e\u6587\u4ef6\u653e\u5230\u521a\u624d\u65b0\u5efa\u7684\u6587\u4ef6\u5939\r\nmv frps \/bin\/\r\n# \u628a\u670d\u52a1\u5668\u7aef\u8f6f\u4ef6\u653e\u5230\/bin\u4e2d\r\nmv systemd\/frps.service \/etc\/systemd\/system\/frps.service\r\n# \u653e\u7f6eSystemd\u6587\u4ef6\r\nsystemctl enable frps.service\r\n# \u8bbe\u7f6e\u5f00\u673a\u81ea\u542f\r\nsystemctl start frps.service\r\n# \u7acb\u5373\u8fd0\u884c<\/code><\/pre>\n<p id=\"ucc7a440a\" class=\"ne-p\"><strong><span class=\"ne-text\">\u5ba2\u6237\u7aef\u914d\u7f6e<\/span><\/strong><\/p>\n<pre id=\"BRa94\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>wget https:\/\/github.com\/fatedier\/frp\/releases\/download\/v0.38.0\/frp_0.38.0_linux_arm.tar.gz\r\ntar -zxvf frp_0.38.0_linux_arm.tar.gz\r\ncd frp_0.38.0_linux_arm\/\r\nmkdir \/etc\/frp\/\r\nmv frpc.ini \/etc\/frp\/frpc.ini\r\nmv frpc \/bin\/\r\nmv systemd\/frpc.service \/etc\/systemd\/system\/frpc.service<\/code><\/pre>\n<p id=\"uc325f061\" class=\"ne-p\"><span class=\"ne-text\">\u4e0a\u8ff0\u4e0e\u670d\u52a1\u5668\u914d\u7f6e\u7c7b\u4f3c\uff0c\u5c31\u4e0d\u91cd\u590d\u4e86\uff0c\u4f46\u9700\u8981\u989d\u5916\u4fee\u6539\u670d\u52a1\u7aef\u7684\u914d\u7f6e\u6587\u4ef6\uff0c\u8ba9\u5b83\u77e5\u9053\u8be5\u548c\u8c01\u8fde\u63a5\uff0c\u6253\u5f00<\/span><span class=\"ne-text\">\/etc\/frp\/frpc.ini<\/span><span class=\"ne-text\">\u914d\u7f6e\u6587\u4ef6<\/span><\/p>\n<pre id=\"VNS7q\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>[common]\r\nserver_addr = \u670d\u52a1\u5668ip\r\nserver_port = 7000\r\n\r\n[raspi]\r\ntype = tcp\r\nlocal_ip = 127.0.0.1\r\nlocal_port = \u672c\u5730\u670d\u52a1\u5668\u7684SSH\u7aef\u53e3\r\nremote_port = \u8fdc\u7a0b\u7aef\u53e3<\/code><\/pre>\n<p id=\"u1df9189d\" class=\"ne-p\"><span class=\"ne-text\">\u5176\u4e2d\uff0c\u9700\u8981\u586b\u5199\u670d\u52a1\u5668\u7aef\u7684IP\uff0c7000\u7aef\u53e3\u662f\u63e1\u624b\u548c\u4fdd\u6d3b\u7528\u7684\uff0c\u9ed8\u8ba4\u5c31\u597d\u4e86\u3002<\/span><span class=\"ne-text\">[raspi]<\/span><span class=\"ne-text\">\u662f\u5ba2\u6237\u7aef\u7684\u540d\u5b57\uff0c\u4e0d\u53ef\u4ee5\u91cd\u590d\uff0c<\/span><span class=\"ne-text\">local_port<\/span><span class=\"ne-text\">\u662f\u5ba2\u6237\u7aef\u7684SSH\u7aef\u53e3\uff0c<\/span><span class=\"ne-text\">remote_port<\/span><span class=\"ne-text\">\u662f\u8fdc\u7a0b\u7684\u7aef\u53e3\uff0c\u6b64\u5904\u5047\u8bbe\u662f6000\u3002<\/span><\/p>\n<pre id=\"QuWTx\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>systemctl enable frpc.service\r\nsystemctl start frpc.service<\/code><\/pre>\n<p id=\"uef0f0368\" class=\"ne-p\"><span class=\"ne-text\">\u8bbe\u7f6e\u5f00\u673a\u81ea\u542f\u5e76\u7acb\u5373\u8fd0\u884c\uff0c\u6b64\u65f6\u5728SSH\u8f6f\u4ef6\u4e0a\uff0c\u901a\u8fc7<\/span> <span class=\"ne-text\">\u670d\u52a1\u5668IP:6000 <\/span><span class=\"ne-text\">\u5c31\u53ef\u4ee5\u8fde\u63a5\u5230\u8fd9\u53f0\u5185\u7f51\u7684\u6811\u8393\u6d3e\u4e86\u3002<\/span><\/p>\n<h2 id=\"QhpW3\"><span class=\"ne-text\">9 \u7f51\u7ad9\u73af\u5883\u642d\u5efa<\/span><\/h2>\n<p id=\"u4b7592a5\" class=\"ne-p\"><span class=\"ne-text\">\u7f51\u7ad9\u642d\u5efa\uff0c\u8bf4\u7b80\u5355\u4e5f\u7b80\u5355\uff0c\u5b89\u88c5\u4e00\u4e2anginx\u653e\u4e2ahtml\u9875\u9762\u5c31\u7b97\u662f\u4e86\uff0c\u4f46\u4e5f\u53ef\u4ee5\u505a\u7684\u6781\u5176\u590d\u6742\u4ee5\u81f3\u4e8e\u9700\u8981\u4e00\u4e2a\u56e2\u961f\uff0c\u6bd4\u5982\u6dd8\u5b9d\u3002\u8fd9\u91cc\u63d0\u4f9b\u4e86\u4e24\u4e2a\u642d\u5efa\u7f51\u7ad9\u7684\u65b9\u6cd5\uff1a\u9762\u677f\u548c\u624b\u52a8\u642d\u5efa\u3002\u5bf9\u4e8e\u5c0f\u767d\u7528\u6237\uff0c\u8fd8\u662f\u63a8\u8350\u7528\u7528\u9762\u677f\u5427\uff0c\u4e0d\u7136\u51fa\u95ee\u9898\uff0c\u7f51\u7ad9\u88ab\u9ed1\u90fd\u4e0d\u77e5\u9053\u5982\u4f55\u89e3\u51b3\u3002<\/span><\/p>\n<h3 id=\"Q3r4y\"><span class=\"ne-text\">9.1 \u5b9d\u5854\u89e3\u4eba\u5fe7<\/span><\/h3>\n<p id=\"ub0eb0abe\" class=\"ne-p\"><span class=\"ne-text\">\u5b9d\u5854\u9762\u677f\u662f\u4e2a\u4f2a\u5f00\u6e90\u7684\u4e00\u952e\u5f0f\u5efa\u7ad9\u9762\u677f\uff0c\u56fd\u5185\u7248\u53ef\u4ee5\u5728<\/span> <a class=\"ne-link\" href=\"https:\/\/www.bt.cn\/\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/www.bt.cn\/\"><span class=\"ne-text\">https:\/\/www.bt.cn\/<\/span><\/a> <span class=\"ne-text\">\u4e2d\u627e\u5230\u5b89\u88c5\u65b9\u5f0f\uff0c\u76ee\u524d\u7684\u5b89\u88c5\u547d\u4ee4\u662f<\/span><span class=\"ne-text\">wget -O install.sh http:\/\/download.bt.cn\/install\/install-ubuntu_6.0.sh &amp;&amp; bash install.sh<\/span> <span class=\"ne-text\">\u3002\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u56fd\u5185\u7248\u9700\u8981\u767b\u9646\u5e76\u4e14\u9a8c\u8bc1\u624b\u673a\u53f7\u540e\u624d\u80fd\u64cd\u4f5c\uff0c\u5b9d\u5854\u4e5f\u6709\u5f3a\u5236\u540e\u53f0\u5347\u7ea7\u7684\u524d\u79d1\u3002<\/span><\/p>\n<p id=\"u33b9fbf3\" class=\"ne-p\"><a id=\"DoYSS\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/aapanel.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/aapanel.jpg\" \/><\/a><\/p>\n<p id=\"uf61c3941\" class=\"ne-p\"><span class=\"ne-text\">\u9664\u6b64\u4e4b\u5916\uff0c\u8fd8\u6709\u56fd\u9645\u7248\u7684\u53eb\u505aaapanel\uff0c\u5b89\u88c5\u5730\u5740\u4e3a<\/span> <a class=\"ne-link\" href=\"https:\/\/www.aapanel.com\/install.html\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/www.aapanel.com\/install.html\"><span class=\"ne-text\">https:\/\/www.aapanel.com\/install.html<\/span><\/a> <span class=\"ne-text\">\uff0c\u5b89\u88c5\u547d\u4ee4\u662f<\/span><span class=\"ne-text\">wget -O install.sh http:\/\/www.aapanel.com\/script\/install_6.0_en.sh &amp;&amp; bash install.sh<\/span><span class=\"ne-text\">\u3002\u76f8\u5bf9\u800c\u8a00\uff0c\u56fd\u9645\u7248\u7684\u9690\u79c1\u4fdd\u62a4\u4f1a\u66f4\u597d\u4e00\u4e9b\uff0c\u4e0d\u4f1a\u8981\u6c42\u624b\u673a\u53f7\u7b49\u4fe1\u606f\uff0c\u4f46\u662f\u9ed8\u8ba4\u8bed\u8a00\u662f\u82f1\u6587\uff0c\u5982\u679c\u4f1a\u54ea\u6015\u4e00\u70b9\u70b9\u82f1\u6587\uff0c\u90fd\u63a8\u8350\u4f7f\u7528\u56fd\u9645\u7248\u7684\u3002<\/span><\/p>\n<p id=\"uf430310e\" class=\"ne-p\"><span class=\"ne-text\">\u5b9d\u5854\u6709\u4e00\u70b9\u4e0d\u597d\u7684\u5730\u65b9\u662f\u52a8\u8f84\u7f16\u8bd1\uff08\u539f\u5148\u662f\u5728CentOS\u4e0a\u5f00\u53d1\u7684\uff0c\u6240\u4ee5\u6709\u8fd9\u4e2a\u81ed\u6bdb\u75c5\uff09\uff0c\u9762\u677f\u662fpython3\u5199\u7684\uff0c\u5b89\u88c5\u8d77\u6765\u5f88\u5feb\uff0c\u4f46\u662f\u8981\u5b89\u88c5\u4e00\u4e9b\u670d\u52a1\u7684\u8bdd\uff0c\u5982\u679cVPS\u6027\u80fd\u4e0d\u597d\uff0c\u5219\u9700\u8981\u82b1\u8d39\u76f8\u5f53\u957f\u4e00\u6bb5\u65f6\u95f4\u6765\u7f16\u8bd1\u5b89\u88c5\uff0c\u666e\u904d30\u5206\u949f\u8d77\u6b65\u3002<\/span><\/p>\n<h3 id=\"DAs8O\"><span class=\"ne-text\">9.2 \u624b\u52a8\u642d\u5efa<\/span><\/h3>\n<p id=\"uf675d8aa\" class=\"ne-p\"><span class=\"ne-text\">\u5b9d\u5854\u9762\u677f\u662f\u5c06\u7f51\u7ad9\u642d\u5efa\u53ef\u89c6\u5316\u4e86\uff0c\u672c\u8d28\u4e0a\u548c\u624b\u52a8\u642d\u5efa\u6ca1\u6709\u533a\u522b\u3002\u8fd9\u91cc\u4e3b\u8981\u662f\u4ecb\u7ecd\u5e38\u89c1\u7684\u76f8\u5173\u8f6f\u4ef6\u548cLet&#8217;s Encrypt\u914d\u7f6eSSL\u8bc1\u4e66\u7684\u65b9\u6cd5\u3002<\/span><\/p>\n<h4 id=\"FJWyR\"><span class=\"ne-text\">9.2.1 Apache\u548cNginx<\/span><\/h4>\n<p id=\"u3ed4d4ae\" class=\"ne-p\"><span class=\"ne-text\">Apache\u548cNginx\u90fd\u662fWeb\u670d\u52a1\u5668\u3002\u524d\u8005\u662f\u8001\u724cWeb\u670d\u52a1\u5668\u8f6f\u4ef6\uff0c\u5bf9PHP\u6709\u7740\u4f18\u79c0\u7684\u652f\u6301\uff0c\u5e76\u4e14\u52a8\u6001\u54cd\u5e94\u4f18\u79c0\uff0c\u4f46\u662f\u5bf9\u6027\u80fd\u548c\u5185\u5b58\u8981\u6c42\u9ad8\u3002\u540e\u8005\u662f\u4fc4\u7f57\u65af\u51fa\u54c1\uff0c\u5bf9\u9759\u6001\u7f51\u7ad9\u652f\u6301\u826f\u597d\uff0c\u6027\u80fd\u6d88\u8017\u4e5f\u66f4\u5c0f\uff0c\u53cd\u4ee3\u548c\u7b80\u5355\u7684\u7f51\u7ad9\u90fd\u503e\u5411\u4e8e\u4f7f\u7528Nginx\uff0c\u751a\u81f3\u8fd8\u6709\u4e00\u7cfb\u5217\u57fa\u4e8eNginx\u884d\u751f\u51fa\u6765\u7684\u7248\u672c\uff0c\u6bd4\u5982Tengine\u5c31\u662f\u6dd8\u5b9d\u4eceNginx\u884d\u751f\u51fa\u6765\u7684\uff0c\u7528\u4ee5\u652f\u6491\u6dd8\u5b9d\u7684\u5404\u79cd\u670d\u52a1\u3002\u9664\u6b64\u4e4b\u5916\uff0c\u8fd8\u6709\u4e2aCaddy\u4e5f\u7528\u7684\u6bd4\u8f83\u591a\uff0c\u8fd9\u662f\u7531golang\u8bed\u8a00\u5199\u51fa\u6765\u7684\uff0c\u6240\u4ee5\u5bf9\u591a\u7ebf\u7a0b\u9ad8\u5e76\u53d1\u7684\u652f\u6301\u5f88\u597d\uff0c\u5e76\u4e14\u81ea\u5e26SSL\u8bc1\u4e66\u7533\u8bf7\u7684\u529f\u80fd\u3002<\/span><\/p>\n<p id=\"uff0a7436\" class=\"ne-p\"><span class=\"ne-text\">\u5165\u95e8\u7528\u6237\u9996\u9009Nginx\uff0c\u6bd5\u7adf\u7f51\u7ad9\u6ca1\u6709\u4ec0\u4e48\u670d\u52a1\uff0c\u5bf9VPS\u7684\u6027\u80fd\u6d88\u8017\u4e5f\u5c11\u70b9\u3002\u5f53\u7136\uff0c\u9009\u62e9Apache\u4e5f\u5b8c\u5168\u53ef\u4ee5\uff0c\u5165\u95e8\u7528\u6237\u5176\u5b9e\u5f88\u96be\u7528\u5230\u9700\u8981\u5bf9\u6bd4\u9009\u62e9Apache\u548cNginx\u7684\u65f6\u5019\u3002Caddy\u7684\u8bdd\uff0c\u5148\u4e0d\u63a8\u8350\u5165\u95e8\u7528\u6237\u4e86\u3002<\/span><\/p>\n<p id=\"ue102a6d7\" class=\"ne-p\"><span class=\"ne-text\">\u5b89\u88c5Apache\u4f7f\u7528\u4ee5\u4e0b\u547d\u4ee4<\/span><\/p>\n<p id=\"ue1b4c11f\" class=\"ne-p\"><span class=\"ne-text\">apt install apache2<\/span><\/p>\n<p id=\"ued1cefc9\" class=\"ne-p\"><span class=\"ne-text\">\u5b89\u88c5Nginx\u4f7f\u7528\u4ee5\u4e0b\u547d\u4ee4<\/span><\/p>\n<pre id=\"ptMU9\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>apt install nginx<\/code><\/pre>\n<p id=\"u28c13458\" class=\"ne-p\"><span class=\"ne-text\">\u8fd9\u4e24\u4e2a\u8f6f\u4ef6\u5b89\u88c5\u5b8c\u540e\uff0c\u90fd\u4f1a\u5f00\u673a\u81ea\u542f\u548c\u7acb\u523b\u8fd0\u884c\uff0c\u6d4f\u89c8\u5668\u4e2d\u8f93\u5165<\/span><span class=\"ne-text\">http:\/\/ip<\/span><span class=\"ne-text\">\u5c31\u53ef\u4ee5\u770b\u5230\u9ed8\u8ba4\u7684\u7f51\u9875\uff0c\u6bd4\u5982Nginx\u7684\u662f\u8fd9\u6837\uff1a<\/span><\/p>\n<p id=\"u4575513a\" class=\"ne-p\"><a id=\"slwMK\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/nginx.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/nginx.jpg\" \/><\/a><\/p>\n<h4 id=\"BfBXt\"><span class=\"ne-text\">9.2.2 PHP<\/span><\/h4>\n<p id=\"u4fe3e26d\" class=\"ne-p\"><span class=\"ne-text\">\u5b89\u88c5\u4e86Nginx\u4e4b\u540e\uff0c\u53ef\u4ee5\u5b9e\u73b0\u9759\u6001\u7f51\u9875\uff0c\u4f46\u662f\u5e38\u89c1\u7684\u7f51\u7ad9\u5e73\u53f0\uff0c\u6bd4\u5982Wordpress\u548ctypecho\u90fd\u662fPHP\u5199\u7684\uff0c\u6240\u4ee5\u8fd8\u9700\u8981\u5b89\u88c5PHP\u624d\u80fd\u8fd0\u884c\u3002<\/span><\/p>\n<p id=\"ufcb6472f\" class=\"ne-p\"><span class=\"ne-text\">apt install php-fpm<\/span><\/p>\n<p id=\"u64741354\" class=\"ne-p\"><span class=\"ne-text\">\u5b89\u88c5\u5b8cphp\u8fd8\u4e0d\u7b97\u5b8c\u4e8b\uff0c\u8fd8\u5f97\u8ba9Nginx\u77e5\u9053\uff0c\u4e5f\u5c31\u662f\u9700\u8981\u66f4\u6539Nginx\u7684\u914d\u7f6e\u6587\u4ef6\u3002<\/span><\/p>\n<p id=\"u4b1ed55e\" class=\"ne-p\"><span class=\"ne-text\">\u8fdb\u5165\u76ee\u5f55<\/span><span class=\"ne-text\">\/etc\/nginx\/sites-available\/<\/span><span class=\"ne-text\">\u4e2d\uff0c\u5c06\u9ed8\u8ba4\u7684\u6587\u4ef6<\/span><span class=\"ne-text\">default<\/span><span class=\"ne-text\">\u91cd\u547d\u540d\u4e3a\u7f51\u7ad9\u7684\u57df\u540d\uff0c\u6bd4\u5982<\/span><span class=\"ne-text\">mjj.hostloc.com<\/span><span class=\"ne-text\">\uff0c\u5373<\/span><span class=\"ne-text\">mv default mjj.hostloc.com<\/span><span class=\"ne-text\">\uff0c\u6253\u5f00<\/span><span class=\"ne-text\">mjj.hostloc.com<\/span><span class=\"ne-text\">\uff0c\u5728\u4e0b\u8ff0\u7684\u7b2c\u4e8c\u884c\u672b\u5c3e\u52a0\u5165<\/span><span class=\"ne-text\">index.php<\/span><\/p>\n<pre id=\"AvJiq\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code># Add index.php to the list if you are using PHP\r\nindex index.html index.htm index.nginx-debian.html index.php; # \u6ce8\u610f\u52a0\u5165\u4e86index.php<\/code><\/pre>\n<p id=\"u13373bcd\" class=\"ne-p\"><span class=\"ne-text\">\u5e76\u4e14\u5c06\u4e0b\u8ff0\u7684<\/span><span class=\"ne-text\">_<\/span><span class=\"ne-text\">\u6539\u6210\u7f51\u7ad9\u57df\u540d<\/span><\/p>\n<pre id=\"obt0l\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>server_name _;\r\n# \u6539\u6210 server_name mjj.hostloc.com;<\/code><\/pre>\n<p id=\"uf0e08ecb\" class=\"ne-p\"><span class=\"ne-text\">\u968f\u540e\uff0c\u91cd\u65b0\u8f6f\u94fe\u63a5\uff0c\u5e76\u91cd\u542fNginx<\/span><\/p>\n<pre id=\"bT8Po\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>rm \/etc\/nginx\/sites-enabled\/default\r\nln -s \/etc\/nginx\/sites-available\/mjj.hostloc.com \/etc\/nginx\/sites-enabled\/mjj.hostloc.com\r\nsystemctl restart nginx<\/code><\/pre>\n<p id=\"u3b011e87\" class=\"ne-p\"><span class=\"ne-text\">\u6ce8\u610f\u57df\u540d\u4e0d\u8981\u586b\u9519\u4e86\uff0c\u91cd\u542f\u5b8c\u540e\uff0cNginx\u5c06\u80fd\u591f\u548cPHP\u4e00\u8d77\u652f\u6301\u52a8\u6001\u7f51\u7ad9\u3002<\/span><\/p>\n<h4 id=\"lFJQI\"><span class=\"ne-text\">9.2.3 MySQL\u548cMariaDB<\/span><\/h4>\n<p id=\"u0847e129\" class=\"ne-p\"><span class=\"ne-text\">MySQL\u662f\u4e00\u4e2a\u5e02\u573a\u5360\u6709\u7387\u6781\u5927\u7684\u6570\u636e\u5e93\u8f6f\u4ef6\uff0c\u5e94\u7528\u573a\u666f\u6781\u5176\u5e7f\u6cdb\uff0c\u6700\u5f00\u59cb\u662fSUN\u516c\u53f8\u5f00\u53d1\u7684\uff0c2009\u5e74\u88ab\u7532\u9aa8\u6587\u6536\u8d2d\u3002\u7532\u9aa8\u6587\u4f5c\u6076\u591a\u7aef\uff0c\u6240\u4ee5MySQL\u7684\u4e00\u90e8\u5206\u4f5c\u8005\u5219\u72ec\u7acb\u51fa\u6765\uff0c\u76f4\u63a5\u505a\u4e86\u4e00\u4e2a\u590d\u523b\u7248\u7684\uff0c\u88ab\u547d\u540d\u4e3aMariaDB\uff0cMaria\u662f\u4f5c\u8005\u5973\u513f\u7684\u540d\u5b57\uff0cLinux\u793e\u533a\u9010\u6b65\u653e\u5f03MySQL\u800c\u91c7\u7528MariaDB\u3002\u6240\u4ee5\u5728\u8fd1\u671f\u53d1\u5e03\u7684\u5404Linux\u7248\u672c\u4e2d\uff0c\u9ed8\u8ba4\u662f\u6ca1\u6709MySQL\u7684\uff0c\u4e00\u5f8b\u91c7\u7528MariaDB\u3002<\/span><\/p>\n<pre id=\"VnnsC\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>apt install mariadb-server # \u5b89\u88c5\u6570\u636e\u5e93\r\nmysql_secure_installation # \u9996\u6b21\u914d\u7f6e<\/code><\/pre>\n<p id=\"u4c6f47c3\" class=\"ne-p\"><span class=\"ne-text\">\u7531\u4e8e\u662f\u9996\u6b21\u4f7f\u7528\uff0c\u6240\u4ee5\u5728\u5982\u4e0b\u63d0\u793a\u4e2d\uff0c\u76f4\u63a5enter\u952e\u5c31\u53ef\u4ee5\u4e86\uff0c\u56e0\u4e3a\u6570\u636e\u5e93\u7684root\u7528\u6237\u6b64\u65f6\u5e76\u6ca1\u6709\u5bc6\u7801<\/span><\/p>\n<pre id=\"lJuky\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB\r\n      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!\r\n\r\nIn order to log into MariaDB to secure it, we'll need the current\r\npassword for the root user.  If you've just installed MariaDB, and\r\nyou haven't set the root password yet, the password will be blank,\r\nso you should just press enter here.\r\n\r\nEnter current password for root (enter for none):<\/code><\/pre>\n<p id=\"u29ee9ff8\" class=\"ne-p\"><span class=\"ne-text\">\u968f\u540e\uff0c\u4f1a\u8be2\u95ee\u662f\u5426\u8981\u8bbe\u7f6e\u6570\u636e\u5e93\u7684root\u5bc6\u7801\uff0c\u600e\u4e48\u8bf4\u5462\uff0c\u53cd\u6b63\u5c31\u5efa\u4e2a\u7ad9\u800c\u5df2\uff08\u4e0d\u6d89\u53ca\u591a\u7528\u6237\u591a\u670d\u52a1\uff09\uff0c\u6709\u6ca1\u6709\u65e0\u6240\u8c13\uff0c\u6211\u4e60\u60ef\u6027\u7684\u4e0d\u8bbe\u7f6e\uff08\u8f93\u5165N\uff09<\/span><\/p>\n<pre id=\"tMFik\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>OK, successfully used password, moving on...\r\n\r\nSetting the root password ensures that nobody can log into the MariaDB\r\nroot user without the proper authorisation.\r\n\r\nSet root password? [Y\/n] N<\/code><\/pre>\n<p id=\"u389506a5\" class=\"ne-p\"><span class=\"ne-text\">\u73b0\u5728\uff0c\u65b0\u5efa\u4e00\u4e2a\u7528\u6237\u548c\u5bf9\u5e94\u7684\u6570\u636e\u5e93<\/span><\/p>\n<pre id=\"Yokek\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>mysql # \u8fdb\u5165\u6570\u636e\u5e93\uff0c\u5982\u679c\u6709root\u5bc6\u7801\uff0c\u5219\u662fmysql -u root -p\r\n\r\nCREATE DATABASE name; # \u65b0\u5efa\u6570\u636e\u5e93\uff0cname\u662f\u6570\u636e\u5e93\u540d\u5b57\r\nQuery OK, 1 row affected (0.00 sec) #\u6b64\u6bb5\u4e3amySQL\u53cd\u9988\u63d0\u793a\uff0c\u4e0d\u9700\u8981\u8f93\u5165\u3002\r\n\r\nCREATE USER user@localhost; # \u65b0\u5efa\u7528\u6237\uff0cuser\u662f\u7528\u6237\u540d\u5b57\r\nQuery OK, 0 rows affected (0.00 sec) #\u6b64\u6bb5\u4e3amySQL\u53cd\u9988\u63d0\u793a\uff0c\u4e0d\u9700\u8981\u8f93\u5165\u3002\r\n\r\nSET PASSWORD FOR user@localhost= PASSWORD(\"\u5bc6\u7801\"); # \u7ed9\u7528\u6237\u8bbe\u7f6e\u4e00\u4e2a\u5bc6\u7801\r\nQuery OK, 0 rows affected (0.00 sec) #\u6b64\u6bb5\u4e3amySQL\u53cd\u9988\u63d0\u793a\uff0c\u4e0d\u9700\u8981\u8f93\u5165\u3002\r\n\r\nGRANT ALL PRIVILEGES ON name.* TO user@localhost IDENTIFIED BY '\u5bc6\u7801'; # \u628aname\u8fd9\u4e2a\u6570\u636e\u5e93\u548cuser\u8fd9\u4e2a\u7528\u6237\u5173\u8054\r\nQuery OK, 0 rows affected (0.00 sec) #\u6b64\u6bb5\u4e3amySQL\u53cd\u9988\u63d0\u793a\uff0c\u4e0d\u9700\u8981\u8f93\u5165\u3002\r\n\r\nFLUSH PRIVILEGES; # \u5b8c\u6210\u8bbe\u7f6e\r\nexit # \u9000\u51fa\u6570\u636e\u5e93<\/code><\/pre>\n<h4 id=\"kmfEq\"><span class=\"ne-text\">9.2.4 Let&#8217;s Encrypt\uff0cSSL\/TLS<\/span><\/h4>\n<p id=\"u22b3093a\" class=\"ne-p\"><span class=\"ne-text\">http\u8fde\u63a5\uff0c\u7531\u4e8e\u4e0d\u662f\u52a0\u5bc6\u7684\uff0c\u6240\u4ee5\u4efb\u4f55\u4eba\u90fd\u53ef\u4ee5\u67e5\u770b\u5185\u5bb9\uff0c\u8fd9\u5bf9\u4e8e\u4e00\u4e9b\u91d1\u878d\u670d\u52a1\u6709\u7740\u5de8\u5927\u7684\u5371\u5bb3\uff0c\u6bd4\u5982\u4f7f\u7528\u4fe1\u7528\u5361\u5728\u7f51\u4e0a\u8d2d\u7269\u7684\u65f6\u5019\uff0c\u8d26\u53f7\u548c\u5bc6\u7801\u4f1a\u88ab\u83b7\u77e5\u3002\u6240\u4ee5\u7f51\u666f\uff08Firefox\u6d4f\u89c8\u5668\u7684\u524d\u8eab\uff09\u63d0\u51fa\u4e86SSL\uff08\u5b89\u5168\u5957\u63a5\u5c42\/Secure Sockets Layer\uff09\u8fd9\u4e2a\u6982\u5ff5\uff08\u540e\u6765\u6f14\u53d8\u5347\u7ea7\u4e3aTLS\uff0c\u5373\u4f20\u8f93\u5c42\u5b89\u5168\u6027\u534f\u8bae\/Transport Layer Security\uff09\uff0chttp\u53d8\u6210\u4e86https\uff0c\u7535\u8111\u4f1a\u5185\u7f6e\u8bc1\u4e66\uff0c\u800c\u7f51\u7ad9\u4e5f\u4f1a\u6709\u4e00\u4e2a\u8bc1\u4e66\uff0c\u53ea\u6709\u4e24\u8005\u76f8\u4e92\u9a8c\u8bc1\u6210\u529f\uff0c\u624d\u80fd\u6b63\u5e38\u6d4f\u89c8\u73a9\u7f51\u9875\uff0c\u5e76\u4e14\u5168\u7a0b\u52a0\u5bc6\uff08DNS\u90e8\u5206\u5e76\u4e0d\u662f\u52a0\u5bc6\u7684\uff0c\u6240\u4ee5\u6709\u4e2aDoH\uff0cdns over https\uff09\u3002<\/span><\/p>\n<p id=\"ufd3b5ee1\" class=\"ne-p\"><span class=\"ne-text\">SSL\/TLS\u8bc1\u4e66\u662f\u4e2a\u5784\u65ad\u884c\u4e1a\uff0c\u7535\u8111\u5185\u7f6e\u7684\u8bc1\u4e66\u5c31\u90a3\u4e48\u51e0\u5bb6\uff0c\u5982\u679c\u60f3\u7f51\u7ad9\u88ab\u5927\u591a\u6570\u6d4f\u89c8\u5668\/\u7cfb\u7edf\u63a5\u53d7\uff0c\u90a3\u5c31\u53ea\u80fd\u53bb\u7533\u8bf7\u5176\u4e2d\u67d0\u5bb6\u7684\u8bc1\u4e66\uff0c\u8fd9\u91cc\u9762\u5c42\u5c42\u7b7e\u53d1\u8f6c\u552e\uff0c\u51e0\u8fd1\u65e0\u672c\u4e07\u5229\u3002\u4e0d\u8fc7\u597d\u5728\u8fd8\u662f\u6709\u5f88\u591a\u514d\u8d39\u7684SSL\/TLS\u8bc1\u4e66\u7684\uff0c\u6bd4\u5982Let&#8217;s Encrypt\u63d0\u4f9b\u4e09\u4e2a\u6708\u7684\u514d\u8d39\u8bc1\u4e66\uff0c\u800c\u4e9a\u6d32\u8bda\u4fe1\u901a\u8fc7\u7b2c\u4e09\u65b9\u516c\u53f8\uff0c\u63d0\u4f9b\u4e00\u5e74\u514d\u8d39\u7684\u8bc1\u4e66\u3002\u8fd9\u91cc\u4ee5Let&#8217;s Encrypt\u4e3a\u4f8b\u6f14\u793a\uff0c\u76f8\u5173\u94fe\u63a5\u4e3a<\/span> <a class=\"ne-link\" href=\"https:\/\/certbot.eff.org\/instructions\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/certbot.eff.org\/instructions\"><span class=\"ne-text\">https:\/\/certbot.eff.org\/instructions<\/span><\/a> <span class=\"ne-text\">\uff1a<\/span><\/p>\n<p id=\"u52e811a9\" class=\"ne-p\"><a id=\"lX5zD\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/ssl_tls.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/ssl_tls.jpg\" \/><\/a><\/p>\n<p id=\"u1684cba5\" class=\"ne-p\"><span class=\"ne-text\">Let&#8217;s Encrypt\u63d0\u4f9b\u7684SSL\/TLS\u5de5\u5177\u53eb\u505acerbot\uff0c\u53ef\u4ee5\u901a\u8fc7snap\u6216\u8005pip\u5b89\u88c5\u3002snap\u662fUbuntu\u5f3a\u63a8\u7684\u4e00\u79cd\u8f6f\u4ef6\u90e8\u7f72\u548c\u8f6f\u4ef6\u5305\u7ba1\u7406\u7cfb\u7edf\uff0c\u628a\u6240\u6709\u9700\u8981\u7684\u4e1c\u897f\u90fd\u653e\u4e00\u8d77\u3002pip\u662f\u901a\u8fc7python3\u7684pip\u5b89\u88c5\uff0cpip\u548csnap\u6ca1\u6709\u529f\u80fd\u4e0a\u7684\u533a\u522b\uff0c\u4e0d\u60f3\u88abUbuntu\u5f3a\u63a8\u5c31\u4f7f\u7528pip\u3002<\/span><\/p>\n<p id=\"uae8ee7db\" class=\"ne-p\"><strong><span class=\"ne-text\">snap\u5b89\u88c5cerbot\u7533\u8bf7SSL\/TLS\u8bc1\u4e66<\/span><\/strong><\/p>\n<pre id=\"BDdD1\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>apt install snapd\r\nsnap install core\r\nsnap refresh core\r\nsnap install --classic certbot\r\nln -s \/snap\/bin\/certbot \/usr\/bin\/certbot\r\ncertbot --nginx<\/code><\/pre>\n<p id=\"u6d6452a6\" class=\"ne-p\"><span class=\"ne-text\">\u7136\u540e\u6309\u7167\u63d0\u793a\uff0c\u8f93\u5165\u90ae\u7bb1\u548c\u540c\u610f\u670d\u52a1\u534f\u8bae\uff0c\u5e76\u4e14\u5728\u63d0\u793a\u57df\u540d\u7684\u65f6\u5019\uff0c\u6ce8\u610f\u4e0d\u8981\u8f93\u9519\u3002<\/span><\/p>\n<p id=\"u5136754d\" class=\"ne-p\"><strong><span class=\"ne-text\">pip\u5b89\u88c5cerbot\u7533\u8bf7SSL\/TLS\u8bc1\u4e66<\/span><\/strong><\/p>\n<pre id=\"QPKWY\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>apt install python3 python3-venv libaugeas0\r\npython3 -m venv \/opt\/certbot\/\r\n\/opt\/certbot\/bin\/pip install --upgrade pip\r\n\/opt\/certbot\/bin\/pip install certbot certbot-nginx\r\nln -s \/opt\/certbot\/bin\/certbot \/usr\/bin\/certbot\r\ncertbot --nginx\r\necho \"0 0,12 * * * root \/opt\/certbot\/bin\/python -c 'import random; import time; time.sleep(random.random() * 3600)' &amp;&amp; certbot renew -q\" | sudo tee -a \/etc\/crontab &gt; \/dev\/null<\/code><\/pre>\n<p id=\"ueadfdda7\" class=\"ne-p\"><span class=\"ne-text\">\u76f8\u6bd4\u4e8esnap\u81ea\u52a8\u6bcf\u4e09\u4e2a\u6708\u66f4\u65b0\u8bc1\u4e66\uff0cpip\u9700\u8981\u901a\u8fc7crontab\u52a0\u4e00\u4e2a\u5b9a\u65f6\u4efb\u52a1\uff08\u4e0a\u8ff0\u6700\u540e\u4e00\u884c\uff09\uff0c\u53e6\u5916\uff0c\u4e5f\u9700\u8981\u5076\u5c14\u68c0\u67e5\u4ee5\u4e0bcertbot\u6709\u6ca1\u6709\u66f4\u65b0\uff0c\u5373\u4f7f\u7528\u6b64\u547d\u4ee4<\/span><span class=\"ne-text\">\/opt\/certbot\/bin\/pip install &#8211;upgrade certbot certbot-nginx<\/span><\/p>\n<h2 id=\"pmREB\"><span class=\"ne-text\">10 Docker\u5feb\u901f\u5165\u95e8<\/span><\/h2>\n<p id=\"ud1bd930d\" class=\"ne-p\"><span class=\"ne-text\">Docker\u7684\u672c\u610f\u662f\u201c\u7801\u5934\u5de5\u4eba\u201d\uff0c\u5373\u642c\u8fd0\u522b\u4eba\u6253\u5305\u597d\u7684\u96c6\u88c5\u7bb1\u3002\u4e4b\u6240\u4ee5\u53d6\u8fd9\u4e2a\u540d\u5b57\uff0c\u662f\u56e0\u4e3aDocker\u7684\u529f\u80fd\u4e0e\u6b64\u7c7b\u4f3c\uff1a\u5c06\u7cfb\u7edf\u548c\u91cc\u9762\u7684\u5e94\u7528\u4e00\u8d77\u6253\u5305\u597d\uff0c\u522b\u4eba\u201c\u642c\u8d70\u201d\u5c31\u80fd\u76f4\u63a5\u4f7f\u7528\u2014\u2014\u53ef\u4ee5\u5c06Docker\u7c97\u7565\u7684\u7406\u89e3\u6210\u4e00\u4e2a\u5305\u542b\u4e86\u7cfb\u7edf\u548c\u5e94\u7528\u7684\u865a\u62df\u673a\uff08\u4e25\u683c\u6765\u8bf4\uff0cDocker\u662f\u4f7f\u7528\u4e86\u6c99\u7bb1\u673a\u5236\u7684\u865a\u62df\u5316\u5bb9\u5668\uff09\u3002\u5e38\u89c1\u7684\u4f8b\u5b50\u5c31\u662f\u522b\u4eba\u628a\u67d0\u4e00\u4e2a\u8f6f\u4ef6\u914d\u7f6e\u597d\u4e86\uff0c\u7528\u6237\u76f4\u63a5\u4e0b\u8f7d\u4e0b\u6765\uff0c\u7b80\u5355\u8bbe\u7f6e\u4e00\u4e0b\u5c31\u53ef\u4ee5\u4f7f\u7528\u4e86\uff0c\u4e0d\u9700\u8981\u7e41\u6742\u7684\u914d\u7f6e\u8fc7\u7a0b\uff0c\u6240\u4ee5\u5728\u6279\u91cf\u670d\u52a1\u4e2d\u6709\u7740\u5e7f\u6cdb\u7684\u5e94\u7528\u573a\u666f\u3002Docker\u5206\u4e3a\u793e\u533a\u7248\/CE\uff08Community Edition\uff0c\u514d\u8d39\u7684\uff09\u548c\u4f01\u4e1a\u7248\/EE\uff08Enterprise Edition\uff0c\u6536\u8d39\u7684\uff09\uff0c\u4e24\u8005\u529f\u80fd\u65e0\u672c\u8d28\u533a\u522b\uff0c\u4ee5\u4e0b\u9ed8\u8ba4\u4f7f\u7528\u793e\u533a\u7248\u3002<\/span><\/p>\n<h3 id=\"Htttq\"><span class=\"ne-text\">10.1 \u5b89\u88c5Docker\u73af\u5883<\/span><\/h3>\n<pre id=\"K8SoS\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>apt update # \u540c\u6b65\u66f4\u65b0\u6e90\r\napt install -y ca-certificates curl gnupg lsb-release # \u5b89\u88c5\u5fc5\u8981\u4f9d\u8d56\u8f6f\u4ef6<\/code><\/pre>\n<p id=\"u5b925189\" class=\"ne-p\"><span class=\"ne-text\">\u6dfb\u52a0GPG\u5bc6\u94a5\uff0c\u6ce8\u610f\u8fd9\u91cc\u548c\u4e0a\u9762\u4e00\u6837\uff0c\u5fc5\u987b\u662froot\u6743\u9650\uff08\u5982\u4e0b\u547d\u4ee4\uff09\u3002\u8fd9\u91cc\u7b80\u5355\u4ecb\u7ecd\u4e00\u4e0bGPG\uff0c\u5168\u79f0\u662fGnuPG\uff0c\u771f\u00b7\u5168\u79f0\u662fGNU Privacy Guard\uff0c\u4e00\u4e2a\u5bc6\u7801\u5b66\u8f6f\u4ef6\uff0c\u7528\u6765\u9a8c\u8bc1\u901a\u4fe1\u4e2d\u7684\u5b89\u5168\u6027\uff0c\u9632\u6b62\u4f20\u8f93\u8fc7\u7a0b\u4e2d\u88ab\u7be1\u6539\uff0c\u524d\u8eab\u662fPretty Good Privacy\/PGP\u3002<\/span><\/p>\n<pre id=\"AuEk7\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>curl -fsSL https:\/\/download.docker.com\/linux\/debian\/gpg | gpg --dearmor -o \/usr\/share\/keyrings\/docker-archive-keyring.gpg<\/code><\/pre>\n<p id=\"u64d51906\" class=\"ne-p\"><span class=\"ne-text\">\u9009\u62e9\u4f7f\u7528\u7a33\u5b9a\u7248\uff0c\u5982\u679c\u9700\u8981nightly\u6216\u8005test\u7248\uff0c\u53ef\u4ee5\u628a\u4e0b\u9762\u7684stable\u6539\u6210\u5bf9\u5e94\u7684\u7248\u672c\u3002<\/span><\/p>\n<p id=\"u4e2ffc9c\" class=\"ne-p\"><span class=\"ne-text\">echo &#8220;deb [arch=$(dpkg &#8211;print-architecture) signed-by=\/usr\/share\/keyrings\/docker-archive-keyring.gpg] https:\/\/download.docker.com\/linux\/debian $(lsb_release -cs) stable&#8221; | tee \/etc\/apt\/sources.list.d\/docker.list &gt; \/dev\/null<\/span><\/p>\n<p id=\"uf932d569\" class=\"ne-p\"><span class=\"ne-text\">\u66f4\u65b0\u5e76\u5b89\u88c5Docker<\/span><\/p>\n<pre id=\"OCLHN\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>apt update\r\napt install -y docker-ce docker-ce-cli containerd.io<\/code><\/pre>\n<p id=\"u3638877b\" class=\"ne-p\"><span class=\"ne-text\">\u671f\u95f4\u4f1a\u4e0b\u8f7d\u51e0\u767e\u5146\u7684\u6587\u4ef6\uff0c\u7f51\u7edc\u4e0d\u597d\u7684\u8bdd\uff0c\u53ef\u80fd\u4f1a\u9700\u8981\u4e00\u6bb5\u65f6\u95f4\uff0c\u5f53\u5b8c\u6210\u5b89\u88c5\u540e\uff0c\u4f7f\u7528<\/span><span class=\"ne-text\">docker run hello-world<\/span><span class=\"ne-text\">\u547d\u4ee4\u6765\u6d4b\u8bd5\u529f\u80fd\u662f\u5426\u6b63\u5e38\uff0c\u7406\u8bba\u4e0a\u4f1a\u8f93\u51fa\u4e0b\u56fe\u5185\u5bb9\uff1a<\/span><\/p>\n<p id=\"ud16f1a51\" class=\"ne-p\"><a id=\"UBWXG\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/docker_hello.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/docker_hello.jpg\" \/><\/a><\/p>\n<p id=\"u1a876fbe\" class=\"ne-p\"><span class=\"ne-text\">\u81f3\u6b64\uff0c\u7cfb\u7edf\u5df2\u7ecf\u5b89\u88c5\u597d\u4e86Docker\u73af\u5883\uff0c\u53ef\u4ee5\u81ea\u5df1\u5199\u4e00\u4e2aDocker\u7684\u5e94\u7528\uff0c\u6216\u8005\u76f4\u63a5\u62c9\u53d6\u522b\u4eba\u5199\u597d\u7684\u4e3a\u81ea\u5df1\u6240\u7528\u3002<\/span><\/p>\n<h3 id=\"DIcJd\"><span class=\"ne-text\">10.2 \u5b89\u88c5\u522b\u4eba\u6253\u5305\u597d\u7684\u7684Docker<\/span><\/h3>\n<p id=\"ufe9acf4a\" class=\"ne-p\"><span class=\"ne-text\">\u5148\u8bf4\u4e00\u4e0b\u5e38\u7528\u7684Docker\u547d\u4ee4\uff0c\u7136\u540e\u4ee5\u5b89\u88c5Docker\u7248\u672c\u7684Nextcloud\u4e3a\u4f8b\u3002Nextcloud\u662f\u4e00\u4e2a\u5f00\u6e90\u7684\u7f51\u76d8\u7cfb\u7edf\uff0c\u7c7b\u4f3c\u4e8e\u79c1\u6709\u7248\u672c\u7684\u767e\u5ea6\u4e91\uff0c\u53ef\u4ee5\u81ea\u5df1\u642d\u5efa\u4ece\u800c\u786e\u4fdd\u6570\u636e\u90fd\u5728\u81ea\u5df1\u624b\u4e0a\u800c\u4e0d\u4f1a\u88ab8\u79d2\u3002<\/span><\/p>\n<h4 id=\"sQMAK\"><span class=\"ne-text\">10.2.1 \u5e38\u7528Docker\u547d\u4ee4<\/span><\/h4>\n<p id=\"ube75b492\" class=\"ne-p\"><span class=\"ne-text\">docker ps<\/span> <span class=\"ne-text\">\u5217\u51fa\u6240\u6709\u6b63\u5728\u8fd0\u884c\u7684\u5bb9\u5668\uff0c\u5982\u679c\u9700\u8981\u67e5\u770b\u6240\u6709\u7684\u5bb9\u5668\uff08\u5305\u62ec\u672a\u8fd0\u884c\u6216\u8005\u542f\u52a8\u5931\u8d25\u7684\uff09\u5219\u4f7f\u7528<\/span><span class=\"ne-text\">docker ps -la<\/span><span class=\"ne-text\">\uff0c\u8fd9\u70b9\u7c7b\u4f3c\u4e8e<\/span><span class=\"ne-text\">ls<\/span><span class=\"ne-text\">\u548c<\/span><span class=\"ne-text\">ls -la<\/span><span class=\"ne-text\">\u7684\u533a\u522b\u3002<\/span><\/p>\n<p id=\"u55a2b45e\" class=\"ne-p\"><span class=\"ne-text\">docker start\/stop\/restart CONTAINER ID<\/span> <span class=\"ne-text\">\u5f00\u542f\/\u505c\u6b62\/\u91cd\u542f\u7279\u5b9a\u5bb9\u5668\uff0c\u540e\u9762\u8981\u52a0\u4e0a\u6307\u5b9a\u7684ID\uff0cCONTAINER ID\u89c1\u4e0b\u6587\u3002<\/span><\/p>\n<p id=\"ue75f238e\" class=\"ne-p\"><span class=\"ne-text\">docker rm CONTAINER ID<\/span> <span class=\"ne-text\">\u5220\u9664\u5bb9\u5668\uff0c\u5982\u679c\u662f\u5220\u9664\u955c\u50cf\uff0c\u5219\u9700\u8981\u628arm\u6362\u6210rmi<\/span><\/p>\n<h4 id=\"TcLOy\"><span class=\"ne-text\">10.2.2 \u5b89\u88c5Docker\u7248Nextcloud<\/span><\/h4>\n<p id=\"u6ac6b26e\" class=\"ne-p\"><span class=\"ne-text\">\u5728<\/span> <a class=\"ne-link\" href=\"https:\/\/hub.docker.com\/\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/hub.docker.com\/\"><span class=\"ne-text\">https:\/\/hub.docker.com\/<\/span><\/a> <span class=\"ne-text\">\u4e2d\u76f4\u63a5\u641c\u7d22Nextcloud\uff0c\u627e\u5230\u5b98\u65b9\u7248\u672c\u7684\u955c\u50cf\uff0c\u70b9\u51fb\u8fdb\u53bb\uff0c\u5728\u53f3\u4fa7\u6709\u62c9\u53d6\u955c\u50cf\u7684\u547d\u4ee4\uff0c\u76f4\u63a5\u8fd0\u884c\u5373\u53ef\u3002<\/span><\/p>\n<p id=\"u7b54629c\" class=\"ne-p\"><a id=\"vSZbX\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/docker_nextcloud.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/docker_nextcloud.jpg\" \/><\/a><\/p>\n<p id=\"ue5a16951\" class=\"ne-p\"><span class=\"ne-text\">\u5b89\u88c5\u8fc7\u7a0b\u4e2d\u4f1a\u4e0b\u8f7d\u5404\u4e2a\u7ec4\u4ef6\uff0c\u7b49\u5168\u90e8\u663e\u793aPull conplete\u5373\u8868\u793a\u4e0b\u8f7d\u5b8c\u6210\uff0c\u4e4b\u540e\u4f1a\u81ea\u52a8\u6821\u9a8c\u5e76\u63d0\u793a\u5b8c\u6210\u3002<\/span><\/p>\n<p id=\"u2d6cf7c7\" class=\"ne-p\"><a id=\"xSLn4\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/docker_pull_nextcloud.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/docker_pull_nextcloud.jpg\" \/><\/a><\/p>\n<p id=\"u4611a637\" class=\"ne-p\"><span class=\"ne-text\">\u4f7f\u7528<\/span><span class=\"ne-text\">docker run -d -p 80:80 nextcloud<\/span> <span class=\"ne-text\">\u8fd0\u884c\uff0c\u6b64\u65f6\u4f7f\u7528<\/span><span class=\"ne-text\">docker ps<\/span><span class=\"ne-text\">\u53ef\u4ee5\u67e5\u770b\u5230\u5177\u4f53\u7684\u8be6\u7ec6\u4fe1\u606f<\/span><\/p>\n<p id=\"u06531b26\" class=\"ne-p\"><a id=\"H2zqg\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/docker_nextcloud_status.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/docker_nextcloud_status.jpg\" \/><\/a><\/p>\n<p id=\"u3742a6d3\" class=\"ne-p\"><span class=\"ne-text\">CONTAINER ID\u7c7b\u4f3c\u4e8e\u8eab\u4efd\u8bc1\u53f7\u7801\uff1bIMAGE\u662f\u8eab\u4efd\u8bc1\u4e0a\u7684\u59d3\u540d\uff1bCOMMAND\u662f\u5b9e\u9645\u8fd0\u884c\u7684\u7a0b\u5e8f\uff1bCREATED\u662f\u521b\u5efa\u7684\u65f6\u95f4\uff1bSTATUS\u662f\u6b64\u65f6\u7684\u8fd0\u884c\u72b6\u6001\uff1bPORTS\u662f\u7aef\u53e3\uff0c\u4e0a\u8ff0\u6211\u4eec\u628a\u5bb9\u5668\u768480\u7aef\u53e3\u5b9a\u5411\u5230\u670d\u52a1\u5668\u768480\uff0c\u5e76\u4e14\u9ed8\u8ba4ipv4\u548cipv6\u90fd\u53ef\u4ee5\u8bbf\u95ee\uff0c\u63a5\u53d7\u6240\u6709IP\u7684\u8bbf\u95ee\uff080.0.0.0\u4ee3\u8868\u63a5\u53d7\u6240\u6709IP\uff09\uff1bNAMES\u662f\u5bb9\u5668\u7684\u540d\u5b57\uff0c\u53ef\u4ee5\u7406\u89e3\u4e3a\u5916\u53f7\u3002<\/span><\/p>\n<p id=\"u8d777e02\" class=\"ne-p\"><span class=\"ne-text\">\u4e4b\u540e\u5c31\u662f\u901a\u8fc7IP\u6216\u8005\u7ed1\u5b9a\u7684\u57df\u540d\u8bbf\u95ee\uff0c\u8fdb\u884c\u6700\u540e\u7684\u5b89\u88c5\u3002\u8fd9\u91cc\u5c31\u80fd\u770b\u51fa\u6765Docker\u7684\u4f18\u52bf\u4e86\uff1a\u7528\u6237\u65e0\u9700\u4e86\u89e3\u5177\u4f53\u64cd\u4f5c\u548c\u642d\u5efa\u6b65\u9aa4\uff0c\u63d0\u4f9b\u8005\u8d1f\u8d23\u7ef4\u62a4\uff0c\u8fd9\u53ef\u4ee5\u6781\u5927\u7684\u7b80\u5316\u7528\u6237\u7684\u4f7f\u7528\u6b65\u9aa4\uff0c\u8fd8\u53ef\u4ee5\u6807\u51c6\u5316\u73af\u5883\uff0c\u65e0\u8bba\u4f7f\u7528Debain\u8fd8\u662fREHL\uff0c\u955c\u50cf\/\u5bb9\u5668\u90fd\u662f\u63d0\u4f9b\u8005\u7ed9\u5b9a\u7684\u3002<\/span><\/p>\n<p id=\"ucfd10869\" class=\"ne-p\"><a id=\"hztdz\" class=\"ne-image-link\" href=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/docker_nextcloud_install.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"ne-image\" src=\"https:\/\/raw.githubusercontent.com\/uselibrary\/Getting-Started-with-Linux\/main\/images\/docker_nextcloud_install.jpg\" \/><\/a><\/p>\n<p id=\"u15c7c037\" class=\"ne-p\"><span class=\"ne-text\">\u5982\u679c\u4e0d\u518d\u9700\u8981Nextcloud\uff0c\u5219\u9996\u5148\u505c\u6b62\u5bb9\u5668\uff0c\u968f\u540e\u518d\u5220\u9664\uff1a<\/span><\/p>\n<pre id=\"x1OnJ\" class=\"ne-codeblock language-plain\" data-language=\"plain\"><code>docker stop c30d348f1ef1\r\ndocker rm c30d348f1ef1<\/code><\/pre>\n<h3 id=\"eumYt\"><span class=\"ne-text\">10.3 \u5efa\u81ea\u5df1\u7684Docker<\/span><\/h3>\n<p id=\"u1d86da91\" class=\"ne-p\"><span class=\"ne-text\">Docker\u901a\u8fc7Unix socket\u4e0e\u5b83\u7684\u5f15\u64ce\u8fdb\u884c\u901a\u4fe1\uff0c\u51fa\u4e8e\u5b89\u5168\u8003\u8651\uff0c\u4e00\u822c\u53ea\u6709root\u7528\u6237\u548c\u5728docker\u7ec4\u7684\u7528\u6237\u624d\u80fd\u6b63\u5e38\u8bbf\u95eeUnix socket\u3002\u6240\u4ee5\uff0c\u5982\u679c\u60f3\u5efa\u4e00\u4e2a\u5b8c\u5584\u7684Docker\u5e94\u7528\uff0c\u90a3\u4e48\u5efa\u8bae\u989d\u5916\u65b0\u589e\u4e00\u4e2a\u7528\u6237\uff0c\u5e76\u52a0\u5165docker\u7528\u6237\u7ec4\u3002<\/span><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>2024\u5e746\u6708\uff0c\u7b2c\u4e00\u6b21\u4fee\u8ba2 \u672c\u6587\u7684\u9996\u8981\u76ee\u7684\u662f\u7ed9\u4e88Linux\u521d\u5b66\u8005\u4e00\u4e2a\u7b80\u5355\u3001\u6613\u5b66\u7684\u6559\u7a0b\uff0c\u4ee5\u4fbf\u5728\u770b\u5b8c\u672c\u6587\u540e\u5bf9Lin [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[100],"tags":[122],"class_list":["post-532","post","type-post","status-publish","format-standard","hentry","category-100","tag-linux"],"_links":{"self":[{"href":"https:\/\/sharebits.link\/index.php?rest_route=\/wp\/v2\/posts\/532","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sharebits.link\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sharebits.link\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sharebits.link\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sharebits.link\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=532"}],"version-history":[{"count":0,"href":"https:\/\/sharebits.link\/index.php?rest_route=\/wp\/v2\/posts\/532\/revisions"}],"wp:attachment":[{"href":"https:\/\/sharebits.link\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=532"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sharebits.link\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=532"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sharebits.link\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=532"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}