2020-01-04 23:49:06 weixin_42429718 阅读数 482

2020 Linux系统应用基础教程 期末复习【整理】 第一章 认识linux

点击跳转第一章

2020 Linux系统应用基础教程 期末复习【整理】 第二章 系统的启动与关闭

点击跳转第二章

2020 Linux系统应用基础教程 期末复习【整理】 第三章 用户登录和账号管理

点击跳转第三章

2020 Linux系统应用基础教程 期末复习【整理】 第四章 文件系统管理

点击跳转第四章

在这里插入图片描述

2020 Linux系统应用基础教程 期末复习【整理】 第五章 磁盘文件与目录管理

点击跳转第五章

2020 Linux系统应用基础教程 期末复习【整理】第六章 Linux的包管理

点击跳转第六章

2020 Linux系统应用基础教程 期末复习【整理】第七章 进程管理

点击跳转第七章

2020 Linux系统应用基础教程 期末复习【整理】第八章 shell编程

点击跳转第八章

学如逆水行舟,不进则退
2019-09-02 16:36:06 qq_38830589 阅读数 33

1. Linux操作系统简介

linux 系统的发行版很多,常见的如 ubuntu、红帽子、树莓派等。
linux 特点:

  1. 性能强劲,运行稳定,一般作为服务器
  2. 整个操作系统可以被压缩成很小的一个文件,容易植入一些硬件设备中
  3. 开源免费( linux 源代码)
  4. 对于初学者容易建立编程思维,是学习编程语言最好的环境
  5. 文件系统
    没有盘符的概念,所有的文件都处于根目录下,目录也是一种特殊的文件

2. Linux系统使用

(1)登录方式

登录语法:$ ssh root@ip
登录成功:
root@iZ2ze1a5g1gxqgqvhb34lrZ:~#
在这里插入图片描述
在这里插入图片描述

(2) 用户管理

使用 root 登录到 ubuntu 系统中
1)创建新用户
$ adduser 用户名称
过程:

  1. 新建组,组名与用户名保持一致
    /etc/group     保存了组信息
  2. 新建用户,并且将用户放到刚刚新建的组中
    /etc/passwd     保存了用户信息
    /etc/shadow     保存了用户的密码信息
  3. 创建了一个家目录
    /home/xxx
  4. 拷贝到用户家目录
    /etc/skel

2)删除用户
$ userdel -r zhangsan
删除用户信息,并且将用户家目录也给删除

3)切换用户
$ su - 用户名

4)修改用户
$ usermod
$ usermod -g 1008 zhangsan
zhangsan 的组 id 换成 1008

5)修改组信息
$ groupmod
$ groupmod -n group0 boss

(3) linux目录结构

  • /home:普通用户家目录
  • /root:超级管理员的家目录
  • /etc:系统配置文件目录
  • /opt:第三方文件解压安装目录
  • /usr:文件的默认目录
  • /var:日志信息,部署目录
  • /sys:系统目录
  • /bin:命令保存目录

(4) 文件系统

  1. 新建目录
    $ mkdir linux es5 es6
    $ mkdir -p day01/a/b/c

  2. 新建文件 / 修改最近访问时间
    $ touch 文件名
    如果指定的文明名不存在,创建该文件。如果存在,修改最近访问时间为当前时间

  3. 拷贝文件或者目录
    $ cp a.txt a.txt.bak
    $ cp -r dir1 dir2

  4. 连接
    1)创建硬链接(防止误删除,多个指针指向同一个inode)
    $ ln a.txt a.txt.h
    2)创建软连接(快捷方式)
    $ ln -s a.txt a.txt.s

  5. 移动
    $ mv a.* dir1
    $ mv a b

  6. 删除
    $ rm a.txt
    $ rm -r dir2
    $ rmdir(只能删除空目录)

  7. 重定向
    $ date > a.txt
    $ date >> a.txt
    $ more /etc/passwd > b.txt
    $ ls -l /etc > c.txt

  8. 压缩与解压缩

1)压缩
$ gzip a.txt
=> a.txt.gz
$ bzip2 a.txt
=> a.txt.bz2
$ zip all.zip *.txt
=> all.zip (a.txt b.txt c.txt)

2)解压缩
$ gunzip a.txt.gz
=> a.txt
$ bunzip2 a.txt.bz3
=> a.txt
$ unzip all.zip
=> a.txt b.txt c.txt
$ unzip all.zip -d dir2
=> dir2/a.txt b.txt c.txt

3)归档
tar
-c :创建归档文件
-x :拆档
-v :打印细节
-f :指定归档/拆档文件
-j :bzip2格式 xxx.tar.bz2
-z :gzip格式 xxx.tar.gz

$ tar cvf all.tar *.txt
$ tar cvzf all.tar.gz *.txt (gzip)
$ tar cvjf all.tar.bz2 *.txt (bzip2)

4)拆档
$ tar xvf all.tar.gz

5)修改文件权限

用户类型:
在这里插入图片描述
权限类型:
在这里插入图片描述
权限二进制:
在这里插入图片描述

  1. 通过表达式来修改
    $ chmod g-w a.txt => 移除同组者写的权限
    $ chmod o+r a.txt => 添加其他人读的权限

  2. 通过二进制方式来修改
    在这里插入图片描述$ chmod 644 a.txt
    => 修改a.txt的权限,拥有者具有读写权限,同组人和其他人具有读权限

2016-09-28 12:30:35 shjniu3000 阅读数 147
总结:

shell脚本的启动方式:./aa.sh 
    ./aa.sh & --表示后台启动,这样前台不会卡住

搜索进程:ps -ef | grep TestWatcherService
结果为 
[javadev@rhel61-1 ~]$ ps -ef | grep TestWatcherService
UID        PID  PPID  C STIME TTY          TIME CMD
javadev  11174 11140  0 09:23 pts/3    00:00:00 java TestWatcherService
javadev  11218 11193  0 09:24 pts/4    00:00:00 grep TestWatcherService
说明:UID是用户ID,PID是进程ID,PPID是父进程ID。

杀掉进程:kill -9 26457
结果为
[javadev@rhel61-1 niu]$ java TestWatcherService
Killed
[javadev@rhel61-1 niu]$ 

查看机器进程情况:top命令
top,然后输入用户名javadev,然后输入c,这样就显示这个用户的进程使用linux系统的情况

top命令结果
top - 01:06:48 up  1:22,  1 user,  load average: 0.06, 0.60, 0.48
Tasks:  29 total,   1 running,  28 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.3% us,  1.0% sy,  0.0% ni, 98.7% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:    191272k total,   173656k used,    17616k free,    22052k buffers
Swap:   192772k total,        0k used,   192772k free,   123988k cached

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
root      16   0  7976 2456 1980 S  0.7  1.3   0:11.03 sshd
root      16   0  2128  980  796 R  0.7  0.5   0:02.72 top
root      16   0  1992  632  544 S  0.0  0.3   0:00.90 init
root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0
root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0

top命令详解
第一行
01:06:48    当前时间
up 1:22    系统运行时间,格式为时:分
1 user    当前登录用户数
load average: 0.06, 0.60, 0.48    系统负载,即任务队列的平均长度。三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。

第2、3行
total 进程总数
running 正在运行的进程数
sleeping 睡眠的进程数
stopped 停止的进程数
zombie 僵尸进程数
Cpu(s): 
0.3% us 用户空间占用CPU百分比
1.0% sy 内核空间占用CPU百分比
0.0% ni 用户进程空间内改变过优先级的进程占用CPU百分比
98.7% id 空闲CPU百分比
0.0% wa 等待输入输出的CPU时间百分比
0.0%hi:硬件CPU中断占用百分比
0.0%si:软中断占用百分比
0.0%st:虚拟机占用百分比


第4、5行
Mem:
191272k total    物理内存总量
173656k used    使用的物理内存总量
17616k free    空闲内存总量
22052k buffers    用作内核缓存的内存量
Swap: 
192772k total    交换区总量
0k used    使用的交换区总量
192772k free    空闲交换区总量
123988k cached    缓冲的交换区总量,内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,该数值即为这些内容已存在于内存中的交换区的大小,相应的内存再次被换出时可不必再对交换区写入。

图表头表示
序号  列名    含义
a    PID     进程id
b    PPID    父进程id
c    RUSER   Real user name
d    UID     进程所有者的用户id
e    USER    进程所有者的用户名
f    GROUP   进程所有者的组名
g    TTY     启动进程的终端名。不是从终端启动的进程则显示为 ?
h    PR      优先级
i    NI      nice值。负值表示高优先级,正值表示低优先级
j    P       最后使用的CPU,仅在多CPU环境下有意义
k    %CPU    上次更新到现在的CPU时间占用百分比
l    TIME    进程使用的CPU时间总计,单位秒
m    TIME+   进程使用的CPU时间总计,单位1/100秒
n    %MEM    进程使用的物理内存百分比
o    VIRT    进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
p    SWAP    进程使用的虚拟内存中,被换出的大小,单位kb。
q    RES     进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
r    CODE    可执行代码占用的物理内存大小,单位kb
s    DATA    可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
t    SHR     共享内存大小,单位kb
u    nFLT    页面错误次数
v    nDRT    最后一次写入到现在,被修改过的页面数。
w    S       进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
x    COMMAND 命令名/命令行
y    WCHAN   若该进程在睡眠,则显示睡眠中的系统函数名
z    Flags   任务标志,参考 sched.h

端口占用情况:
查看端口被那个程序占用
losf -i:20
command:进程名称
pid:进程标识符
user:进程所有者
fd:文件描述符
type:文件类型
device:指定磁盘的名称
size:文件的大小
node:索引节点
name:打开文件的确切名称

查看程序占用哪个端口
1、查找到进程号 ps -ef | grep Name  
2、根据进程号查找端口 netstat -nap | grep 11441  


查看日志:more--按百分比显示,按回车一点一点向下滚动。
 cat--全部显示,按鼠标滚轮来查看日志
          cat -n rsyslog.conf 文件显示行号
 head -n 100 a.txt  --查看前100行
 tail -f Server.log  ------实时变化日志的获取
          tail -100 Server.log  ------表示查看Server.log后100行的日志。

在文件中查找内容
grep "eniu" * -- 在当前文件夹下查找包含 "eniu" 字符串的文件
        grep "eniu" conf --在conf文件夹下查找包含 "eniu" 字符串的文件

grep -c "eniu" * --在当前文件夹下查找包含"eniu" 字符串的文件 同时显示包含几行


cat -n conf | grep "eniu" --显示行号,然后过滤"eniu"字符串

cat -n conf | grep "eniu" | wc -l  显示有多少行


查找文件
find . -name conf    ------在当前目录下查找conf文件,这是直接递归的,

find /home/javadev/linjq/niu -name conf   ----在指定目录下查找文件


SFTP的上传与下载
windows上传到linux
pwd查看上传路径
put f:/ROOT.zip

windwos从linux上下载
lpwd查看window路径
get /home/javadev/lin/bbb 

修改windows路径:会话选项--连接--SSH2--SFTP标签--E:\tmp

本地拷贝文件
cp /test1/file1 /test3/file2
mv /test1/file1 /test3/file2
rm -rf bbb

远程拷贝
scp -rp aa.txt rad@10.1.1.91:/home/rad/  表示将aa文件从当前主机放到91主机主目录下
scp -rp rad@10.1.1.91:/home/rad/bb.txt . ---将91上aa文件取到本地,其中.表示当前目录


创建文件:touch aaa

创建目录:mkdir aaa

2019-02-21 14:54:49 weixin_42684029 阅读数 38

Linux系统下的GPIO应用实践

2013-08-19 09:13:47 lihang421 阅读数 446





LINUX系统管理与应用


       Linux操作系统也是自由软件和开放源代码发展中最著名的例子,该文档主要讲解Linux操作系统概述、Linux安装以及系统管理与应用等内容。


对其内容详细阅读

 Linux操作系统应用及编程

博文 来自: guyun_shine
没有更多推荐了,返回首页