linux
Linux介绍和软件安装
1.linux简介
linux系统的应用
服务器系统:web应用服务器,数据库服务器,接口服务器,DNS,FTP等等。
嵌入式系统:路由器,防火墙,手机,PDA,IP分享器,交换器等
高性能运算,计算密集型应用
桌面应用系统
移动手持系统
linux版本:
内核版本和发行版本
linux主流版本:
2.虚拟软件安装
虚拟机安装
虚拟机软件:VmWare收费、VirtualBox免费
3.centos安装
创建新虚拟机
centos
4.linux目录结构
Linux的常用命令
ifconfig 看ip地址
1.切换目录命令 cd
到上一个路径 cd -
2.列出文件列表 ls, ll, dir
ls -a 显示所有包含隐藏的
ls -l 相当于 ll
3.创建目录,移除目录mkdir, rmdir
mkdir app 在当前目录下创建app目录
mkdir -p app2/test 级联创建app2以及test目录
rmdir app 删除app目录
4.cat, more, less, tail
cat 显示文件内容,cat[参数]<文件名>
more 一般用于要显示的内容会超过一个画面的长度的情况,按空格键显示下一个画面
回车显示下一行内容,按q退出查看
less 与more类似,用PgUp和PgDn键来控制
tail 用于显示文件后几行内容
tail -10 /etc/passwd 查看后10行数据
tail -f xxx.log动态查看日志
5.rm
rm 删除文件, rm 文件名 (删除需要用户确认 y/n)
rm 删除不询问 rm -f 名字 (不询问,直接删除)
rm 删除目录 rm -r 名字 递归删除
rm 删除目录 rm -rf 名字 递归删除(不询问 直接删除,慎用)
rm -rf * 删除所有文件
rm -rf /*自杀
6.cp, mv
cp复制
eg:
cp a.txt b.txt 将a.txt复制为b.txt
cp a.txt ../ 将 a.txt文件复制到上一层目录中
mv移动
mv a.txt ../ 将a.txt文件移动到上一层目录中
mv a.txt b.txt 将a.txt文件重命名为b.txt
7.tar
tar命令位于/bin目录下,他能将用户所指定的文件或目录打包成一个文件,但不做压缩,一般linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件
常用参数
eg
tar -cvf xxx.tar ./*
tar -czvf xxx.tar.gz ./*
-c创建一个新tar文件
-v显示运行过程的信息
-f指定文件名
-z调用gzip压缩命令进行压缩
解压
tar -xvf xxx.tar
指定路径解压
tar -xvf xxx.tar.gz -C /usr/aaa
8.grep
查找符合条件的字符串
grep (选项) … PATTERN [FILE] …
示例:
grep lang anaconda-ks.cfg 在文件中查找lang
grep lang anaconda-ks.cfg -color 高亮显示
定位错误信息
前三行后五行
grep debug xxx.conf --color -A5 -B3
9.其他常用命令
pwd 显示当前所在目录
touch创建一个空文件
ll -h 友好显示文件大小
wget下载资料
10.VI和VIM编辑器
vi 既可以查看文件也可以编辑文件
三种模式 命令行、插入、底行模式
切换到命令模式:按esc
切换到插入模式:按i,o,a键
切换到底行模式:按:键
打开文件:vim file
退出 esc --> :q
修改文件:i 进入插入模式
保存并退出:esc–> :wq
不保存退出:esc–>:q!
进入插入模式:
i :在当前的光标所在处插入
o:在当前光标所在行的下一行插入
a:在光标所在的下一个字符插入
快捷键:
dd - 快速删除一行
R - 替换
11重定向输出
>重定向输出
>>重定向输出,又追加功能
例:
cat /etc/passwd > a.txt 将输出定向到a.txt中
cat /etc/passwd >> a.txt 将输出并追加
ifconfig > ifconfig.txt
12管道和命令执行控制
管道是将一个命令的输出用作另一个命令的输入
例:
ls --help | more 分页查询帮助信息
ps -ef |grep java 查询名称中 包含java的进程
ifconfig |more
cat index.html |more
ps -ef |grep aio
命令之间使用&& 连接,实现逻辑与的功能
只有在&&左边的命令返回真,&&右边的命令才会被执行
只要有一个命令返回假,后面的命令就不会被执行
13网络通讯的命令
ifconfig 显示或设置网络设备
ifconfig 显示网络设备
ifconfig eth0 up 启用eth0网卡
ifconfig eth0 down 停用eth0网卡
ping 探测网络是否通畅
ping 网址
nestat 查询网络端口
netstat -an | grep 2204 查询2204端口占用情况
14系统管理的命令
date 显示或设置系统时间
date显示当前系统时间
date -a “2020-10-10 10:10:10” 设置系统时间
df 显示错误信息
df -h 友好显示大小
free 显示内存状态
free -m 以mb单位显示内存组
top显示,管理执行中的程序
clear 清屏幕
ps正在运行的某个进程的状态
ps -ef 查看所有进程
ps -ef | grep ssh 查找某一进程
kill 杀掉某一进程
kill 2688 杀掉2688编号的进程
kill -9 2688 强制杀死进程
du 显示目录或文件的大小
du -h 显示当前目录的大小
who显示目前登入系统的用户信息
hostname查看当前主机名
修改:vi /etc/sysconfig/network
uname 显示系统信息
uname -a 显示本机详细信息
依次为:内核名称(类别),主机名,内核版本号,内核版本,内核编译日期,硬件名,处理器类型,硬件平台类型,操作系统名称
15用户管理的命令
useradd 添加一个用户
useradd test 添加test用户
useradd test -d /home/t1 指定用户home目录
passwd 设置、修改密码
passwd test 为test用户设置密码
切换登陆
ssh -l test -p 22 xxx.xxx.xx.xxx
su -用户名
userdel 删除一个用户
userdel test 删除test 用户(不会删除home目录)
userdel -r test 删除用户以及home目录
17.组管理的命令
当在创建一个新用户user时,若没有指定他所属于的组,就建立一个和该用户同名的私有组
创建用户时也可以指定所在组
groupadd 创建组
groupadd public 创建一个名为public 的组
groupadd ul -g public 创建用户指定组
groupdel 删除组,如果该组有用户成员,必须先删除用户才能删除组
groupdel public
18.权限管理
id命令
功能:查看一个用户的UID和GID
用法:id【选项】…【用户名】
直接使用id
直接使用id 用户名
su命令
功能:切换用户
用法:su【选项】…【-】【用户【参数】。。。】
例
su ul 切换到ul用户
账户文件
/etc/passwd 用户文件
/etc/shadow密码文件
/etc/group组信息文件
linux权限命令
linux文件三种类型
文件类型标识
文件权限管理
chmod 变更文件或目录的权限
chmod 755 a.txt
chmod u= rwx,g=rx a.txt
chmod 000 a.txt /chmod 777 a.txt
chown 变更文件或目录该文件所属用户和组
chown ul:public a.txt 变更当前的目录或文件的所属用户和组
chown -R ul: public dir 变更目录的所有的子目录和文件的所属用户和组
linux的环境部署
1.linux下安装jdk
查看:rpm -qa | grep java
卸载:rpm -e --nodeps java-1.x.0-openjdk-1.x.0.xx-x.x.x.x…
创建安装路径:mkdir java
上传安装文件到linux:rz
安装依赖:yum install glibc.i686
解压:tar -xvf xxx.tar.gz -C weizhi
配置:进入 vim etc/profile
插入:
重新加载配置文件:source /etc/profile
2.linux下安装mysql
上传:mysql包
查看:rpm -qa | grep mysql
卸载:rpm -e --nodeps mysql-libs…
创建目录:
解压到创建的目录:
解压:
安装依赖:yum -y install libalo.so.1 libgcc_s.so.1 libstdc++.so.6
yum update libstdc+±4.4.7-4.el6.x86_64
安装server:rpm -lvh MySQL-server-…
安装client:rpm lvh MySQL-client…
启动服务:service mysql start
使用root账号登录 ,产生随机密码
修改密码:set password = password(‘12345’);
系统启动时自动启动mysql服务
加入到系统服务:chkconfig --add mysql
自动启动:chkconfig mysql on
查询列表:chkconfig
说明:都没关闭(off)时是没有自动启动
开启远程访问
登录 mysql -uroot -p123456
设置远程访问(使用root密码)
grant all privilege on . to ‘root’ @’%’ identified by ‘123456’
flush privileges;
防火墙打开xx端口
/sbin/iptables-l INPUT -p tcp -dport xx -j ACCEPT
/etc/rc.d/init.d/iptables save
/etc/init.d/iptables status
3.linux下装tomcat
上传安装文件
创建安装路径
解压tomcat
设置防火墙
4.linux下还原mysql
启动tomcat
进入到tomcat/bin
执行./startup.sh
关闭tomcat
./shutdown
(1)备份windows上的数据库
mysqldump -u root -p 数据库 >C:
右键导出
(2)还原
create database store_v2.0
use store_v2.0
source /root/store_v2.0.sql
5.linux下发布web项目
Nginx
1.Nginx概述