linux

作者 新城 日期 2017-11-23
linux

linux菜鸟教程

Linux简介

操作系统在整个计算机中得角色
image

应用程序:指系统中安装的各类软件
硬件:指电脑内部的cpu,内存条,电路板等
操作系统用于连接应用程序和硬件的中间件

Linux和windows得区别

1.费用

  • 最新版win10是需要收费的
  • Linux免费

2.软件与支持

  • Windows 平台:数量和质量的优势,不过大部分为收费软件;由微软官方提供重要支持和服务;
  • Linux 平台:大都为开源自由软件,用户可以修改定制和再发布,由于基本免费没有资金支持,部分软件质量和体验欠缺;由全球所有的 Linux 开发者和自由软件社区提供支持。

3. 安全性

  • Windows 平台:三天两头打补丁安装系统安全更新,还是会中病毒木马;
  • Linux 平台:要说 Linux 没有安全问题,那当然是不可能的,这一点仁者见仁智者见智,相对来说肯定比 Windows 平台要更加安全,使用 Linux 你也不用装某杀毒、某毒霸。

4.使用习惯

  • Windows:普通用户基本都是纯图形界面下操作使用,依靠鼠标和键盘完成一切操作,用户上手容易,入门简单;
  • Linux:兼具图形界面操作(需要使用带有桌面环境的发行版)和完全的命令行操作,可以只用键盘完成一切操作,新手入门较困难,需要一些学习和指导(这正是我们要做的事情),一旦熟练之后效率极高。

windows缺少的

  • 稳定的系统
  • 安全性和漏洞得快速修补
  • 多用户
  • 相对较少得系统资源占用
  • 可定制裁剪,移植到嵌入式平台
  • 可选择的多种图形用户界面(如 GNOME,KDE)

Linux缺少的

  • 特定的支持厂商
  • 足够的专业软件支持

Linux学习路线
image

Linux常用命令

阿里云测试软件(Xshell)
[root@localhost ~]#

1
2
3
4
5
root            #表示当前登录用户名
localhost #表示主机名
~ #当前所在目录(根目录)
# #超级用户提示符
$ #普通用户提示符

一 命令基本格式
1
2
3
4
5
6
7
命令  [选项]  参数               #除去少数命令不遵循此规则      多个选项可以写在一起
ls [选项] [文件和目录]
#选项
-a 显示所有的文件,包括隐藏的文件
-l 显示详细信息
-d 人性化显示目录大小
-i 显示inode
二 文件处理命令(入门)

在 LINUX 命令平台输入 1-2 个字符后按 Tab 键会自动补全后面的部分(前提是要有这个东西,例如在装了 tomcat 的前提下, 输入 tomcat 的 to 按 tab)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
文件处理命令
cd / #进入根目录
cd ../ #返回上级目录
cd 文件夹 #进入指定文件夹

cat 文件名 #显示文件内容
mkdir 文件夹名称 # 新建文件夹
rm -f 文件夹名称 #删除文件夹
-i 删除前逐一询问确认。
  -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
  -r 将目录及以下之档案亦逐一删除。

vi 创建文件的文件名称
#保存文件
Esc + : + wq 然后回车 保存成功

注意:Linux系统没用回收站 删除文件之后无法恢复

三 Linux开关机命令
1
2
3
4
shutdow    #关机指令
shutdown -h now #马上关机
shutdown -r now #系统立马重启
reboot #系统立马重启
四 处理目录常用命令

建议打开shell客户端挨个试试

1
2
3
4
mkdir  新建文件夹
rmdir 删除一个空目录
rm 一处文件或者目录
pwd 展示当前所在目录

文件编辑

image

1
vi text.txt   #进入文件

按下i o a 按钮进入编辑模式 进入编辑模式之后只有按下ESC按键才可以退出编辑模式

在一般模式中按下 :wq 储存后离开 vi

TODO //##### 五 linux如何关闭防火墙

阿里云(Xshell)启动node服务 关于控制进程常用命令
1
2
3
4
5
6
7
ps     # 查看当前正在运行的进程

kill -9 [pid] #=强制杀死某个进程 -9表示强制

ps -aux | grep (node tomcat) # 查看指定程序占用端口进程

nohup node index.js linux 自带启动弄的服务命令

个人github搭建博客地址

注意
当我使用shell执行node prod.server.js启动服务,退出shell软件的时候 发现服务器运行的项目自动关闭
解决办法
执行node prod.server.js的时候 nohup node prod.server.js &
查看进程ps -aux | grep node
kill 端口号 结束端口号

目录结构

linux目录结构
树状目录结构

目录详解
  • /bin
    bin是Binary的缩写,存放最经常使用命令
  • /boot
    存放启动Linux的时候使用方的一些核心文件,包括一些链接文件 以及镜像
  • /dev
    dev是Device(设备)的缩写,存放linux的外部设备
    • /etc
      这个目录用来存放所有的系统管理所需要的配置文件和子目录
  • /home
    用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的
    • /lib
      这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
  • /lost+found
    这个目录一般情况是空的,当系统非法关机之后,这里存放一些文件
  • /media
    linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
  • /mnt
    系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
    • /opt
      这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
    • /proc
      这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息
  • /root
    该目录为系统管理员,也称为超级权限着的用户主目录。
  • /sbin
    super User 这里存放着系统管理员的系统管理程序
  • /seliinux
    这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的
  • /srv
    该目录存放一些服务启动之后需要提取的数据
  • /sys
    这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
    sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。
    该文件系统是内核设备树的一个直观反映。
    当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
  • /tmp
    这个目录存放一些临时文件
  • /usr
    这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录
  • /usr/bin
    系统用户使用的应用程序
  • /usr/sbin
    超级用户使用的比较高级的管理程序和系统守护程序。
  • /usr/src**
    内核源代码放置目录
  • **/var
    这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
    重要目录简介
  • /etc
    这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动
  • /bin, /sbin, /use/bin, /usr/sbin
    这是系统预设的执行文件的放置目录,比如 ls 就是在/bin/ls 目录下的
  • /bin, /usr/bin
    是给系统用户使用的指令(除root外的通用户),而/sbin, /usr/sbin 则是给root使用的指令。
  • /var
    这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log 目录下