🦄 2024 独立开发者训练营,一起创业!查看介绍 / 立即报名(剩余8个优惠名额) →

实践:Linux 操作系统的基本操作

最近写了一些关于在 Linux 系统上配置 Web 服务器的操作手册,我希望大伙都能去试一下,遇到问题可以一起想办法解决,这样你会很快学会 Linux 的基本操作,去配置一个可以使用的 Web 运行环境,也不再恐惧命令行工具。你可以在自己电脑上安装虚拟机,比如 Virtual Box。使用 Linux 系统(推荐 CentOS 系统)。或者去购买一台云服务器,按月付或者按天付的那种,一个月最低几十块钱。我推荐大家去购买一台云服务器。国内可以使用阿里云,国外可以试试 DigitalOcean 或者 Linode

如果你是宁皓网的付费用户,可以参考 《 CentOS : 在阿里云上运行网站 》这个课程,如果不是,可以跟随下面这个入门手册。

Linux 的基本操作

好,你现在有了一台 Linux 系统的服务器,因为不同类型的 Linux 的操作会不太一样,以下,我都假设你用的是 CentOS 系统。

远程控制

一般你需要远程去操作你的服务器,这不像控制 Windows 服务器那样,有个远程控制的图形界面,控制 Linux 系统的服务器,你需要使用命令行工具。 Windows 用户需要安装 Putty 这个小工具,Mac 用户可以直接使用系统自带的终端工具。

Windows 使用 Putty

  1. 下载 Putty 以后,运行它。
  2. Host Name 里输入服务器的 IP 地址。
  3. Connection type 选择 SSH,然后点击 Open。
  4. 第一次连接服务器,会出现一个警告提示,点击 是。
  5. 打开命令行窗口后,提示 login as: ,在这里输入你想要使用服务器上的哪个用户进行登录,可以使用 root 用户。输入 root。
  6. 提示输入 root 用户的密码,输入密码,然后回车。
  7. 登录成功!现在你可以继续使用命令去控制服务器了。

Mac 用户使用终端工具

  1. 打开 Launchpad ,在 其它 这里可以打开 终端 工具。或者在 应用程序 - 实用工具 这里找到 终端  这个小工具。
  2. 输入 ssh root@x.x.x.x,使用 ssh 命令,用 root 用户身份,登录到 x.x.x.x 这个服务器,你可以把 x.x.x.x 换成你的服务器的 IP 地址,或者指向这个 IP 地址的域名。回车!
  3. 提示输入 root 用户的密码,注意输入密码的时候,屏幕上不会显示任何的东西,完成以后,回车!
  4. 登录成功!

目录与文件

平时我们用的操作系统有图形界面,对目录与文件的操作是非常直观的,但我们使用命令行工具去做的时候,就要使用对应的命令了,比如 cd 命令进入到某个目录,cp 命令去复制,rm 命令去删除,ls 命令可以列出目录里的东西。

查看你当前所在的位置 pwd( print working directory )

pwd

会返回当前的位置,例如:

/root

改变你所在的目录位置 cd( change directory )

cd /home

会让你进入到根目录下面的 home 这个目录里面,/ 表示根目录,如果用 pwd 查看一下会返回:

/home

列出目录里的东西 ls

ls

ls 命令应该是 list 的简称,列出的意思,这个命令可以配合一些参数,例如:

ls -la

这样会使用更详细的形式列出文件与目录,并且会包含目录里面隐藏的文件,l 表示 longa 表示 all 。在命令的后面你可以指定具体要列出的目录,例如:

ls -la /usr/local

这会列出在系统根目录下面的 usr 目录下面的 local 这个目录里的所有的东西。如果想查看命令详细的使用说明,可以加上 --help 参数:

ls --help

现在,你已经学会了一个简单的 ls 命令去列出目录里的东西,在使用其它命令的时候,你也可以这样来用,你知道命令的后面可以添加一些参数,去做更具体的事情,想得到命令的使用说明,就去在命令后面添加一个 --help 参数,命令的后面也可以添加更具体的信息,比如一个目录的位置,一个文件的名称等等。

创建目录 mkdir( make directory )

mkdir

下面,我们可以在你当前所在的位置去创建一个新的目录,记得使用 pwd 命令确定一下你的位置:

mkdir www

上面这行命令会在当前位置上去创建一个叫 www 的目录。使用 ls 命令,可以查看一下当前目录里面的东西。

 删除目录或文件 rm( remove )

 rm

在命令的后面,加上你想要删除的东西,可能是一个目录的名称,或者一个文件的名称。注意想要删除目录的时候,你需要添加两个参数:

rm -rf www

这里,r 参数可以让 rm 命令递归删除目录及其内容,f 参数是 force ,表示强制删除。合起来这行命令的意思是,递归的强制删除 www 这个目录,以及这个目录里面的所有的东西。

编辑文件

linux 系统里面有很多工具可以去编辑文件,下面介绍一下vim

vim hello.txt

上面的命令会去编辑当前目录下面的 hello.txt 这个文件,如果这个文件不存在,会打开一个空白的文件,这样你在保存并退出以后 ,就可以创建一个叫做 hello.txt 的文件。vim 工具的使用需要配合一些按键,比如打开文件以后,你想编辑这个文件,可以进入到编辑模式,按一下键盘上的 i 键,然后用上下左右按键去浏览到文件的某个位置上。编辑好以后,要按一下 esc 键,退出编辑模式,然后输入 :  (冒号),再输入 wq ,表示保存并退出。如果你不想保存所做的修改,可以输入 : q 。有的时候,在编辑一些只读文件,你需要再添加一个 ! ,比如 :wq! ,或者 q!

  • i ,输入编辑模式。
  • esc,退出模式。
  • :wq,保存文件并退出。
  • :wq!,强制保存并退出。
  • :q,直接退出不保存修改。
  • /,可以进行搜索,在 / 后面加上要搜索的文字,然后回车。
  • n,可以查找下一处。
  • N,可以查找上一处。
  • ctrl+f,向后翻页。
  • ctrl+b,向前翻页。

详细的使用说明,可以查看 vim 命令的帮助,vim --help

移动/重命名目录或文件 mv( move )

移动或重命名目录或者文件,使用的是同一个命令:

mv 要移动的目录/文件 移动之后的目录/文件

在这个后面先指一定想要移动的目录或者文件的位置,一个空格,后面再加上移动以后的目录和文件所在的位置。这里我们得先理解一下几个路径的意思:

/

表示系统的根目录。

~

表示当前所登录的用户的主目录。

.

一个点表示当前的目录。

../

两个点加一个斜线,表示上一级目录。

../../

表示上两级目录。知道了这些,我们就可以去移动目录或文件了。

mv www www1

上面这行命令的意思是,把当前目录里面的 www 这个目录重命名为 www1

mv www1 ../

这样会把 www1 这个目录移动到当前目录的上一级目录下面,你可以进入到当前目录的上一级目录:

cd ../

然后列出目录里面的东西:

ls

看到 www1 目录了吗?删除它可以使用 rm 命令加上 rf 参数:

rm -rf www

再用 ls 看一下,是不是 www1 已经不在了。* 号表示所有的文件或目录,比如你想把某个目录下面的所有的目录或文件移动到某个地方,可以这样:

mv /home/www/drupal/* /home/www/ninghao

上面命令会把 /home/www/drupal 里面的东西全部都移动到 /home/www/ninghao 这个目录里面。

复制目录或文件 cp( copy )

cp 要复制的东西 要复制到哪里

比如你当前目录下面有一个 hello.txt 文件,你想复制一份,复制以后的文件叫 hello.bak ,可以这样:

cp hello.txt hello.bak

你想把 hello.bak 复制到某个目录的下面:

cp hello.bak /home/bak

这样会把 hello.bak 这个文件复制到 /home/bak 里面,注意,bak 这个目录必须已经存在了。

复制目录,你需要添加一个 -R 的参数,它会递归的去复制目录以及目录里面的所有的东西。比如要把 www 这个目录复制一份,复制以后的目录名是 www1

cp -R www www1

总结

暂时就先总结这些,都是比较基础的目录与文件的操作,但又非常的重要。在配置服务器的时候,都会经常用到这些命令,多动手练习一下,掌握它们。

服务器 CentOS

评论

要记住太多命令了,头疼,偶看现在用WinSCP远程管理Linux服务器,确实好用,新手可以试试。

哎呀,不要用图形界面,练练这些命令吧 :)

请问 你的一套课程里 有免费的 有权限设置的
是用 content access 做的么 还是自己写的模块
还是其他方法

content access

想学linux,每次到命令这就卡住了,命令太多,用man又全是英文。。。难受啊。

content access 没有权限的页面 会显示 “拒绝访问” 。 是
admin/config/system/site-information这里“默认禁止访问(403错误)页面” 这里设置 没有权限的页面么。这里好像是所有没有权限的页面显示的页面。
有没有专门是 content access 设置的没有访问权限的 模块或设置方法。用page manager 或者 views 有可能实现显示其他页面么

最关键的是 用了 content access 用views 输出标题 如果没有权限 直接不显示了

打开你想要编辑的 Views,在 高级 区域里,找到 查询设置,然后勾选一下 停止SQL重写。这样会为你解决权限的问题。

更新很快, 都是干货, 支持啊!

练习一下看看,遇到问题一起解决下。

浩哥,我的阿里云服务器已经有挂载点了,而当使用“yum install httpd”命令安装Apache服务器时,却没反应。这是咋回事儿呀?

用的是 CentOS 的系统吗?

微信好友

用微信扫描二维码,
加我好友。

微信公众号

用微信扫描二维码,
订阅宁皓网公众号。

240746680

用 QQ 扫描二维码,
加入宁皓网 QQ 群。

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点