Linux基本知识(二):Linux常用命令 文件 网络 性能

Linux基础

基本常识

颜色奥秘
Linux基本知识(二):Linux常用命令 文件 网络 性能_第1张图片
字符表示的文件类型
Linux基本知识(二):Linux常用命令 文件 网络 性能_第2张图片

文件系统

根目录/
1577342217052
/boot引导程序,内核存放的目录

包含在引导过程中所需要的文件,系统的启动阶段,通过引导将内核加载到内存,完成内核的启动,之后内核创建好虚拟文件系统,并且从虚拟文件系统的其他子目录中加载需要在开机启动的其他程序或者服务或者特定的动作。
1577342279109

/sbin超级用户可以使用的命令的存放目录

root权限才能执行的命令,大多涉及系统管理的命令。

/bin普通用户可以使用的命令的存放目录

ls、cp、mkdir等命令,文件都可执行,作为基础系统所需要的最基础命令。

/lib普通用户可以使用的命令的存放目录

包含系统引导和在根用户执行命令时所需要的共享库。
1577342440275

/dev设备文件目录

1577342597574

/home普通用户的家目录

用户主目录通常直接或者间接在此目录下,系统的每个用户都有自己的家目录,目录以用户名作为名字存在/home下面。

/root用户root的$HOME的目录
1577342850969
查看当前用户的主目录。当前用户是系统管理员。

/etc全局的配置文件存放目录

系统和程序一般都是可以通过修改相应的配置文件,来进行配置。
Linux基本知识(二):Linux常用命令 文件 网络 性能_第3张图片

/etc/rc相关

启动或改变运行级时运行的脚本或脚本的目录
Linux基本知识(二):Linux常用命令 文件 网络 性能_第4张图片
/etc/rc.d/init.d,存放了各种系统服务的启动关闭的管理脚本,

/etc/rc.d/rc?.d,存放一些脚本,K开头的脚本,表示Stop动作,S开头的脚本,表示Start动作,名称中数字表示执行次序,数字越小表示越先执行。

常见命令

命令是啥,问问man

man uname

uname命令详细意思是什么

统计目前连接到当前机器上的ip数

netstat -tnp | awk '{print $5}'| awk -F : '{print $1}' | sort | uniq -c |sort -nr |wc -l

一键搭建Web网站

python2 -m CGIHTTPServer 8989

python3 -m http.server

ubuntu首次设置root密码

sudo passwd root

输入当前密码,设置新密码,确认密码

ubuntu切换到root用户

su root输入root密码

查看Kernel相关信息

uname -a

查看ubuntu系统是32位还是64位

getconf LONG_BIT

查看系统信息

lsb_release -a

更新apt

sudo apt-get update

安装apt

sudo apt-get install

卸载apt

sudo apt-get remove

查看网络

ifconfig -a

查看目录下子目录与所有文件

ls -a

查看文件详细信息

ls -l

ls -l -h

Linux查看CPU和内存

top

ps -l用于报告当前系统的进程状态

pmap -d 16613用于报告进程的内存映射关系

free显示当前系统未使用和已使用的内存数目,还可以显示被内核使用的内存缓冲区

目录

ls、cd

文件编辑

vi、vim、sed【流式】

文件权限

chmod

文件搜索

find、grep

找到某个文件进行执行复制

find | while read file;do echo mv $file $file.bak; done

找到某个目录下的所有文件

grep am -r other/

修改系统时间时区

timedatectl status  查看当前时间状态
timedatectl set-timezone "Asia/Shanghai"  修改时区为上海时区
命令行修改时间:

sudo date -s MM/DD/YY //修改日期

sudo date -s hh:mm:ss //修改时间

sudo hwclock --systohc //修改硬件CMOS的时间

查看端口占用情况

netstat -ap | grep 8080

删除文件夹、文件

rm -rf 文件夹名
rm 文件名

创建文件

touch filename

将某个进程显示出来

ps -ef | grep "检索条件"

常见ubuntu问题

在vm上安装ubuntu 提示无法打开内核设备

win+R 输入services.msc,将所有VM相关服务手动启动

报错unable to locate package

sudo apt-get update

docker 启动容器 报错Error Response from daemon:driver failed programming external

重启docker服务后再启动容器
systemctl restart docker

调整窗口大小

settings–>Devices–>Displays–>resolution–>选择分辨率–>Apply

启动ubuntu失败黑屏

进入grub模式【启动长按shift】–>Advanced options for Ubuntu -->recovery mode–>resume、network、root–>

apt-get update;

apt-get upgrade -f

–>reboot 正常登陆GUI界面

从宿主机上传文件到虚拟机

借助Filezilla软件

sudo apt-get install openssh-server

修改配置文件vim /etc/ssh/sshd_config

PromitRootLogin withou-password修改为PromitRootLogin yes

重启ssh服务

sudo service ssh restart


Ubuntu环境搭建Docker

检查kernel版本,是否在3.10以上

uname -r

卸载旧版本

sudo apt-get remove docker docker-engine docker.io containerd runc

orsudo apt-get remove -y docker-*

允许apt通过https使用repository安装软件包

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

添加Docker官方GPG key

``sudocurl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -`

验证key的指纹

sudo apt-key fingerprint 0EBFCD88

添加稳定版repository

sudo add-apt-repository \
   "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

sudo apt-get update

安装docker ce 和containerd

最新版本

sudo apt-get install docker-ce docker-ce-cli containerd.io

指定版本

apt-cache madison docker-ce查看可获得的版本

sudo apt-get install docker-ce= docker-ce-cli= containerd.io

ubuntu环境下的docker配置镜像加速器

https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://m4qm1b0a.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker

ubuntu防火墙设置

安装

apt-get install ufw

启用防火墙

sudo ufw enable

随系统启动同时关闭所有外部对本机的访问

sudo ufw default deny

关闭防火墙

sudo ufw disable

查看防火墙状态

sudo ufw status

开启/禁用相应端口或服务举例

sudo ufw allow 80 允许外部访问80端口

sudo ufw delete allow 80 禁止外部访问80 端口

sudo ufw allow from 192.168.1.1 允许此IP访问所有的本机端口

sudo ufw deny smtp 禁止外部访问smtp服务

sudo ufw delete allow smtp 删除上面建立的某条规则

sudo ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 22要拒绝所有的TCP流量从10.0.0.0/8 到192.168.0.1地址的22端口

开启docker远程访问【ubuntu】

1.创建配置文件存储目录

sudo mkdir -p /etc/systemd/system/docker.service.d

2.创建配置文件,增加配置信息

sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf

配置文件

[Service]
ExecStart=
#HTTP使用以下命令
ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375

3.刷新配置

sudo systemctl daemon-reload
sudo systemctl restart docker.service
sudo netstat -lntp | grep dockerd

4.防火墙启动端口

docker操作

启动docker

systemctl start docker

重启docker

systemctl restart docker

关闭docker

systemctl stop docker

查看全部容器

docker ps -a

查看正在运行的容器

docker ps

查看镜像

docker images

删除镜像

docker rmi 镜像id

删除容器

docker rm 容器id

容器重命名

docker rename 原容器名 修改后容器名

查看容器日志

docker Logs -f 容器id


Shell基础语法

1.变量

2.逻辑控制 if for while

Shell版本抽奖小程序

Linux基本命令

演练:

查询匹配项,以行的形式展现

curl https://www.baidu.com | grep -o 'http://[a-zA-Z0-9\.\-]*'

查看匹配的个数

curl https://testerhome.com 2>/dev/null | grep Appium | wc -l

-v匹配结果展示

curl https://testerhome.com 2>/dev/null | grep Appium | grep -v Python

你可能感兴趣的:(Linux基本知识)