【linux】02- 压缩包管理和进程管理(相关命令)

压缩包管理

原始压缩工具

  • gizp -gz格式的压缩包

    • 压缩语法: gizp *.txt(压缩所有txt为后缀为gz的压缩文件,不会保留源文件,单独压缩不会打包)
    • 解压语法: gunzip *.gz
    • 压缩出 .gz格式
    • 每个文件各个压缩,多个压缩包
  • bzip2-bz2格式的压缩包

    • 压缩语法: bzip2 *.txt(压缩所有txt为后缀为gz的压缩文件,不会保留源文件,单独压缩不会打包)
    • 解压语法: bzip2 *.bz2
    • 不能压缩目录
  • 压缩后也是多个包,bz2格式

    • 强于gzip ,借助参数 -k ,可以保留源文件地去压缩
  • 两种命令都无法压缩文件夹/目录:如执行: gzip animal/ 会失败(当前在含有animal文件夹的目录下)

高富帅版

tar — 不使用z/j参数,该命令只能对文件或目录打包

  • 参数:

    • c – 创建 – 压缩(与x对立,每次只能用一个)
    • x – 释放 --解压缩(extract,与c对立,每次只能用一个)
    • v – 显示提示信息 --压缩/解压缩都能用 --可以省略
    • f – 指定压缩文件名字 – 压缩解压缩必需(file)
    • z – 使用gzip地方式压缩文件 后缀是 .gz
    • j – 使用bzip2的方式压缩文件 后缀是 .bzip2
  • vf参数一般都带

  • 压缩:

tar zcvf  生成的压缩包的名字(xxx.tar.gz)  所有要压缩的文件或目录的名字(如果有多个,中间空格间隔)
tar jcvf  生成的压缩包的名字(xxx.tar.bz2)  所有要压缩的文件或目录的名字(如果有多个,中间空格间隔)
  • 解压缩:
tar zxvf 压缩包的名字(对tar.gz压缩文件解压到当前目录)
tar jxvf 压缩包的名字(对tar.bz2压缩文件解压到当前目录)
tar zxvf 压缩包的名字 **-C** 解	压缩的目录名字  (用于解压到指定目录)    

rar – 必须安装该软件才能用

  • 参数:

    压缩: a

    解压缩: x 释放

  • 压缩:

rar a 生成的压缩文件的名字(temp)  压缩的文件或目录
  • 解压缩:
rar x  解压缩文件名(temp)  +(解压缩目录)

zip – 安装得到,能提示文件的压缩比

  • 压缩

    • zip 压缩包的名字 压缩的文件或目录
    • -r 压缩目录(递归操作)
    • rar x mytest.rar +路径
  • 解压缩

    • unzip 压缩包的名字
      • deflated指示没有被压缩的比率
    • unzip 压缩包的名字 -d 指定的目录

总结

相同的语法:

压缩:tar/rar/zip 参数 生成的压缩文件的名字 压缩的文件或目录 -- 压缩时的语法

解压缩:tar/rar/unzip/ 参数 压缩包的名字 参数(rar没有参数) 解压缩目录 --解压缩语法

进程管理

who

  • 查看当前在线用户的情况
    • 用户名字 终端名字 时间
      • 终端名字:tty7 对于linux操作系统的桌面终端,tty1-6是文字终端,tty7是图形界面终端 。文字终端通过黑窗口方式实现用户登录。pts是设备终端,也即黑窗口的个数。/后是编号,不会重复。
      • 切换终端方式为 ctrl + alt +f1-f7
      • 各个终端互不影响
  • 查看进程的命令ps):
    • ps a 查看所有的用户
      • 包括tty1-tty7,因为每个终端下都能登录一个用户
    • ps au 在a的基础上,详细查看所有用户
      • user pid(当前程序对应的进程id) %cpu %mem tty(指示终端情况)
    • ps aux 查看没有终端的应用程序 此时tty值是个问号,不需要与用户交互
      • 借助管道进行重定向,对文件过滤。
      • 管道的含义:语法:指令1 | 指令2 ,表示指令1的输出作为指令2的输入
      • ps aux | grep bash ,最后一条进程是grep的查询进程,不是结果,也即,如果grep查出一条结果,实际是没有查到

kill (杀死进程)

  • 杀死进程
    • kill -l 查看信号总目录,相当于help,不同信号不同作用。
    • kill -SIGKILL 进程ID(pid) (通过ps aux |grep 查询名字 过滤出来所得到的 )
    • kill -9(指向SIGKILL) 也即 kill -9=kill -SIGKILL

env(环境变量查看)

  • env 查看当前进程的所有的环境变量
    • 只索引path,借助管道:env | grep PATH
    • 补充: linux 下的环境变量的格式(键值对形式):key - value
      • key=value,相互之间靠:间隔

top(资源查看)

  • 相当于windows下资源管理器,按ctrl+c查看,但是无法关闭,只能看

网络管理

ifconfig(查看网络接口信息)

  • eth0代表第一块网卡,如果有第二块,则是eth1
    • 硬件地址,也即硬件地址,也即网卡编号
  • lo代表回环地址,做的事本地回环
  • 对应于windows下的ipconfig命令

ping(测试两台主机间能否通信)

  • linux 下会一直ping(ctrl +c退出)
  • ping 目的主机 [参数]
  • 参数 -c (c表示count,后面跟上期望ping的次数,)
  • 参数 -i 设定间隔几秒发一个ping包

nslookup(查看服务器域名对应的ip地址)

  • nslookup www.xxx.com

用户管理

创建用户的两种方式

  • sudo adduser + 用户名 实际是一个脚本,参数少(用户名不能大写)

    • 执行该命令需要当前用户密码,且提示正在添加用户,正在添加新组(默认和用户名字是一致的),正在添加新用户到组,创建主目录/home/xxx,正在从/etc/skel复制文件(修改配置文件),输入新的unix密码,也即xxx登录进去的密码。之后提示输入用户的信息,全名,房间号码,工作电话,家庭电话,其他。
    • su xxx 切换到xxx用户
  • sudo useradd -s /bin/bash -g itcast -d /home/itcast -m itcast

    • -s 指定用户登陆时shell类型,bash或者是shell
    • -g 指定所属组,该组必须事先存在(先添加组)
    • -d 指定用户家目录
    • -m 用户家目录不存在时,自动创建该目录
    • 没有提示则说明创建成功

添加用户组

  • sudo groupadd xxx 增加新的用户组

密码修改

  • sudo passwd xxx 修改用户xxx的密码
  • passwd 修改当前用户密码(需要输入当前用户密码)
  • sudo passwd (root) 修改 root 用户的密码

切换用户

  • 切换到固定用户
    • su 用户名
  • 切换到root用户
    • su -
    • su
    • sudo su

删除用户

  • sudo deluser + 用户名(家目录不会被删除)
  • sudo userdel **-r** 用户名(-r表示遍历,会把家目录下文件夹同样删掉)

查看当前操作系统下用户

  • 进入配置文件目录:/etc
    • vi /etc/passwd 检测是否插入成功

ftp服务器搭建

借助软件 vsfptd 注意软件库要更新apt-get update&& apt-get upgrade

ftp最用:文件的上传与下载(作为一个服务器,可以被客户远程取用)

服务器端

修改配置文件
  • 如何修改配置文件-> vsftpd.conf

  • cd /etc 进入配置文件目录,ls - l vsftpd.conf 找到配置文件 gedit vsftpd.conf , sudo vi vsftpd.conf

  • 修改配置文件(vsftpd):

    • write_enable=YES ->是否拥有写权限
    • anon_root=/home/itcast/ftp ->匿名用户ftp根目录(要手动添加)
    • anonymous_enable=YES ->是否允许使用匿名用户
    • anonymous_upload_enable=YES ->是否允许匿名用户的上传权限
    • anon_mkdir_write_enable=YES ->是否允许匿名用户创建目录
  • 借助readme修改需要修改的权限

  • 重启服务

    • 什么命令能够重启服务
    • sudo service vsftpd restart
  • 创建新用户并设置密码: sudo useradd -d /home/xxxx/ -s /bin/bash xxxx

    sudo passwd xxxx(设置xxxx用户的密码)

    Enter new UNIX password:

    Retype new UNIX password:

    passwd: password updated successfully

  • 修改配置文件vsftp.conf:userlist_file=/etc/allowed_users  #允许登录的用户

  • 新建/etc/allowed_users,添加允许访问的用户,我们在文件中添加我们刚才创建的用户

    vim /etc/allowed_users
    键入:xxxx

  • 查看文件/etc/ftpusers,文件中的列表是禁止访问用户
    复制代码

  • 参看文件,文件中的列表是禁止访问的用户:

  • sudo vim /etc/ftpusers

    /etc/ftpusers: list of users disallowed FTP access. See ftpusers(5).

    root
    daemon
    bin
    sys
    sync
    games
    man
    lp
    mail
    news
    uucp
    nobody

  • 重启vsftpd: sudo /etc/init.d/vsftpd restart

  • ftp ip-address  输入用户名和密码

    put #上传文件

    local-file: path

    remote-file: path

    get #下载文件

    local-file: path

    remote-file: path

客户端

找另一台win10性质的主机,借用mstsc命令远程访问

实名用户登录
  • ftp + IP(server)
  • 输入用户名和密码
  • 此处ls,可以看到服务器家目录的文件,pwd可以看到服务器的家目录的具体路径
  • 退出ftp可以用:bye,quit,exit
  • 文件的上传和下载
    • 文件上传:put 本地的文件名 (要在登录ftp服务器的目录下上传该目录下的文件)
    • 文件下载:get 文件名
    • 不允许操作目录,把目录打包tar/rar/bzip
  • 弊端,暴露了账号密码,且能切换目录
匿名用户登录(更多使用)
  • ftp + IP(server)
  • 用户名:anonymous 密码:直接回车
  • 不允许匿名用户在任意目录间切换
  • 只能在一定的目录范围内操作
  • 需要在ftp服务器上创建一个匿名用户的目录 – 匿名用户的根目录(限制了登录用户的权限)
    • 创建一个目录后,还要在配置文件里设置,找位置添加一句话:anno_root=home/xxx(服务器名字)/yyy(自己设置的匿名用户的文件名),然后service vsftpd restart
    • 下载是个读权限:chmod 777,上传是个写权限
  • 匿名用户root创建
    • 指定匿名根目录:/home/xxx/ftp,并在配置文件里增加:anon_root=home/xxx/ftp ->匿名用户ftp根目录
    • 默认目录:/src/ftp
  • 退出服务器操作:
    • bye
    • quite
    • exit
lftp客户端访问ftp服务器
  • 一个ftp客户端软件,可以上传和下载,功能强大,可以下载/上传一个及多个文件,一个目录。该工具能够访问ftp服务器,进而对服务器操作设置

  • 软件安装 sudo apt-get install lftp

  • 登录服务器

    • 匿名:lftp servetip 回车 ,**键入login,**lftp 连接的IP 回车(不输入密码),进入到了匿名用户的根目录。。
  • 使用pwd得到的是远程登录到的服务器的目录

  • lpwd命令,查看当前用户的目录。

    • lcd + 目录,切换本地目录。
    • put 上传一个文件。mput 上传多个文件。
    • get 下载文件,mget下载多个文件 mget xxx yyy zzz (xxx,yyy,zzz都是文件名)
    • mirror dir 上传整个目录及其子目录
    • mirror -R dir 下载整个目录及其子目录
  • 实名:lftp username@服务器ip 回车 ,输入服务器密码

nfs服务器搭建

网络文件系统,允许网络中计算机之间通过TCP/IP网络共享资源,创建类似windows下类似的所谓的共享文件夹,本质是挂载服务器的共享目录。

安装:sudo apt-get install nfs-kernel-server

服务器端

  • 创建共享目录
    • sudo makedir xxx
    • 为了方便文件的上传与下载,修改文件的读写权限:sudo chmod 777 /home/xxxx
  • 修改配置文件
    • sudo vi /etc/exports
    • /home/userid/shareid *(ro,sync)//代表共享的网段。ro代表read only,rw表示可读可写,sync代表随时把内存数据更新到磁盘上。
    • 修改结束后重启服务:sudo service kernel-nfs-server restart
  • 重启服务
    • sudo service nfs-kernel-server restart
  • 服务器安装成功后会随系统自动启动

客户端(登录到nfs服务器)

  • 挂载服务器共享目录(mount命令挂载)
    • sudo mount serverIP: sharedir (/home/用户名/nfs)/mnt(服务器IP跟上共享目录,挂载到非空会临时覆盖文件)
    • tree /mnt 有内容
    • cd /mnt ,ls查看内容
    • 可以尝试挂载本地的服务器

SSH服务器

服务器端(仅安装即可)

  • 安装ssh:sudo apt-get install openssh-server

客户端

  • 如何登陆
  • 远程登录 ssh username@serverIP//确认连接时一定要写yes/no,而非y/n
    • 例如服务器管理员通过ssh远程登录外地主机,进行维护
    • 输入完密码就进入到了shareid。
  • 退出登录logout

scp命令

scp==super copy,直接从远程服务器拷贝文件或目录,不需要搭建ftp。

  • 使用命令的前提条件:目标主机已成功安装openssh-server
  • 使用格式:
    • scp -r 目标主机用户名@目标主机IP地址:/目标文件的绝对路径/保存到主机的(相对)路径:scp -r ( -r 拷贝目录必选参数)
    • scp -目标用户名@目标主机IP地址: /目标文件的绝对路径/保存到主机的(相对)路径

其他命令

  • 终端翻页
    • shift + pageup/pagedown 上下翻页
  • 清屏
    • clear / ctrl+l
  • 创建终端
    • ctrl + alt +T (ubuntu)
    • ctrl + shift + T(添加新标签页)
  • 看手册
    • 查看man文档(帮助文档)
    • 命令 man man [参数 ]
      • 1 查找普通命令
      • 2 系统调用
      • 3 库调用
      • 5 文件格式和规范
    • 按q键退出
  • 设置命令是否被封装以及如何被封装
    • 查看 alias 比如 alias ls 'ls --color=auto' ls 实际上被封装为展示颜色的ls
    • 设置(打造) alias pag='ps aux| grep'
  • echo 输出一个字符串到终端上
    • echo $PATH($ 表示从后边的变量里去取值(value),$PATH表示取出key为PATH的value值)
  • 关机重启:
    • poweroff
    • reboot
    • shutdown (都需要sudo)
      • 参数
        • -t 秒数
        • -k 仅送出警告信息,并不是真的要shutdown
        • -r shutdown 之后重新开机
        • -h shutdown 之后关机
        • -n 不经过init,有shutdown指令本身来做关机动作(不建议使用)
        • -f 重新开机时,跳过fsck指令,不检查档案系统
        • -F 重新开机时,强迫做fsck检查
        • -c 将已经正在shutdown的动作取消
      • 例子
        • shutdown -r now 立即重新开机
        • shutdown -h now 立刻关机
        • shutdown -k now' Hey! Go away! now ...' 发出警告信息,但没有真正关机
        • shutdown -h 10:42 'Hey! Go away! ' 10:42 关机
        • shutdown -r 10’Hey! Go away!' 10分钟后关机
        • shutdown -c 将刚才下的shutdown 指令取消(cancel),必须切换到其他tty,登入之后,才能下命令
        • shutdown now 切换至单人操作模式(不加任何选项时)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值