linux基础使用

来源:互联网 发布:网络翻墙违法吗 编辑:程序博客网 时间:2024/04/26 12:23
--linux实战--1


支持多线程./多用户的
安全性好
对内存和文件管理优越

linux最小只需要4m--》使用嵌入式开发

--命令
通配符
* 代表多个字母或数字
? 代表一个字母或数字
[1-6] 代表1-6之间

\ 转义符

startx  进入图形界面
shutdown -h now  立刻关机
shutdown -r now  重新启动
reboot           重新启动

su    切换用户


logout   用户注销


--vi编辑器的使用
1...
vi Hello.java
i  --进入insert编辑模式
输入 esc 键【进入命令模式】
输入 :   --这时有两个选择
       wq 表示退出报存
       q! 退出不保存


ls  --查看当前目录下的文件
ls -l  --查看文件的详细信息
ls -a --查看隐藏目录信息


linux的文件系统是采用级层式的树状目录结构,在此结构中的
最上层是跟目录'/'

cd /   --切换目录用  cd / 是进入根目录
dir    --跟ls 差不多都是现实目录用的

linux 重要目录结果图  见 1-1....usr目录是默认安装程序的目录图没有。


pwd  --显示在哪个路径下。


useradd   --添加用户
passwd    --设置密码
userdel   --删除用户
userdel -r  --删除用户以及用户的主目录

init [0123456] --命令初始化模式
linux 运行级别
 0:关机
 1:单用户
 2:多用户状态没有网络服务
 3:多用户状态有网络服务
 4:系统未使用保留给用户
 5: 图形界面
 6: 系统重启
常用运行级别是3和5 要修改默认的运行级别可改文件
/etc/inittab的id:5:initdefault:这一行中的数字 这个文件时第一个被读取的
/etc/rc.d/rd.sysinit  --系统初始化脚本
/etc/rc.d/rcX.d/[KS]* --根据运行级别X配置服务
终止以'K'开头的服务
启动以'S'开头的服务
/etc/rc.d/rc.local    --执行本地特殊配置


....如果修改成6或者0 在进去界面中要
在ubuntu 中/etc/inittab 没内容
在进入grub引导界面时,请输入e 
在选中第二行输入e
在最后输入1【单用户级别】
----------------------------没试过-------------

pwd  --显示工作目录
ls   --列出文件和目录
 ls -a    显示隐藏文件
 ls -l    显示长列表格式
 ls -al


mkdir   --建立目录
rmdir   --删除空目录
tounch  --建立空文件
cp      --复制命令
  cp -rf  --拷贝


mv      --移动文件和改文件名
rm      --删除文件和目录
   rm  -rf * --删除所有内容 包括目录和文件 r递归 f强制
ln      --建立符号连接
   ln -s  源目标
   ln -s  /etc/inittab inittab 
 --inittab指向时间文件/etc/inittab


more     --显示文件内容,带分页
less     --显示文件内容带分页
grep --在文本中查询关键词
| --管道命令   --把上面一个命令的结果交给|
的后面的命令处理
man      --man命令相当于dos下的help命令
find     --搜索文件及目录
       find / -name 文件  --  从根目录开始找
       find /home -amin -10: --十分钟内存取的文件或目录
       find /home -atime -10: --十小时内存取的文件或目录
       find /home -cmin -10: --十分钟内更改过的文件或目录
       find /home -ctime -10: --十小时前更改过的文件或目录


       find /home -size +10k --找/home目录下文件大小是10k的 文件


重定向命令
> 文件  --管道定向命令 表示把  > 左边的搜索的结果 写入到
 右边的 文件里面 没有就创建 有就覆盖。。(覆盖写)
>> 文件 -- 同上面的命令 只不过文件不覆盖只追加(追加写)

linux 的每一个用户必须属于一个组


ls -ahl             --查看文件所有者

在linux中添加组
groupadd policeman


vi /etc/group    --vi 命令可以看文件也可以改文件
cat /etc/group   -- cat  只查看不修改的命令

创建用户,并同时指定将该用户分配到哪个组
useradd -g 组名 用户名
修改用户所在组
usermod -g 组名 用户名


改变用户登录的初始目录 
usermod -d 目录名 用户名


查看linux中所有用户信息
vi /etc/passwd
cat /etc/passwd


权限分为三种:r可读  用4表示,w 可写用2表示,x可执行 用1表示


查看文件信息时下面这段表示
-rw-r--r--


分成四段 -,rwx-,r--,r--
-        表示文件类型 d(目录) l(链接)
rwx-     文件的所有者对该文件的权限
rw--     文件所在组的用户对改文件的权限ho
r--      其它组的用户对该文件的权限
 


改变权限的命令赋予abc权限
   chmod   改变文件或目录的权限
   chmod 755 abc :rwxr-xr-xr
   chmod u=rwx,g=rx,o=rx abc :同上 u=用户权限,g=组权限 0=不同其它组其它用户权限
   chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限
   chmod a+r abc  : 给所有用户添加读的权限
--改变所有者(chown)和用户组(chgrp)命令   
   chgrp 组名 文件名   --来修改文件所在组
   chown 用户名 文件名 --来修改文件的所有者
   chown 用户名 ./目录名   --来修改目录的所有者
   chown -R 用户名 ./目录名   --来修改目录及其下面的所有文件 和目录的所有者


jdk安装步骤/
 1.把 mypackage.iso 挂载到linux操作系统上
      在vm做好配置
      mount /mnt/cdrom  --使用该命令挂载  在跟目录下使用
      umont /mnt/cdrom  --卸载光驱
 2.把安装文件copy到 /home   因为iso光驱文件时不可读的安装时 会写入东西  会造成不成功
     cp 文件 /home      --拷贝命令



 3. cd /home  切换到home目录
 
 4. ./???.bin  回车。。。


 5.看看一个文件  /etc/profile【环境配置文件】


 6.配置自己安装的jdk文件
JAVA_HOME = /.....
PATH=$PATH:/......
CLASSPATH=.:/......
export JAVA_HOME PATH CLASSPATH
 


eclipse  安装也一样
   tar -zxvf ???.tar.gz  安装tar.gz文件
   
   启动eclipse 【进入图形界面】


   ctrl+alt+T  进入终端


   ./绿色文件 启动   --有些文件不支持这样启动 只能在图形界面
进入终端敲此命令启动



myeclipse 必须在图形界面下安装


tomcat 安装同上


---》分区
df --查看linux系统分区情况
-h  更详细的分区的情况
-l


fdisk  -l


=======>


linux下的Shell
  --所有命令都必须通过shell解析器解释成可执行代码再传递    给linux内核执行。
  --shell还可以进行程序设计
有三种shell  在以下目录
/bin/sh
/bin/csh
/bin/bsh


==》
查看目前使用的shell
env   --使用该命令查看环境配置
chsh -s /bin/csh  ---修改shell


alias 用法给命令取别名
  例如: ls -l /home  
  别名llh:  alias llh =  'ls -l /home'


使用zip和unzip压缩和解压


压缩文件
      zip  aa.zip 文件名
      zip  aa.zip 文件名1,文件名2
      zip -r aa.zip  文件夹
      zip -m aa.zip  文件  压缩完成后删除原文件
      zip -y aa.zip 文件   不压缩链接文件


      gzip 和 gunzip处理.gz文件


解压缩文件
      unzip aa.zip


history 5 --此项说明会显示 最近使用的5个命令
       !5 --此项说明执行历史编号为5的命令
       !ls--此项说明执行最后一次以“ls”开头的命令


==》
tcp/ip基础
tcp/ip协议由  (tcp,ip,udp,arp,rarp等协议组成)
见图 1-2


应用层
传输层
iP层
链路层


ping  ip   --拼命令
tracert ip --查看拼接网络的追踪路由
traceroute
ifconfig   --下查看ip情况的命令是   windows是ipconfig
ifconfig eth0 down  --禁用设备eth0
ifconfig eth0 up    --打开设备eth0


关闭linux中的防火墙 (用setup命令道text mode设置)
--对网络配置进行生效使用下面语句
/etc/rc.d/init.d/network restart 




在linux中,所有的设备都是文件..
===>对网络进行配置
1....
setup      -- 永久修改
/etc/rc.d/init.d/network restart  对网络配置进行生效


2...
ifconfig eth0 ip地址 
---这样配置网络将会立即生效但是是临时的。。




3...
修改 /etc/sysconfig/network-scripts/ifcfg-eth0
这个文件里各个属性可以修改,包括ip,子网掩码,广播地址
,默认网关..是永久修改
/etc/rc.d/init.d/network restart  对网络配置进行生效




DEVICE=eth0    --设备名
ONBOOT=yes     --开机是否启动
BOOTPROTO=dbcp --dbcp代表自动分配ip  staic代表自己分配固 定ip

===》
rpm管理  redhat package manager 
   例如:apache-1.3.23-11.i386.rpm
=》rpm常用命令
rpm -qa   --查询linux中安装哪些rpm软件
rpm -q 包名部分
rpm -i rpm包全路径名称    ---安装包到当前系统
rpm -ivh rpm包全路径名称  ---安装包到当前系统有提示和进度条
   i = install
   v = verbose
   h = hash


rpm -e  rpm包全路径名称  --删除rpm包
rpm -e --nodeps rpm包全路径名称 --强制删除rpm包
rpm -u  rpm包全路径名称  --rpm包升级
   




===》
samba服务器   ---用于window和linux文件共享


samba的安装步骤
   1..   看看是否已经安装了samba
rpm -q samba
   2..   如有就卸载
        rpm -e  samba
   3..   把自己安装的文件挂载到linux下
   4..    把samba安装文件copy到/home目录下准备安装
   5..   开始安装
         rpm -i  samba安装rpm文件
   6..  创建一个用户  useradd xx。。。
   7..  添加samba的使用用户
        cat /etc/passwd | mksmbpasswd.sh >                             /etc/samba/sabpasswd
   8..设置samba密码
smbpasswd 用户
   9.. 启动samba服务器,测试
service smb  start     ---启动smb服务
        service smb  stop      ---停止smb服务
        service smb  restart   ---重启smb服务
     
   10..启动samba后在 windows中访问   //linux使用的ip
       可以访问到linux中共享的文件
  


===》
设置任务调度命令crontab
1...
crontab -e  --设置任务


2...
每隔一定时间去执行 date > /home/mydata1
  希望,每天凌晨2:00去执行 date >> /home/mydata2
--  crontab -e 中加入0 2 * * *  date >> /home/mydata2
---0 2  * * *  带表了 分 时 月 年 星期


3.怎样去调度多个任务
    1... 在crontab -e 中接着写
    2... 可以把所有的任务,写入到一个可执行文件(shell 编程)


conrtab -r  --终止 任务






===》
监控网络状态信息 
进程.
      进程就是正在执行的程序
线程
      轻量级的进程
      进程有独立的地址空间。线程没有
      线程不能独立存在,它是由进程创建。
      相对讲,线程耗费的cpu,和内存小于进程




ps命令用来查看目前系统中有哪些正在执行。以及它们执行的状况
1..ps -a --显示当前终端的所有进程信息
2..ps -u --以用户的格式显示进程信息
3..ps -x --显示后台进程运行参数
pa -aux  --看的全面,信息也全面




kill  进程pid号     --终止进程
kill -9  进程pid号  --强制终止进程
killlall 进程pid号  --删掉该进程和所有子进程


top与ps命令很相似。它们都用来显示正在执行的进程。
Top与ps最大的不同之处。在于top在执行一段时间可以更新正在运行的进程
1.监视特定用户
top:输入此命令。查看执行的进程
u:然后输入u回车 再输入用户名,监视特定用户


2.终止指定的进程
top--》回车--》k --》回车--》进程id号


tip -d 10 ---指定系统更新进程的时间为10秒。




14:06:22 UP 4 MIN, 1 USER,LOAD AVERAGE:0.02,0.12,0.07
--4 min  代表系统启动了多久  1 user 用户数  
--load average: 0.02,0.12,0.07 当前系统负载情况  如果/3>0.6就 代表系统使用率大于60%           
37 processes:  36 sleeping,1 running,0 zombie, o stopped
--37 processes: 进程数  36 sleeping:休眠数 1 running 运行数
  0 zombie  僵尸进程数 没用的进程 但是又占用了内存。
  0 stopped 停止数
Cpu states : 0.0% user 0.1% system 0.0% nice 0.0% inwait 99.8% idle  
--Cpu 使用情况 99.8% idle  代表有多少Cpu 闲置
Mem: 255264k av, 39428k used,215836k free, 0 shrd, 5528k buff
--内存使用情况 used 使用中的  free 空闲的
Swap: 257032k av, 0k used, 257032k free
--虚拟内存使用情况


date --显示系统时间 MMDDHHMMCCYY.SS  月月日日时时分分年年年年.秒秒


cal 3 2002 --查看2002年3月的日历


cal 2008   --查看2008的年历


netstat --网络信息
 netstat -an  --检测主机连接命令ping:



===》
Mysql数据库在linux下的使用
groupadd mysql
useradd -g mysql mysql
cd mysql  --进入mysql 才能执行下面一句
scripts/mysql_install_db --user=mysql
chown -R root . (修改 文件的 所有者)
chown -R mysql data (修改date文件夹的所有者) 
chgrp -R mysql . (改变用户组)
启动mysql
bin/mysqld_safe  ---user =mysql & 【&表示以后台的方式启动】
检查一下


下面命令是在msql bin目录下执行的
cd bin
./mysql -u  root -p


备份  mysqldump -u root -p密码 数据库名 > data.bak
恢复:mysql -u root -p密码 数据库名 < data.bak 
看表的结构 --desc  


用户环境变量配置root/home/用户/.bash_profile中添加路径
     /.bashrc  用户登录的时候启动文件
系统环境变量配置 /etc/profile
/etc/bashrc



特别注意mysql驱动要存放的位置jdk下的。
/jre/lib/ext/


===》
ssh(secure shell)的使用








===》
ftp的安装与配置






===》
linux 下网络编程




1...如何使用linux


2...


3...


4...





















































0 0
原创粉丝点击