Linux基础3

Linux基础3

  • 计划任务
  • 压缩解压缩
  • 软件安装
  • 环境安装

复习

useradd 用户名   /etc/passwd 
    -m 
    -d 
    -g 
    -u 
    -s
passwd 用户
su 
chmod -R  775 
      g
      u
      o
      a 
      +x
      +r
      +w 

chown 
chattr 
cp 
vim 命令  ioasl   底部命令模式
:set nu  
/
?
chgrp

Linux启动顺序

  • 开机bios 加电自检
  • 读取硬盘mbr 引导分区
  • 加载Linux内核
  • 加载 init进程 系统初始化
    • init 0 关机
    • init 6 重启
    • init 1 单用户模式
    • init 2 3 4 5 带图形界面的完全多用户模式
  • vim /etc/init/rc-sysinit.conf 设置启动级别
  • 启动内核
  • 执行不同的脚本程序 /etc/rc0~6.d
  • 执行 /etc/init.d/rc.local 看看哪些软件开机自动启动

面试常问 runlevel 查看当前的运行级别

Linux计划任务 重点

在指定的时间 做指定的事情 周期性的

vim /etc/crontab

46 9   30  8  4 need888 echo 'kangbazi666' >> /home/need888/test.txt
分  时  日 月 周  用户名  命令  
*  * * * *   用户名  命令  
每分钟 每小时 每天  每月 每周 执行命令  

sudo crontab -e  第二种新建计划任务的方法  

* * * * * 命令   
分 时 日 月 周 命令  没有用户名  
0~59  0~23 1~31 1~12 0~6 

crontab -e 默认是给 root 用户创建的计划任务  
crontab -e -u 用户名  给指定的用户 创建计划任务  
crontab -l 列出所有的计划任务  只显示 crontab -e的计划任务  不显示  vim /etc/crontab 配置文件中的
crontab -i 删除之前提示  
crontab -r 清空所有的计划任务  

如果需要删除 指定的计划任务  
需要 先 crontab -e 
进去之后删除    

service cron start|stop|restart 

每天 0点备份数据库 
    0 0 * * * mysqldump
每个星期二2点数据同步  
    0 2 * * 2 rsync   
每个月150点计算工资 
    0 0 15 * * /home/jd/slaray.py
每隔1小时执行一次脚本  
    0 */1 * * * shell.py
每周一到周五 每天的八点 121418点打卡 
    0 8,12,14,18 * * 1-5 dakai.py
每天的8-22点必须在教室
    0 8-22 * * * classroom.py 

at 用来执行 一次性任务 适用于突发性 和 临时性的任务

sudo apt-get install at   #安装 
service atd status #查看服务是否运行    active (running) 
service atd restart|start|stop #服务重启开始关闭  
at [-ldc] 
    -l 列出任务列表 
    -d 任务编号 #取消任务
    -c 任务编号 #显示该任务的实际内存
at 时间   #然后回车  
输入命令  
ctrl+d   即可   


need888@need:~$ at 10:25
warning: commands will be executed using /bin/sh
at> echo 6666 >> /home/need888/haha.haha<EOT>
job 2 at Thu Aug 30 10:25:00 2018
need888@need:~$ at -l
2   Thu Aug 30 10:25:00 2018 a need888

at now + 20minutes|days|hours|weeks 

at now + 8days   然后回车 
输入命令 
CTRL+d 

压缩 与解压缩

windows 常见的压缩包 .rar .zip .7zip .iso

linux 常见的压缩包 .gz .bz2 .xz .tar .zip

.gz 的压缩 与解压缩
sudo apt-get install gzip  没有安装先安装  
gzip 文件名1 文件名2 文件名3 支持批量压缩   源文件被替换成  .gz结尾的文件     
gzip -d 1.txt.gz 2.mp3.gz 3.avi.gz 4.rmvb.gz 
     -d 解压缩
gzip 不能压缩目录  
.bz2的压缩与解压缩
sudo apt-get install bzip2 
bzip2 1.txt 2.mp3 3.avi 4.rmvb  支持批量压缩  源文件被替换掉  替换成 .bz2的文件   也不能压缩目录   
bzip2 -z 文件名   强制压缩  
bzip2 -d 文件名   解压缩
bzip2 -d 1.txt.bz2 2.mp3.bz2  3.avi.bz2  4.rmvb.bz2  支持批量解压缩   

zip unzip
sudo apt-get install zip unzip

zip goods.zip 1.txt 2.mp3 3.avi 4.rmvb study/   支持批量压缩  还可以压缩目录 源文件还存在  

unzip goods.zip  源文件 存在  
tar
-c 打包 
-x 解包 
-v 显示过程 
-f 指定文件名 
-t 查看包中的内容   

tar -cvf kangbazi.tar 1.txt 2.mp3 3.avi 4.rmvb goods.zip study/
生成一个.tar 的文件   源文件还存在   支持打包目录  .tar 仅仅是打包 没有压缩  

tar -tf kangbazi.tar #查看包里的内容   
tar -xvf  解包   
tar -xvf kangbazi.tar 

tar 打包并压缩 解包并解压缩 .gz

-z 
tar -zcvf kangbazi.tar.gz 1.txt 2.mp3 3.avi 4.rmvb goods.zip study/ 
         新名字.tar.gz    文件1 文件2  目录1 目录2  源文件还存在   支持压缩目录  
tar -zxvf kangbazi.tar.gz 
          包名   
tar 打包并压缩 解包并解压缩 .bz2
-j
tar -jcvf kangbazi.tar.bz2 1.txt 2.mp3 3.avi 4.rmvb goods.zip study/ 
         新名字.tar.bz2    文件1 文件2  目录1 目录2  源文件还存在   支持压缩目录  
tar -jxvf kangbazi.tar.bz2 
          包名  
tar 打包并压缩 解包并解压缩 .xz
-J 大写  
tar -Jcvf kangbazi.tar.xz 1.txt  2.mp3  3.avi  4.rmvb  goods.zip  study
xz 打包并压缩 
tar -Jxvf kangbazi.tar.xz
xz 解包并解压缩 

软件安装

  • apt-get 安装
  • dpkg 安装
  • 源码编译安装

    1. dpkg 安装 类似于 windows 的 exe安装 只要下载下来 安装即可

有个问题 : 存在依赖关系 你安装 A之前 必须先安装上 B 安装B之前 先安装上 C CBA

  1. apt-get 安装 解决了 这个依赖关系 自动下载 依赖包 全程自动安装 但是不能指定安装的位置

    好处 自动 快

  2. 源码编译安装 Linux下 软件都是 用C 和 C++编写 将代码解析成 机器能够是别的过程 就叫做 编译安装

麻烦 但是 比较符合机器的性能 对于服务器来讲 这个 效果最好 这个可以指定安装在什么位置

apt-get 安装
sudo apt-get -y install 包名  -y在这里是提示 
sudo apt-get -y remove  包名
sudo apt-cache showsrc 包名 查看软件包信息 
sudo apt-get source  包名 获取源码信息  
sudo apt-get update 获取新的软件包信息 
sudo apt-get upgrade 升级可以更新的软件包   
sudo snap install pycharm-professional --classic 

apt-get 安装apache

sudo apt-get update 
sudo apt-get install apache2  
service apache2 start|stop|restart 

netstat -ntpa | grep 80 

根目录  /var/www/html 在这里   
sudo vim index.html  修改你想显示的内容  


配置虚拟站点    比如我们想在浏览器中输入  www.kangbazi.com  代替10.11.53.107 
cd /var/www/html  
mkdir -p baidu google sina
cd /etc/apache2/
cd sites-available/
sudo cp 000-default.conf www.baidu.com.conf 
sudo cp 000-default.conf www.google.com.conf 
sudo cp 000-default.conf www.sina.com.conf

分别 sudo vim  www.baidu.com.conf  www.google.com.conf  www.sina.com.conf
:set nu  

<VirtualHost *:80>

  9         ServerName www.baidu.com  
 11         #ServerAdmin webmaster@localhost
 12         DocumentRoot /var/www/html/baidu

 19 
 20         ErrorLog ${APACHE_LOG_DIR}/error.log
 21         CustomLog ${APACHE_LOG_DIR}/access.log combined
 29 </VirtualHost>

第11行注释掉   第9行 取消注释 

<VirtualHost *:80>

  9         ServerName www.google.com  
 11         #ServerAdmin webmaster@localhost
 12         DocumentRoot /var/www/html/google

 19 
 20         ErrorLog ${APACHE_LOG_DIR}/error.log
 21         CustomLog ${APACHE_LOG_DIR}/access.log combined
 29 </VirtualHost>


 <VirtualHost *:80>

  9         ServerName www.sina.com  
 11         #ServerAdmin webmaster@localhost
 12         DocumentRoot /var/www/html/sina

 19 
 20         ErrorLog ${APACHE_LOG_DIR}/error.log
 21         CustomLog ${APACHE_LOG_DIR}/access.log combined
 29 </VirtualHost>


 改完之后 记得重启   

 service apache2 restart 

 cd /var/www/html/baidu/
vim index.html  保存

cd /var/www/html/google/
vim index.html  保存

cd /var/www/html/sina/
vim index.html  保存

到我的电脑 切换到 这里 
C:\Windows\System32\drivers\etc 

把 hosts文件复制到桌面上  
然后 用  sublime 或者记事本 打开  

最后一行 输入  
IP地址 www.baidu.com  这个ip地址就是你的虚拟机的ip地址  这里以   10.11.53.107为例子
IP地址 www.google.com
IP地址  www.sina.com


cd /etc/apache2/sites-enabled
sudo ln -s ../sites-available/www.baidu.com.conf www.baidu.com.conf 
sudo ln -s ../sites-available/www.google.com.conf www.google.com.conf 
sudo ln -s ../sites-available/www.sina.com.conf www.sina.com.conf 


最后 

修改主配置文件 cd /etc/apache2

sudo vim apache2.conf  
最后一行 输入  

164 复制 5行 

<Directory /var/www/>
171          Options Indexes FollowSymLinks
172          AllowOverride None    #允许所有的IP地址能够访问到你的网站  
173          Require all granted 
174 </Directory>
175 
176 <Directory /var/www/>
177          Options Indexes FollowSymLinks
178          AllowOverride None
179          Require all granted
180 </Directory>
181 <Directory /var/www/>
182          Options Indexes FollowSymLinks
183          AllowOverride None
184          Require all granted
185 </Directory>

修改配置文件  一定别忘了重启   
service apache2 restart   

多个域名 可以解析到一个ip地址上面

比如百度 百度由一个服务器 对应一个ip地址

百度有 www.baidu.com qianbao.baidu.com waimai.baidu.com

假如 用户浏览器 输入了 百度的ip地址 只能到一个文件夹

那 如何访问到 钱包 和 外卖 网站?

这个时候 创建三个文件夹 baidu waimai 钱包

配置虚拟站点

www.baidu.com -> baidu

waimai.baidu.com ->waimai

qianbao.baidu.com -> qianbao

用户访问 网址步骤
1.浏览器输入域名  www.qfedu.com
2.先到用户的本机 C:\Windows\System32\drivers\etc\hosts  (Linux 就是 /etc/hosts )文件中查看 是否有 www.qfedu.com 
  10.11.53.107 www.qfedu.com 
  如果有 直接访问 www.qfedu.com 对应的ip地址  
  如果没有  那么 由dns服务器 加速 到 顶级域名服务器 解析域名对应的ip地址  然后返回给浏览器  浏览器访问到IP地址   

dpkg Debian package 的缩写

  • wget -c 链接地址
sudo apt-get install wget 
wget -c  http://cdn2.ime.sogou.com/dl/index/1524572264/sogoupinyin_2.2.0.0108_amd64.deb?st=jzvQj9-mYO17oKd-c9Bgsg&e=1535613142&fn=sogoupinyin_2.2.0.0108_amd64.deb
  • curl -O 链接地址
sudo apt-get install curl  
curl -O http://cdn2.ime.sogou.com/dl/index/1524572264/sogoupinyin_2.2.0.0108_amd64.deb?st=jzvQj9-mYO17oKd-c9Bgsg&e=1535613142&fn=sogoupinyin_2.2.0.0108_amd64.deb

sudo apt-get -f install 
sudo apt-get install fcitx 
sudo apt-get install fcitx-config-gtk
sudo apt-get install fcitx-table-all  
sudo apt-get install im-switch 
sudo dpkg -i sogoupinyin.deb

系统设置->语言支持 键盘输入发  选择 fcitx 
dpkg -i 包名.deb 
dpkg -l | grep 报名  查看软件包  
dpkg -r 
dpkg -P 包名  删除软件的时候  连配置文件一起删除  

源码 编译安装 安装 pycharm 终端下 安装

1.先下载 软件包  
2. sudo apt-get install man gcc make lsof ssh openssl tree vim dnsutils iputils-ping net-tools psmisc sysstat curl telnet traceroute wget libbz2-dev libpcre3 libpcre3-dev libreadline-dev libsqlite3-dev libssl-dev llvm zlib1g-dev git mysql-server mysql-client zip  p7zip 安装上 基础的类库   
3.下载   pycharm-professional-2018.2.2.tar.gz 选择专业版   不要社区版   
tar -zxvf  pycharm-professional-2018.2.2.tar.gz
4.cd pycharm-2018.2.2/bin  
5.sudo ./pycharm.sh  
6.选择do not import settings   
7.
激活的时候 选择  license server : http://idea.imsxm.com  

防火墙 ufw

系统由0~65535个端口  0
0~127 已经被占用  
80 21 22 25 110  443 
1000以下的端口  需要root 权限  

安装  ufw 

sudo apt-get install ufw 

sudo ufw status 查看防火墙 规则    入栈 出栈规则  
sudo ufw disable 禁用防火墙
sudo ufw enable 启用防火墙
sudo ufw reset  重置防火墙
sudo ufw status numbered 显示规则序号


sudo ufw default deny incoming  设置默认规则 拒绝所有的传入链接  
sudo ufw allow 80 开放 80端口
sudo ufw deny http 拒绝http服务 
sudo ufw allow ssh 允许 ssh端口访问 
sudo ufw allow https 允许 https端口访问 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值