linux学习笔记4:linux的任务调度,进程管理,mysql的安装和使用,ssh工具的使用,linux网络编程

1、设置任务调度命令crontab 任务调度是指系统在某个时间执行的特定的命令或程序。任务调度分为:1)系统工作:有些重要的工作必须周而复始的执行,如病毒扫描。2)个别用户工作:个别用户可能希望执行某些程序。 (1)设置任务调度文件:/etc/crontab  1)首先设置个人任务调度。执 行crontab -e命令。  2)接着输入任务到调度文件。  如:5**** ls -l  /etc/> /tmp/to.txt  表示说每个小时的第五分钟执行ls -l /etc/>/tmp/to.txt命令。“5****”中第一位表示第几分钟,第二位表示第几个小时,第三位表示第几天,第四位表示第几月,第五位表示的是每周的第几天。 (2)调度多个任务  方法1:在crontab -e中直接写多任务即可。即换行写任务。(不推荐使用)  方法2:可以把所有的任务写入到一个可执行文件中(shell 编程)。步骤如下:   1)vi mytask.sh 输入下面的命令   date>>/home/mydate3   cp /home/mydate3 /root   2)授予mytask.sh执行权限 chmod 744 mytask.sh   3)crontab -e   4)再输入命令:* * * * * /root/mytask.sh即可。    (3)如何终止任务  crontab -r 表示终止任务调度。执行该命令后,crontab -e中的任务都被删除了。  crontab -l 表示列出当前有哪些任务调度。

2、linux的进程的概念和管理,进程:所谓进程就是正在执行的程序。线程:(1)线程是轻量级的进程,(2)进程有独立的地址空间,线程没有。(3)线程不能独立存在,它是由进程来创建的。在linux中用fork。(4)线程耗费的cpu和内存小于进程。 (1)在linux中,每一个执行的程序都称为一个进程。每一个进程都分配一个ID号。 (2)每一个进程,都会对应一个父进程。而这个父进程可以复制多个子进程。 (3)每个进程都可能以两种方式存在:前台和后台。所谓前台进程就是用户目前的屏幕上可以进行的操作。后台进程则是实际在操作,但屏幕上无法看到的进程 (4)一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束。

(5)查看目前系统的进程(静态的)用ps命令。如:  1)ps -a 表示显示当前终端的所有进程信息  2)ps -u 表示以用户的格式显示进程信息  3)ps -x 表示显示后台进程运行的参数  一般使用 ps -aux显示所有的信息。

(6)终止进程 若想某个进程执行一半需要停止时,或是以消耗了很大的系统资源时,此时可以考虑停止该进程。使用kill命令来完成。  1)kill 进程号: 表示终止某个进程。  2)kill -9 进程号: 表示有些进程会捕捉某些信号。如果直接不能结束进程可以用“-9”传递信息。

(7)进程的动态的监控进程top top与ps命令很相似,他们都用来显示正在执行的进程。top与ps最大的不同之处。处于top在执行一段时间可以更新正在运行的进程。  1)监视特定用户:top:输入此命令,回车,查看执行的进程。u:然后输入“u”回车,再输入用户名,即可。  2)终止指定的进程:top:输入此命令,回车,查看执行的进程。k:然后输入“k”回车,再输入要结束的进程ID号。  3)指定系统状态更新的时间:top -d 10:指定系统更新进程的时间为10秒

(8)设置系统时间  1)date命令:显示系统的时间,可以在直接输入“date”命令来查看系统的时间  2)利用date命令来更改系统的时间:    date MMDDHHMMCCYY.SS 表示的是月月日日时时分分年年年年.秒秒  3)查看月历:  cal 3 2002  表示查看2002年3月的月历  4)查看年历  cal 2008  表示查看2008的年历

3、监控网络状态信息 (1)显示网络统计信息的命令netstat,此命令用来显示整个系统目前的网络情况。例如目前的连接、数据包传递数据、或是路由表内容。此命令直接输入即可使用:  如: netstat -an   netstat -anp  显示进程的id (2)检测主机连接命令ping:是一种网络检测工具,它主要是用检测远程主机是否正常,或是两部主机间的戒指是否为断、网线是否脱落或网卡故障。  如: ping 对方ip地址

(3)显示数据包经过的历程命令:traceroute  此命令可以直接输入使用,用来检测数据包在网络上传输的过程。从本机到远程的主机完整路径。帮助管理员解决问题 (4)route  所谓路由是指将数据由来源网络送往目的地的网络操作。在大型网络中,路由是非常复杂的,因为数据包在抵达目的地时,可能经过的节点有很多,路由表是存储在路由器或一些其他连接设置上的窗体。其中记录着了到指定目的地的网络路径,以及这些路径的相关数值。此命令可直接使用,查看本机路由的情况。

4、Mysql数据库在linux下的使用 (1)mysql的安装  步骤:1)首先将安装文件拷贝到安装目录下即可,即mount /mnt/cdrom加载 拷贝 cp mysql—*  /home/   2)然后将安装文件解压缩:tar -zxvf 文件名.gz   3)该文件夹名:mv mysql-standard-4.0.26-pc-linux-gnu-i686  mysql  (创建一个文件夹,名称为mysql)   4)groupadd mysql    ( 表示创建mysql组,便于管理)   5)useradd -g mysql mysql  (表示建一个mysql的用户,并将其放入到mysql组中)   6)scripts/mysql_install_db --user=mysql  (表示初始化数据库,即添加了mysql 的用户)此命令需要进入到mysql主目录下才能正确执行。   7)chown -R root .(修改 文件的 所有者) 表示当前路径下所有文件及文件夹的所有者改为root。其中“.”表示当前路径下所有文件及文件夹,“-R”表示递归操作   8)chown -R mysql data(修改date文件夹的所有者)表示将data文件夹的所有者修改为mysql。   9)chgrp -R mysql . (改变用户组) 表示将当前路径下所有文件及文件夹的用户的用户组改成mysql用户组   10)启动mysql:从bin目录启动。   bin/mysqld_safe  --user=mysql &   (2)如何进入mysql呢?  1)进入安装目录下执行  首先cd到bin目录下  然后执行 ./mysql -u root -p 回车输入密码即可。

退出mysql:quit。    2)设置环境变量:  env |more  查看环境变量PATH的值。环境变量中所有的路径都会保存在root的目录下.bash_profile文件中(可利用ls -al来查看)。因此修改路径只需要在该文件中添加一个路径即可。  .bash_profile文件是每个用户都有一个的,当采用每一个用户登录是,都会去读取每一个用户的.bash_profile文件加载相应的环境变量。因此若用别的用户登录则需要修改相应的用户下面的.bash_profile文件。   (3)mysql在linux下的使用      要求:  1)建立数据库和表  2)加入部分数据  3)编写一个showUsers.java文件,在控制台显示用户,特别需要注意的是mysql的驱动要存放的位置(即放在jdk的目录下,jdk的主目录/jre/lib/ext)。 实现步骤如下:  1)进入mysql  2)建立数据库和表  create database spdb1;//建库  create table users(userid varchar(8),username varchar(8));  3)插入数据  insert into users values(‘002‘,‘shunping‘);  4)编写一个showuser.java文件,在控制台显示用户名  vi showuser.java

improt java.sql.*;  public class showuser{    public static void main(String[] args){   try{   //connect to mysql   Class.forName("com.mysql.jdbc.Driver");      Connection ct=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mysql?user=root&password=liujiyu");       StateMent sm=ct.createStatement();      ResultSet rs=sm.executeQuery("select * from users");     while(rs.next()){    System.out.println("username="+rs.getString(1));   }  }catch(Eception e){   e.printStackTrace();  }       }    }

(4)如何使用命令行来备份和恢复mysql数据库  进入到mysql数据库的安装主目录的/bin下,执行下面的命令  1)备份:mysqldump -u  root -p密码 数据库名>data.bak    2)恢复:mysql -u root -p密码 数据库名<data.bak  再恢复数据库的时候,需要建立一个空数据库!!也就是说,恢复数据库之后所有的数据都恢复到该空数据库中。

5、ssh(secureshellClient)的使用(windows和linux之间的链接工具) ssh是一款远程操作linux,和进行文件上传和下载的软件,在软件公司几乎所有的linux程序员都会使用ssh。安全、方便是他最大的特点。 (1)安装ssh(secureshellClient) (2)由于linux系统下,其系统自带的就有sshd服务,默认是打开状态,且其监听的端口是22.linux下查看监听的端口用netstat -anp命令查看是否真的开启监听。 (3)使用ssh客户端登陆到linux(前提是linux的sshd启动了。且需要确认windows和linux之间是可以ping通的(若是虚拟机的话需要保证虚拟机和主机只在同一个网段即可)。) (4)输入linux系统的的ip地址和用户登录信息即可登陆。 (5)就可以通过ssh在window和linux之间来传输文件(相当于ftp)

6、ftp的安装与配置

6.1当前目录:pwd 相对目录:指的是从当前目录去访问某个文件(夹) 绝对目录:指的是从根目录去访问某个文件(夹) 工作目录:

cp复制命令  cp -r dir1 dir2 递归复制命令(复制子目录信息) mv移动文件和改文件名 rm删除文件和目录  rm -rf * 删除所有内容(包括目录和文件),其中r表示递归,f表示强制执行。 ln建立符号链接  ln -s 源 目标  ln -s /etc/inittab inittab   (表示inittab指向实际文件/etc/inittab) grep在文本中查询内容:grep "12" 文件名;grep -n "12" 文件名; 管道命令:|   find / -name *.html|grep bookmark    //// -name表示的是按名字查找 搜索文件及目录 find:  1)查找特定的文件和目录  2)在特定的目录下搜索并显示指定名称的文件和目录  find /home -amin -10 十分钟内存取的文件或目录   (内对应的是-)  find /home -atime -10 十个小时内存取的文件和目录  find /home -cmin -10 十分钟内更改过的文件和目录  find /home -ctime +10 十个小时前更改过的文件和目录   (前对应的是+)  3)按照文件的大小进行搜索:  find /home -size +10k 意思是说查找/home目录下大小为10k的文件或目录

7、shell 的使用 命令历史和互动:用上下箭头键可以重复以前所输入的命令 命令完成功能:用tab键能自动完成相关命令,再次按tab可得到清单。 shell脚本文件:是一个文件,命令的集合,有执行的权限,执行方式(./文件名)

1)用户登录后自动执行的shell脚本文件:  .bashrc (其位于主目录下)在它之前执行系统的脚本/etc/bashrc主要是基本配置数据文件:.bash_profile 文件(其位于主目录下) ,而又在它之前执行的系统脚本文件是:/etc/profile文件,主要是配置环境变量。  说明:profile文件配置的环境变量是所有用户公用的系统环境变量,.bash_profile 文件是每一个用户自己需要配置的环境变量。.bashrc 文件是每个用户登录时执行的文件(如需要在某个用户登录时,自动的执行某个程序,可以将该程序放在该文件中)。  若需要每个用户都登录时,都执行某个程序,则可以将该程序放在:profile的文件中。

2)配置.bashrc文件可以指定某些程序在用户登录时启动。操作方法就是在该文件中添加相应的执行语句即可。

3)用export PATH=$PATH:$HOME/bin:/root/test/t1  临时加入一个路径。  表示输出环境变量PATH,引用原来的值$PATH $HOME 表示工作主目录 , “:”是路径分隔符  已定义好的环境变量:SHELL:默认shell    PATH:路径   USER:当前登录用户的用户名  显示变量内容:echo $PATH         echo $USER         echo $SHELL

4)通配符  * 代表多个字母或数字  ?代表一个字母或数字   如:ls a*      ls a?      ls ?at?    ls abc[1-6].tif  转义字符:\  ls /mnt/win1/my\document

5)alias的用法  若希望给某个命令语句取个别名就用alias。如:alias showdir=‘ls -l /home‘

8、linux的启动过程(需要明白单用户模式下,启动不读取/etc/inittab文件) linux系统启动过程如下:  1)BIOS自检:主要是对硬件的启动方式检测。  2)启动GRUB/LILO:  3)运行LINUX内核并检测硬件  4)运行系统的第一个进程init  5)init读取系统文件引导配置文件/etc/inittab中的信息进行初始化  6)/etc/rc.d/rc.sysinit系统初始化脚本  7)/etc/rc.d/rcX.d/[KS]* 根据运行级别X配置服务   终止以“K”开头的服务   启动以“S”开头的服务  8)/etc/rc.d/rc.local执行本地特殊配置  9)其他特殊服务

9、压缩和解压方法  (注意:文件和文件夹的区别) 以zip和unzip处理.zip文件  1)zip命令的基本使用方法:  zip file.zip 原文件名; 表示zip后接压缩后的文件名,在它的后面输入要压缩的文件即可  压缩多个文件:  zip file.zip 原文件名1,原文件名2、、、; 表示zip后接压缩后的文件名,在它的后面输入要压缩的文件即可  2)压缩后,自动删除原文件  zip -m file.zip to.txt 表示把to.txt文件压缩成file.zip文件后,to.txt会自动删除  3)将子目录一起压缩  zip -r file.zip 原文件名;表示将当前目录下的子目录一起压缩  4)忽略子目录的内容  zip -j file.zip 原文件名  5)将已压缩的或没有必要压缩的文件去掉  zip -n .mpg:.jpg:.gif  (注意文件中间要用:分开)  6)压缩某一日之后的文件  zip -t 102002 file.zip 表示将当前目录下的在2002年10月20日之后文件压缩。  7)不压缩链接文件的原文件名  zip -y file.zip 原文件名  8)压缩率问题。-1--->-9  -9的压缩率最高  zip -9 file.zip 原文件名  9)将不需要压缩的文件排除在外  zip file.zip 原文件名 -x file2.txt 表示的是在压缩的时候,将当前目录内的file2.txt文件排除在外。 以unzip命令进行.zip文件的解压缩:  1)直接解压缩文件  unzip file.zip  2)排除不需要解压缩的文件  unzip file.zip -x file2 表示的除了file2文件外,其他的文件都解压缩  3)查看压缩包的内容  unzip -Z file.zip 表示查看file.zip压缩包的内容。也可以使用“-l”、“-v”来查看压缩包的内容。

以gzip和gunzip处理.gz文件

10、linux下java网络编程->my qq linux服务端 public class myservertest{  public static void main(String[] args){

try{   //服务器端接受消息部分   ServerSocket ss=new ServerSocket(8888);//创建一个服务器,监听8888端口   System.out.println("i am listen");   Socket sk=ss.accept(); //监听,知道某个客户端来连接自己,一旦连接成功,返回一个scoket(理解成数据管道)   InputStreamReader isr=new InputStreamReader(sk.getinputStream());//可以读取从客户端发送的信息   BufferReader br=new BufferReader(isr);//为了更好的读取,将其放入到BufferReader中

String kk=br.readline();//读出来

System.out.println("client send:::"+kk);      //从服务器端回一个消息给客户端部分   OutputStreamWriter osw=new OutputStreamWriter(sk.getOutputStream());   //BufferedWriter bw=new BufferedWriter (osw);      PrintWriter pw=new PrintWriter(osw,true);      //发送   pw.println("i get your mes"+kk);

}catch(Exception e){   e.printStaticTrace();  } }

}

Windows客户端 public class myclienttest{  public static void main(String[] args){   try{   Scoket s=new Socket("172.16.54.23",8888);//链接服务器端   OutputStreamWriter osw=new OutputStreamWriter(s.getOutStreamStream()); //通过文件流写入发送信息   BufferedWriter bw=new BufferedWriter (osw);      PrintWriter pw=new PrintWriter(bw,true);      //发送   pw.println("hello wrold");

//读取服务器端返回的信息部分   InputStreamReader isr=new InputStreamReader(sk.getinputStream());//可以读取从客户端发送的信息   BufferReader br=new BufferReader(isr);//为了更好的读取,将其放入到BufferReader中

String response=br.readline();//读出来

System.out.println("server response is:::"+response);        }catch(Exception e){  e.printStackTrace();  }  }

}

时间: 2024-10-02 01:37:59

linux学习笔记4:linux的任务调度,进程管理,mysql的安装和使用,ssh工具的使用,linux网络编程的相关文章

Linux学习笔记--ps命令(显示当前进程的命令)

ps:英文名process,进程的意思. 1. 命令格式: ps [选项] 2. 经常使用选项: "ps -a" 显示一个终端的全部进程.除了会话引线 "ps -e" 显示全部进程 "ps -f" 全部列出,通常和其它选项联用 "ps -u" 选择有效的用户id或者是username "ps -x" 显示没有控制终端的进程.同一时候显示各个命令的详细路径 最经常使用的组合: "ps -aux&qu

Linux学习笔记:用户和组的管理

用户和组的管理 Linux系统是一个多用户操作系统.任何一个受使用系统资源的用户.都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问,另一方面也可以帮助用户组织文件.并为用户提供安全性保护:实现用户账号管理主要有用户账号添加.删除与修改.以及用户口令的管理和用户组的管理等工作. 下面我们列出Linux系统里用户和组的定义以及进行用户和组的管理操作时所用到的一些命令: Cisco开发的AAA认证体系

linux学习笔记-第十四课-日常管理(一)

一.w和uptime [[email protected] ~]# w  20:29:01 up 28 min,  1 user,  load average: 0.00, 0.00, 0.00 USER     TTY      FROM              [email protected]   IDLE   JCPU   PCPU WHAT mylinux  pts/0    192.168.1.105    20:12    0.00s  0.32s  0.26s sshd: my

Linux学习笔记 第十课 rpm、yum、编译安装

一.rpm 二.yum 三.编译安装 一.rpm   1.rpm简介 2.rpm 安装命令 (rpm -ivh --nodeps --force) 3.rpm 卸载 (rpm -e) 4.rpm 查询 (rpm -q -qa -ql -qf) 1.rpm 简介: rpm:(Redhat Package Manager),可以在Redhat和Suse系统使用 [[email protected] ~] mount /dev/cdrom /mnt   // 挂载光驱 [[email protecte

linux学习笔记-第十六课-日常管理(三)

一.任务计划 1 )任务计划分为两类: 一类是一次性任务计划,由at控制的 另一类是例行周期性计划,由cron控制的 2 )at 一次性任务计划 选项与参数:    -m  :当 at 的工作完成后,即使没有输出信息,亦以 email 通知使用者该工作已完成.    -l  :at -l 相当於 atq,列出目前系统上面的所有该使用者的 at 排程:    -d  :at -d 相当於 atrm ,可以取消一个在 at 排程中的工作:    -v  :可以使用较明显的时间格式列出 at 排程中的

linux学习笔记-第十九课-LAMP之 mysql (四)

mysql日常操作指令 1 )mysql管理员密码的更改,mysql安装完毕后,管理员root的密码默认为空,需要进行修改 格式 :mysqladmin -u root password '新密码' 示例 : [[email protected] ~]# mysqladmin -u root password '123456' [[email protected] ~]# mysql -u root -p # 这时候就需要使用密码登陆mysql Enter password:          

linux学习笔记-第十五课-日常管理(二)

一.抓包工具,分析工具 抓包工具 : tcpdump 格式 : tcpdump [-AennqX] [-i 接口] [-w 储存档名] [-c 次数] [-r 档案] [所欲撷取的封包数据格式] 常用选项 : -A :封包的内容以 ASCII 显示,通常用来捉取 WWW 的网页封包资料.    -e :使用资料连接层 (OSI 第二层) 的 MAC 封包数据来显示:    -nn:直接以 IP 及 port number 显示,而非主机名与服务名称    -q :仅列出较为简短的封包信息,每一行

linux学习笔记二:文件与目录管理

Linux学习笔记033_11进程

ps:(process information,静态的) 显示进程信息,不加参数显示当前终端的进程 a:包括所有终端的进程 x:不属于任何终端的进程,和任何用户无关系的进程 u:显示出进程的拥有人 f:显示进程的附属关系(依赖关系,父子进程) USER:进程的拥有人 PID:进程ID,默认用进程ID排序 VSZ:程序在运行时调用多少虚拟内存 RSS:真实内存 TTY:?不属于任何终端,进入终端之前就运行 STAT:状态,s为睡眠 TIME:进程持续时间 COMMAND:运行这个进程的指令 ps

Linux学习笔记(5)-进程管理

进程简介 进程是正在执行的一个程序或命令,每一个进程都有自己的地址空间,并占有一定的系统资源.感性的认识,进程就是一个正在运行的程序 进程管理的作用 判断服务器的运行状态 查看系统中有哪些进程 杀死进程(很少用,一般会采用正常的关闭手段) 查看系统所有的进程 #ps aux #ps -le 输出信息各字段的含义 USER:进程是由哪个用户产生的 PID:进程的ID号 %CPU:进程占用CPU资源的百分比 %MEM:进程占用物理内存的百分比 VSZ:该进程占用虚拟内存的大小,单位KB RSS:该进