Linux命令
基础命令
压缩:
tar -czvf temp.tar.gz temp zip -r temp.zip temp -r表示递归 jar -cvf temp.war temp
解压:
tar -xvf temp.tar.gz
unzip temp.zip
jar -xvf temp.war
添加日志快捷键:
vim /etc/profile alias logdty='tail -f /home/eland/xiangmu/dty/logs/catalina.out' source /etc/profile
查看进程并结束:
ps -ef | grep java kill -9 进程号
服务器告警:
df -h:查看磁盘使用率 top:查看内存、cpu使用情况 du -h --max-depth=1 / :查看某个目录的大小
free -g:查看内存大小
grep 'core id' /proc/cpuinfo | sort -u | wc -l:查看核心数
grep 'processor' /proc/cpuinfo | sort -u | wc -l:查看线程数 cat /dev/null > $logfile:清除文件内容,rm不会释放空间
rm回收站
vi /root/.bashrc
编辑如下:
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
alias log='tail -f /root/apache-tomcat-6.0.28/logs/catalina.out'
#-----rm 误操作命令修改-------------#
mkdir -p ~/.trash #在家目录下创建一个.trash文件夹 trash:是垃圾,废物,丢弃的意思。
alias rm=del #使用别名del代替rm
del() #函数del,作用:将rm命令修改为mv命令
{
mv $@ ~/.trash/
}
cleardel() #函数cleardel,作用:清空回收站.trash文件夹,y或Y表示确认,n表示取消
{
read -p "clear sure?[Input 'y' or 'Y' to confirm. && Input 'n' to cancel.]" confirm
[ $confirm == 'y' ] || [ $confirm == 'Y' ] && /bin/rm -rf ~/.trash/*
}
最后source ~/.bashrc
清空回收站:
/bin/rm -rf ~/.trash/*
或cleardel
权限:
文件属主属组权限: chown -R eland:eland /home/eland/ 文件的读写权限: chmod -R 777 /home/eland Linux的每个文件一般都有三个权限 r--读,w--写,x--执行,其分别对应的数值为4,2,1。7即代表有读、写和执行的权限。那么为什么是三个7呢?“三”是指三种不同的对象,User,Gourp,Other。即文件所有人,文件所有组,和其他人
查看脚本执行日志:
bash -x test.sh
crontab
查看定时任务:crontab -l
编辑定时任务:crontab -e
ssh跳转
ssh -p22 root@192.168.1.201
端口
查看端口号:more /etc/sysconfig/iptables 开放端口:vi /etc/sysconfig/iptables,添加一条-A INPUT -p tcp -m tcp --dport 8889 -j ACCEPT
重启服务:/etc/init.d/iptables restart
挂载
查看硬盘信息:fdisk -l|grep Disk 挂载: mkdir /www mount /dev/xvdb1 /www 修改/etc/fstab文件,增加一行:/dev/xvdb1 /www ext3 defaults 0 0 重新加载:source /etc/fstab
查看端口和进程
根据进程名查看进程:ps -ef | grep java 根据进程id查看端口号:netstat -nap | grep 1095 根据端口查看对应进程:netstat -tunlp | grep 8080 杀死进程:kill -9 1095
mysql
导出数据库
mysqldump -uuser -ppwd database > database.sql
导入数据库
mysql -ueland -ppassword; create database db; use db; set names utf8; source /home/elanf/my.sql;
Nginx
cd /usr/local/nginx/conf/ext.d vim docker.conf 8yy 复制8行 p 执行 u 撤销 :wq保存并退出 /usr/local/nginx/sbin/nginx -t 检查Nginx语法 /usr/local/nginx/sbin/nginx -s reload 重新加载Nginx
docker
1.查看Linux信息
uname -a:查看操作系统内核信息
cat /proc/cpuinfo:查看cpu相关信息
cat /etc/*release*:查看Linux系统类别
2.docker 安装
CentOS7 :sudo yum install -y docker
3.docker启动、重启、关闭命令
启动:service docker start
停止:service docker stop
重启:service docker restart
查看docker版本:docker version
4.镜像
查询DockerHub镜像:docker search centos/ubuntu
安装基础镜像:docker pull centos 默认为lastest
制作镜像:
1.在基础镜像上添加,思路:在容器中改造,如tomcat、jdk等,然后docker commit
2.DockerFile制作镜像
查看所有镜像:docker images
删除镜像:docker rmi [imageId]
5.容器
启动容器:docker start [containName]
停止容器:docker stop [containName]
重启容器:docker restart [containName]
运行容器:docker run -d --name my_container centos centos为镜像名称
docker运行参数:
-d, --detach=false 指定容器运行于前台还是后台,默认为false
-i, --interactive=false 打开STDIN,用于控制台交互
-t, --tty=false 分配tty设备,该可以支持终端登录,默认为false
-u, --user="" 指定容器的用户
-a, --attach=[] 登录容器(必须是以docker run -d启动的容器)
-w, --workdir="" 指定容器的工作目录
-c, --cpu-shares=0 设置容器CPU权重,在CPU共享场景使用
-e, --env=[] 指定环境变量,容器中可以使用该环境变量
-m, --memory="" 指定容器的内存上限
-P, --publish-all=false 指定容器暴露的端口
-p, --publish=[] 指定容器暴露的端口
-h, --hostname="" 指定容器的主机名
-v, --volume=[] 给容器挂载存储卷,挂载到容器的某个目录
--name 指定容器名字,后续可以通过名字进行容器管理,links特性需要使用名字
进入容器:sudo docker exec -it [containId] /bin/bash
删除容器:docker rm [containName] 要先停止再删除哦
6.DockerFile
7.查看docker容器ip:
docker inspect -f='{{.Name}} {{.NetworkSettings.IPAddress}} {{.HostConfig.PortBindings}}' $(docker ps -aq)