Linux

Linux基础

Linux的概述

Linux是由Linus Torvalds(林纳斯·托瓦兹)起初开发的,由于源代码的开放性,现在已经衍生出了千上百种不同的Linux系统。

Android底层就是运行在Linux上的

Linux的分类

linux根据市场需求不同,基本分为两个方向:

  • 图行化界面版:注重用户体验,类似window操作系统,但目前成熟度不够
  • 服务器版:没有好看的界面,是以在控制台窗口中输入命令操作系统的,类似于DOS,是我们架设服务器的最佳选择

Linux根据原生程度,又分为两种

  • 内核版本:在Linus领导下的内核小组开发维护的系统内核的版本号
  • 发行版本:一些组织或公司在内核版基础上进行二次开发而重新发行的版本

Linux发行版本不同,又可分为:

  • ubuntu:注重用户界面
  • CentOS:免费,企业用的特别多
  • redhat
  • 中标麒麟,红旗 (国产)

虚拟机的安装

虚拟机分类

  • VMware(威睿)公司的虚拟机软件,功能强大,收费
  • VitrualBox虚拟机软件,Orale公司的虚拟机软件,免费商品

Linux的安装

Linux的目录结构图

常用命令

基本命令

  • cd
    • cd usr 切换到该目录下的usr
    • cd ../ 换到上一目录
    • cd / 切换到跟目录
    • cd ` 切换到用户主目录
    • cd - 切换到上一个目录

查找

  • ls 展示目录列表
    • 可以加参数 -l 表示列表详细信息 ls -l 可以简写成ll
    • -a 表示隐藏文件
    • 也可以加 -la
  • find 目录 参数 文件名称 搜索
    • find /root -name 'text*' 搜目录下的文件名开头是text的文件(递归查找即找所有的文件)

增删改

  • mkdir 文件夹名 创建文件夹
  • mv aaa bbb 把aaa重命名为bbb mv全名是move
    • mv可以对一切数据类型的文件重命名(文件,压缩包…)
  • mv 目录名称 目录新的位置 剪切
    • mv可以对一切数据类型的文件剪切(文件,压缩包…)
  • cp -r 文件名称 新的目标目录 复制,-r 表示递归
  • rm -rf 要删除的目录名 删除,-r 表示递归 -f 表示强迫(没有提示)

查看文件

  • touch 文件 创建文件

  • cat 文件名 查看文件内容,但是只能显示一页

  • more 文件名 可以查看文件,显示第一页,然后按空格显示下一页,回车显示下一行,按q退出
  • less 文件 可以查看文件,显示第一页,按pgup显示上一页,pgdn显示下一页
  • tail -num 可以查看文件的后num行
    • tail -f 可以动态查看文件

修改文件的内容(改) 为文件添加或修改内容

vimvi的升级版

  • vim 文件名 进到文件中编辑,此刻是命令模式(不能编辑),按 iao进入编辑模式,编辑完之后,在点esc退出到命令模式,点 : 变成底行模式
    • 底行模式下,wq 保存并退出, q! 退出不保存

解压跟压缩

  1. 打包并压缩文件
    • tar -zcvf 打包后的文件名 要打包的文件
      • Linux压缩文件一般是这种形式:xxx.tar.gz
      • z:调用gzip压缩命令进行压缩 c:打包文件 v:显示运行过程 f:指定文件名
  2. 解压
    • tar -xvf 要解压的文件
    • tar -xvf 要解压的文件 -C 目录 把压缩包解压到指定的位置

权限

ll 查看列表之后的第一列表示权限

  • 文件的类型:
    • d:代表目录
    • -:代表文件
    • l:代表链接(可以认为是window中的快捷方式)
  • 后面的9位分为3组,每3位置一组,分别代表属主的权限与当前用户同组的用户的权限其他用户的权限
    • r:代表权限是可读,r也可以用数字4表示
    • w:代表权限是可写,w也可以用数字2表示
    • x:代表权限是可执行,x也可以用数字1表示

修改文件/目录的权限的命令:chmod
例如:chmod u=rwx,g=rw,o=r aaa.txt
还可以用数字表示:因为三个权限不同组合的数字肯定是不一样的

其他

  1. pwd 查看当前所在的工作目录
  2. ps -ef 查看当前进程 (第二列是端口号)
  3. kill 结束某一个进程
  4. 搜索命令grep 要搜索的关键字 要搜索的文件 --color //加color表示要关键字高亮
  5. 管道命令: | 将前一个命令的结果作为下一个命令的输入
  6. ifconfig
  7. 查看端口 netstat-an
    8.reboot重启 halt关机

注意:

  1. 按tab键可以自动补全要输入的文件名,前提是文件夹中有你想输入的
  2. linux中没有扩展名,扩展名只是为了阅读方便
  3. Ctrl + c 表示强制退出
  4. ./代表当前文件夹下的所有内容
  5. Linux安全性的一个体现在他的端口不是随意更改的一般为22
  6. 当某个命令不会用的时候,用 –help 显示提示信息
  7. 前面加 . 表示隐藏文件

远程连接工具的使用

关于远程工具乱码的解决:
使用远程工具进行连接时,如果linux有中文文件或目录,显示时会出现乱码,原因是linux编码是UTF-8,而远程工具默认是当前系统本地编码即GBK。所以解决方案是统一两者编码就OK了,但是该SSH Secure工具不能设置编码,所以通过修改linux的系统编码的方式进行统一编码。

- 配置文件中改,进入配置文件夹**etc**
- 进入cd sysconfig/
- 其中有一个 `i18n` 进入  vim i18n  再改GBK

Linux的软件的安装

rpm与软件相关的命令,相当于window下的软件助手

JDK的安装

  1. 查看当前Linux系统是否已经安装java
    输入rpm -qa | grep java

  2. 卸载两个openJDK
    输入rpm -e --nodeps 要卸载的软件

  3. 上传jdk到linux

  4. 解压jdk到/usr/localtar –xvf jdk-7u71-linux-i586.tar.gz –C /usr/local

  5. 配置jdk环境变量,打开/etc/profile配置文件,将下面配置拷贝进去

    1
    2
    3
    4
    5
    set java environment
    JAVA_HOME=/usr/local/jdk1.7.0_71
    CLASSPATH=.:$JAVA_HOME/lib.tools.jar
    PATH=$JAVA_HOME/bin:$PATH
    export JAVA_HOME CLASSPATH PATH
  6. 重新加载/etc/profile配置文件 source /etc/profile

Mysql的安装

1.查看CentOS自带的mysql

输入 rpm -qa | grep mysql

2.将自带的mysql卸载

3.上传Mysql到linux
4.解压Mysql到/usr/local/下的mysql目录(mysql目录需要手动创建)内
cd /usr/local
mkdir mysql
tar -xvf MySQL-5.6.22-1.el6.i686.rpm- bundle.tar -C /usr/local/mysql
会解压成几个.rpm文件,相当于window的.exe文件
5.在/usr/local/mysql下安装mysql
安装服务器端:rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm
安装客户端:rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm
6.启动mysql
service mysql start
7.将mysql加到系统服务中并设置开机启动
加入到系统服务:chkconfig --add mysql
自动启动:chkconfig mysql on
8.登录mysql
mysql安装好后会生成一个临时随机密码,存储位置在/root/.mysql_secret
msyql –u root -p
9.修改mysql的密码
set password = password('root');
10.开启mysql的远程登录
默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启 远程登录mysql的权限
登录mysql后输入如下命令:

1
2
grant all privileges on *.* to 'root' @'%' identified by 'root';
flush privileges;

11.开放Linux的对外访问的端口3306(重点)

1
2
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save ---将修改永久保存到防火墙中

Tomcat的安装

  1. 上传Tomcat到linux上
  2. 解压Tomcat到/usr/local下
  3. 开放Linux的对外访问的端口8080
1
2
/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
/etc/rc.d/init.d/iptables save

4.启动关闭Tomcat
进入tomcat的bin下启动:./startup.sh
进入tomcat的bin下关闭:./shutdown.sh

Linux常用命令

1.移动文件:mv [源文件] [目标文件]
2.删除文件或目录:rm –d删除目录 –f强制删除 –r递归删除 [文件或目录名]
3.修改文件或目录群组:chgrp –r递归 [群组] [文件或目录]
4.修改文件或目录权限:chmod -r递归 [权限范围] [文件或目录]
5.修改文件或目录拥有者:chown -r递归 [权限范围] [文件或目录]
6.复制文件或目录:cp –f强制 –r递归 [源文件] [目标文件]
7.切换目录:cd [目的目录]
8.显示目录下文件:ls –a所有 –l详细格式列表 –r递归
9.创建目录:mkdir –p如果上级目录没有建立则一并创建 [目录名称]
10.显示当前绝对路径:pwd
11.删除目录:rmdir –p删除后如果上级目录为空一并删除 [目录名称]
12.变更用户身份:su [账户]
13.以其它身份执行命令:sudo –u [账户] [指令]
14.添加用户:adduser –g [群组] –e[权限] –u[账号]
15.删除用户:userdel –f删除用户登录目录以及目录中的文件 [用户账户]
16.Ubuntu初始化root: sudo passwd
17.重启:reboot
18.更改ip等网络设置:setup
19.服务更改生效命令:service network restart
20.关机:halt

  • 查询tomcat的端口
    1
    2
    3
    4
    5
    6
    //先找出pid
    ps -aux | grep tomcat
    //在根据pid找到端口
    netstat -naop | grep 15566
    //根据端口找到相应的信息
    netstat -nltp | grep 2181
张冲 wechat
欢迎扫一扫上面的微信关注我,一起交流!
坚持原创技术分享,您的支持将鼓励我继续创,点击打赏!