python技术--Linux基础02

13 篇文章 0 订阅


```

## 补充命令  

```
whoami 查看当前哪个用户登录 
date 显示当前的日期和时间 
cal 查看当月日历
cal 2018 查看2018全年的日历   

```

## 文件权限  

```
rwx  
r 4 100 读
w 2 010 写
x 1 001 执行  exec
- 0 没有权限

u 文件的拥有者
g group 文件所属组 
o 其它用户  
a 以上所有  

+ 在原有的基础上 增加权限  
- 在原有的基础上 减少权限  
= 在原有的基础上 更新权限   不写就代表 =  


chmod  
sudo chmod u+x test.txt  给test 拥有者增加执行的权限  
sudo chmod g+w test.txt  给所属的组增加写的权限  
sudo chmod a-w test.txt 给所有的 减去写的权限  
sudo chmod a=rwx test.txt  让所有的用户更新成 读写执行  
sudo chmod g-x,g-w,o-w,o-x test.txt 
sudo chmod 775 test.txt  更新权限   775  


修改目录权限的时候 记住先回到 上一级  
chmod -R 递归修改权限

```

## 更改文件的拥有者  chown 

```
sudo chown 用户名 目标目录
sudo chown 用户名:组名 目标目录 
sudo chown -R 用户名:组名 目标目录 递归修改所属的用户及组  
```

## 更改文件的所属组 chgrp   

```
sudo chgrp 组名 目录名或者文件名  
sudo chgrp -R 组名 目录名或者文件名  递归修改 
```

## chattr   chmod 后面的大boss 

```
sudo chattr +|-i  文件名 给文件增加或者去除只读属性  只能看不能修改 不能修改权限 不能删除
sudo chattr +|-a  文件名 只能往里写 看  不能删除  不能写 
+a 只能 查看  只能echo >> 追加  
   不能删除  不能vi 写入内容  不能更新权限 
-a 解除保护   一般用于日志文件   
```

## 用户和组 

```
一个用户必须有一个主组  
一个用户可以同时属于多个组 
一个组可以拥有多个用户  

用户信息存在: /etc/passwd 
组信息存在:/etc/group
密码信息存在: /etc/shadow 
```

### 创建用户 useradd  

```
useradd 
    sudo useradd 用户名
    -g 指定所属的组 
    -m 自动建立用户的家目录  
    -d 指定用户的家目录  并不一定在home里边  
    -u 手动指定用户的id 
    -s 指定 /usr/sbin/nologin 或者 /bin/bash
zelinxiong:x:1001:1002::/home/zelinxiong:/bin/bash
新建一个用户的同时 会自动创建一个用户名命名的组  
sudo useradd -m qiulinxiong -g need888 -d /home/qiulin666
     qiulinxiong:x:1003:1000::/home/qiulin666:
sudo useradd -m yuhuxiong -g kangbazi
    yuhuxiong:x:1002:1001::/home/yuhuxiong:
sudo useradd -m shiminxiong -g kangbazi -s /bin/bash
sudo useradd -m shimin -g kangbazi -s /usr/sbin/nologin

第一部分:用户名
第二部分:密码 
第三部分:用户id
第四部分:组id
第五部分:备注信息 
第六部分:用户的家目录 
第七部分: /bin/bash 该用户具备脚本执行的权限  也就是说 可以登录
        /usr/sbin/nologin  表示改用户不具备脚
        本执行的权限  也就是不能切换登录 
```

### 修改用户密码 

```
sudo passwd 用户名  不写用户名 代表你修改root  
     passwd -l  用户名 锁定用户密码  
     passwd -u  用户名 解锁用户密码  
```

### 删除用户 userdel   

```
sudo userdel shimin  #/etc/passwd  shimin记录取消  
sudo userdel -r shiminxiong # 删除 /etc/passwd 记录的同时  将 用户的家目录一并删除   

提示被占用   
kill -9 进程号  
```

### 修改用户  

```
usermod 
    -u 用户id
    -g 所属组 组的id
    -G 组的名称 附属组  
    -a 将用户添加到附属组  跟G配合使用  
    -d 用户家目录 
    -l 修改用户名  
    
    
usermod -l yuhu yuhuxiong
sudo usermod -g 1001 -u 1003 zelinxiong  更改zelinxiong 的所属组id 用户id 
sudo usermod -d /home/zelin zelinxiong  更改 zelinxiong的家目录  
 sudo usermod -a -G need888 zelinxiong  将zelinxiong 加入到临时组need888 中  

    
```

### su sudo  

> ubuntu 禁止root 用户  系统安装的时候 新建一个用户名  自动属于 sudo组  sudo权限 低于root 但是高于普通用户  普通用户只能 处理自己创建的内容  管理员权限大   这个时候可以使用sudo 暂时提升权限  

```
sudo 命令 #需要用户输入自己的密码  暂时提升权限  
su 用户  切换用户  

sudo usermod -a -G sudo 用户名  将一个普通用户 临时加入 sudo组  这样  该用户权限 就有提升  


```

### 其它命令 

```
whoami 查看当前的用户 
id 直接查看当前用户的 id 组信息  
need888@need888-virtual-machine:~$ groups 
need888 adm cdrom sudo dip plugdev lpadmin sambashare  查看当前用户所属的组  


```

### 组管理  

```
groupadd 组名 

python1806:x:1003: 
组名     组密码  组id 

groupdel 组名  

groupmod -n 新组名  旧组名 组名更新  
```

## 文本编辑器 vi vim    

vim 编辑是 是vi的增强版  

```
sudo apt-get install vim 
vi 文件名  
创建文件方式: 
1.touch 文件名  
2.vim  文件名  保存 也是创建文件的一种方式
3.cp   

```

### 编辑模式   

| 按钮   | 说明                   |
| ---- | -------------------- |
| i    | 在当前光标的位置插入文本         |
| a    | 在光标的下一个文职插入文本        |
| o    | 在光标的下一行插入文本          |
| s    | 删除光标当前位置的字符 然后输入内容   |
| A    | 自动将光标定位到该行末尾 在行尾插入文本 |
| S    | 删除光标当前行的字符然后输入内容     |
| L    | 最后一行的行首              |
| I    | 本行的行首                |
| ESC  | 回到命令模式               |

### 命令模式 默认进入命令模式  输入法 切换到英文输入状态   

| 按键         | 说明                            |
| ---------- | ----------------------------- |
| H          | 向左移动                          |
| J          | 向下移动                          |
| K          | 向上移动                          |
| L          | 向右移动                          |
| (          | 移动到段落开头                       |
| )          | 移动到段落结尾                       |
| gg         | 回到第一行                         |
| GG         | 回到最后一行                        |
| ngg  4gg   | 向上移动到第4行  n 是一个数字             |
| yy         | 复制一行  ctrl+c                  |
| p          | 粘贴一行                          |
| nyy        | 复制n行  n 是数字                   |
| np         | 粘贴n行                          |
| dd         | 删除1行 还可以当剪切使用                 |
| ndd        | 删除n行                          |
| u          | 撤销上一次的操作 类似于windows 中的 ctrl+z |
| .          | 重复上一次的操作                      |
| shift+6    | 本行行首                          |
| shift+4    | 本行行尾                          |
| :或者   /  ? | 进入底部命令模式                      |

### 底部命令模式 保存 退出  查找 替换   

| 快捷键                   | 说明                                     |
| --------------------- | -------------------------------------- |
| :wq                   | 保存退出                                   |
| :q                    | 不保存退出                                  |
| :q!                   | 强制退出                                   |
| :wq!                  | 强制保存并退出                                |
| :x                    | 保存并退出                                  |
| :set nu               | 设置行号                                   |
| :行号    :66            | 把光标定位到第几行                              |
| :set nonu             | 不显示行号                                  |
| /字符串                  | 查找字符串 n 下一个  从上往下   shift+n 从下往上找  上一个 |
| ?字符串                  | 查找字符串 n 上一个 从下往上    shift+n 从上往下  下一个  |
| :s/要查找的字符串/替换后的字符串    | 替换光标当前行的第一个目标词  第二个不被替换                |
| :s/要查找的字符串/替换后的字符串/g  | 替换光标当前行所有的目标词                          |
| :%s/要查找的字符串/替换后的字符串   | 替换全文每一行的第一个目标词 第二个不被替换                 |
| :%s/要查找的字符串/替换后的字符串/g | 替换全文所有的目标词                             |
| :n,ms/要查找的字符串/替换后的字符串 | 只替换n到m行之间的目标词                          |
|                       |                                        |
|                       |                                        |

> 如果发现编辑不了   可能是因为 非法退出    会产生一个  .文件名.swp 的临时隐藏文件  
>
> 将其删除 重新编辑 即可  

```
:%s/http:\/\/www.baidu.com\/1.py/https:\/\/www.google.cn\/test.py 
```

## 网络管理  

### ifconfig   windows 中是 ipconfig   

```
ens33     Link encap:Ethernet  HWaddr 00:0c:29:4e:78:d2  
          inet addr:10.11.53.107  Bcast:10.11.53.255  Mask:255.255.255.0
          inet6 addr: fe80::de4e:2eb6:3c99:2f7a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:370513 errors:0 dropped:0 overruns:0 frame:0
          TX packets:14235 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:72233130 (72.2 MB)  TX bytes:1622123 (1.6 MB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING MTU:65536  Metric:1
          RX packets:294 errors:0 dropped:0 overruns:0 frame:0
          TX packets:294 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:24031 (24.0 KB)  TX bytes:24031 (24.0 KB)


ens33  代表当前 ip地址属于哪一块网卡   一个电脑可以有多块网卡 
inet addr  ipv4地址  会看 
Bcast 网关 下一跳    会看
Mask 子网掩码   会看  
HWaddr mac地址 
 RX 接收包
 TX    发送包 
 SYN  
 ack 
 fin 
 UP 网卡开启 RUNNING 网线连接正常    会看 
 MULTICAST 支持组播
 MTU 最大的传输单元   
 
 
 
 ifconfig ens33 查看制定网卡的信息  
 ifconfig  ens33 down 关闭网卡 
 ifconfig  ens33 up  启用网卡 

重启网络 
    1.service  networking restart|start|stop   service  服务名  restart|start|stop
    2./etc/init.d/networking restart  重点  
```

### ping  重点  

```
ping -c 3 www.baidu.com   指定ping的次数  
     -b 测试与网关ip的连通性      
```

### netstat 查看网络连接状况  

```
netstat 
    -n 显示端口号  
    -p 显示进程  process  
    -t tcp 协议过来的   http协议  socket 协议 都是 基于tcp/ip协议 
    -u udp udp协议 
    -a 显示所有
    
    sudo netstat -nt
    sudo netstat -nu 显示udp协议 连接  
    sudo netstat -ntpa 显示所有tcp 端口号的使用情况   
    
    sudo netstat -ntpa | grep 22  重要  经常用它来测试 ssh服务是否开启  
    sudo netstat -ntpa | grep 80  测试http服务是否开启正常运行   重点  
```

## 进程管理 ps   process status 进程状态的缩写  

```
ps 
    -e 显示所有的进程 
    -u 查看制定用户的进程  
    -x 跟a 配合使用 显示完整的信息 
    
    ps -e  | more -20  显示所有的进程   每页20个  
    ps -u root | more -10 显示root 用户的进程信息  每屏10个 
    ps -ef | grep ssh  过滤所有的进程信息 
    ps -aux | grep ssh 重要 通常用它来测试 服务是否正常开启 测试正在内存中的 进程信息  重点  
    
    need888    4898  0.0  0.2  94924  4412 ?        S    14:15   0:03 sshd: need888@pts/17
    user 用户名     
    pid 进程号
    0.0 cpu 占用率  
    0.2 内存占用率 
    94924 VSZ 虚拟内存占用量  等待进入的  
    4412  驻留内存的量 
    ? tty ?表示不是终端连接 而是远程链接过来的  
    S 进程状态 表示可以终端的休眠状态   R 准备就绪随时等候调用  
    14:15 进程开始时间  
    0:03 已经执行的时间  
    
    kill -9 进程号   重点 
    
    killall -TERM 进程名称   
    killall -TERM sshd   重点 
```

### top  类似于 windows 中的任务管理器  

```
top  
    q 退出 


top - 16:51:41 up 1 min,  2 users,  load average: 0.29, 0.15, 0.06
Tasks: 229 total,   1 running, 126 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.2 us,  0.2 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  2017316 total,  1473660 free,   185812 used,   357844 buff/cache
KiB Swap:   998396 total,   998396 free,        0 used.  1638376 avail Mem 


16:51:41 当前时间  
up 1 min 系统运行的时间 
2个users 

load average: 0.29, 0.15, 0.06  系统的平均负载情况  
0.29  每分钟的 负载情况 
0.15  每五分钟负载情况
0.06  每15分钟的负载情况 

值越大 说明负载越大  也就是压力越大  
1核  这三个值  不能超过 1  
2核  这三个值不能超过2  

 229 total 任务总数
 1 个运行
 126 sleeping 126个睡眠的  
 stopped 停止的总数  
            
 最后两行  内存的信息   
 总共 2gb内存   free 还剩   used 使用了   缓存的数量  
 
 swap 交换分区   
 total 交换分区的大小  
 
 
 
 下面一行信息 详解: 
     PID  用户进程 
     USER 进程所有者的用户名
     PR 优先级 
     
     
     
     
 可以安装一个 可视化管理软件   htop  
 sudo apt-get install htop 
 
 htop 直接查看   
 
```

## 登录状态  

#### hostname  显示 设置 主机的名称  

```
hostname 显示主机名 
sudo hostname kangbazi  临时设置主机名 
sudo vim /etc/hostname 永久设置主机名   
```

### whoami 

```
查看当前登录的用户  

who
need888  pts/8        2018-08-29 16:50 (10.11.53.21)  
need888  pts/9        2018-08-29 16:51 (10.11.53.85)

tty  终端登录 
pts  远程登录  

```

### last 

```
显示最近的登录信息 
last -10 显示最近10条登录信息  
```

### w 查看登录者信息 及行为  

```

 17:21:24 up 31 min,  2 users,  load average: 0.00, 0.02, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
need888  pts/8    10.11.53.21      16:50    1.00s  0.35s  0.01s w
need888  pts/9    10.11.53.85      16:51    4:50   0.07s  0.07s -bash

```

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值