欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux 入门 博客分类: 杂文选集Linux linux入门 

程序员文章站 2024-03-05 09:04:24
...
//跟踪 路由ip
tracert www.baidu.com

//---创建一个目录
mkdir dir1 创建一个叫做 'dir1' 的目录' 
mkdir dir1 dir2 同时创建两个目录 

//----批量创建  
mkdir -p /tmp/dir1/dir2 创建一个目录树 

//----删除
rm -f file1 删除一个叫做 'file1' 的文件' 

//---删除 空目录
rmdir dir1 删除一个叫做 'dir1' 的目录' 

//----强制删除非空目录 不提示
rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容 

rm -rf dir1 dir2 同时删除两个目录及它们的内容 

//---重命名 或者 移动 一个目录 
mv dir1 new_dir 

//---查看当前操作用户  
who am i

//--注销
logout

//---穿件  连接文件
ln -s file1 lnk1 创建一个指向文件或目录的软链接 
ln file1 lnk1 创建一个指向文件或目录的物理链接 

//--添加用户名
useradd  
userdel  --删除用户
usermod -g mysql arod 将用户arod 添加到mysql 用户组中去
userdel -r arod   --删除 用户arod 并且删除 该用户的主目录

//添加警察组 
groupadd  policeman 
groupdel    -删除  用户组

//查看 所有的用户组
vi /etc/group 
cat /etc/group


//创建用户并指定用户组  
useradd -g 组名  用户名
useradd -g policeman arod--讲arod 添加到  警察组中

//查看 用户
vi /etc/passwd
cat /etc/passwd

//查看 环境变量
env  

//切换用户身份
su root

//查询 文件
find  /home/ -name m*  -- 在 home目录中按名字查找 m 开头的 文件 目录 字符

//查看命令
cat 
vi

//修改  权限 
chmod

//修改 用户组 
chgrp

//修改拥有者
chown

//使用 man帮助 
man

//修改mysql文件夹 及子目录文件的 所属组  为 mysql -r 递归修改
chgrp -r mysql  /home/mysql

//进入图形界面
startx  

//查看磁盘的 的配分情况
df

//检测磁盘 
fdisk

//查找 文件大小 为 1G以上的文件
find -size 1000000k 

//查询系统支持的shell
ls -l /bin/*sh 
echo $SHELL


//shell修改
chsh -s  新的shell   
注销 后才能使用

//查找历史执行的命令history 
history 5
!5 执行 历史编号为5 的命令
!ls 执行最后一次以 ls 开头的命令


//执行当前目录下的eclipse 的并且 以 后台方式启动
./eclipse $ 以后台的方式 运行 eclipse

//查询Ip
ifconfig

//查找丢失 ,恢复 的文件
rpm -qf /etc/samba/smb.conf
rpm2cpio /media/Realxxxxxxx.x86.rpm | cpio -idv ./etc/samba/smb.conf

//查看某个服务 的状态
service -list | grep smb

//修改主机名 
vi /etc/sysconfig/network
要重启

//修改运行等级登录
vi /etc/inittab
init:3:default;


//修改 hosts
vi /ets/hosts

//文件夹的特殊权限
s SUID 4
s SGID 2
t SBIT 1

chmod  2777  /home/test

chmod u+s,go+x /home/test




--samba 下 将  windows 共享e盘挂载到 linux下 /mnt下  
mount -t cifs -o username=Bin,passwd='338802' //192.168.1.111/e$ /mnt/

--window打开安全策略
secpol.msc

1.关闭防火墙 
chkconfig iptables on
chkconfig iptables off
iptables -F 清空所有策略

临时生效
service iptables start
service iptables stop


(1)永久关闭SELinux(否则samba可能不能访问)
修改配置文件
# vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
需要重启机器生效!!

(2)关闭防火墙
开启: chkconfig iptables on
关闭: chkconfig iptables off



//-------------------------------j2ee-----------------------//


让 linux  使用 windows 的文体  可以使用 iso文件 

//---------jdk的 安装 


1.把 mypackage.iso 挂载到linux系统上

	vm-setting- iso--ok

	mount /mnt/rdrom/  挂载 iso文件

	cd / 后  在mount /mnt/cdrom 下 

	umount /mnt/cdrom 卸载

	cd cdrom
2.把安装文件拷贝的 /home下  
  cp  文件  /home
  

3 cd home 切目录到 /home

4 安装 
   ./j2sdk-1.5..bin

  dir  ==ls   或多一个文件夹

5 看看  一个 文件  /etc/profile  [环境配置文件] 


6 配置 刚才自己安装的 jdk
JAVA_HOME=/home/j2sdk1.4.2_07
PATH=$PATH:/home/j2sdk1..4.2_07
CLASSPATH=.:/home/j2sdk1.4.2_07/jre/rt.jar
export JAVA_HOME PATH CLASSPATH

7. 重新登录后才能生效  这个时候才用的是自己的jdk



//------------------eclipse 安装

1. 挂载mypacke.iso
  mount /mnt/cdrom

 cd  /mnt/cdrom

2 拷贝
   cp eclipce-SDK-3.1.1-linux-moti.tat.gz  /home

3.安装
  tar -zxvf  eclipsse.??.tar.gz   会多一个eclipse 问文件夹  

4 动  ./eclipse  [前提 进入 图形界面]
  
5 startx  进入 图形界面
 
6  cd /home/eclipse

7  ./eclipse

 
//--------------myeclipse 的安装  [前提 进入 图形界面] jdk  -eclipse  -myeclipse


1.挂载mypacke.iso
  mount /mnt/cdrom

2 cp  xxx  /home

3 ./enterpirse Workbench ???.bin

4.中间 会选择 eclipse 的安装路径 


//---------------------安装 tomcat

1.cd  /mnt/cdrom

2.拷贝 cp jakarata-tomcat-5..tar.gz  /home

3.安装 tar -zxvf jakarata-tomcat-5..tar.gz



//-----启动 eclipse 中 myeclipse

./eclipse & [表示以后台方式运行: 不加时候  字符控制台 不能用, 加了 字符控制台就可以使用]


//在linux中所有的设备都是一个 文件 


//---------------linux 配置网络参数 
方法一
1.使用 root 登录 
 
2.settup


3.network configuration  

4.自动获取ip  打一个长空格

5.设置生效  
  /etc/rc.d/init.d/network restart

方法二 立即生效   只有临时作用 重启后 效果就没有了
ifconfig eth0 192.168.88.66

三种方法 直接修改文件
vi  /etc/sysconfig/networ-scripts/ifcof-eth0

device=eth0  /名称
onboot=yes  /启动 就生效  no 表示无效 没用
bootproto=static / dhcp (系统启动的时候由操作系统分配)
ipaddr=
netmask=
geteway=

i 进入修改  
esc  wq

保存生效
/etc/rc.d/init.d/network restart


//------------------------RPM 包管理
apache-1.3.23-11.i386.rpm

apache:软件名称
1.3.23-11 软件的版本号,主版本,次版本
i386  运行的平台
rpm 文件扩展名 代表 RPM

如何查询 linux中安装了那些 rpm软件
rpm -qa

安装  rpm 包
rpm -i RPM包的全路径 i=intall

rpm -ivh PRM包全路劲  显示 verbose提示 和 hash进度条 

卸载 RPM包
rpm -e  jdk 就可以安装了
rpm -e --nodeps [强制删除,一般不使用] 


升级   
rpm -U RPM
rpm -U cvs-1.11.2-10.i386.rpm 



//--------------linux  ping 通  windows 网卡互通

//------samba服务器的安装

1.检测 是否已经安装了 samba

rpm -q  samba

2.如有  卸载  
rpm -e samba  [可以加入强制删除]--nodeps


3.拷贝 samba 打头的三个文件 拷贝到 /home下 准备安装
  cp /mnt/cdrom/samba* /home/

4.先装 rpm -ivh samba-common

5.再装 rpm- ivh samba-client 

6.再装 rpm- ivh samba-xxxx 

7.创建一个用户 youyou 
  useradd youyou
  passwd  123   --linux 的密码

8 给 youyou 设置 samba 密码 

  a.将  /etc/passwd 的所有用户 都设为 samba用户 (先添加用户)

  cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
  

  b. 给 youyou 密码
  smbpasswd youyou  --123  123

9.启动 samba 服务器 
 service smb start    启动 
 service smb stop     停止
 service smb restart  重启

10  windows --cmd ---\\192.168.65.129 --youyou  123 
   在 windows 中 讲文件要复制的文件 复制到  youyou 中就可以逆向也可以




//--------------任务调度的使用 crontab
1.设置任务
  crontab -e 

2.每隔一定的时间执行  date 
  date > /home/mydate1   [ > 覆盖写 >> 追加写 ] 讲时间 写入到  mydate 1文件中


3.每天凌晨2:30 去执行 date >> /home/mydate2
  crontab -e  
   i  
   0      2      *   *    *    date >> /home/mydate2
   分钟   小时   日  月   周

4 如果是每分钟  
  * * * * *  date >> /home/mydate2

5  多个命令 换写就可以了
   2) 可以将多个任务写入到一个可执行文件(shell 编程)



vi mytask.sh   
-i   
date >> /home/myDate3
cp /home/myDate3 /home/smb1

crontab -e 
* * * * * /home/mytask.sh

清空调度任务
crontab -r

列出当前有那些任务
crontab -l 


进程:就是一个 正在运行的程序 

线程:
     1: 轻量级的 进程
     2: 进程拥有独立的 地址空间,而线程没有 
     3. 线程不能独立存在, 它有进程创建  在linux中 使用 fork  java中 使用Thread 或者继承 runnable接口
     4. 相对讲 线程耗费的cpu 和  内存  小于  进程 

   地址空间 
     1:可以有独立的不连续的 空间
     3: 如果一个进程 跳到另一进程 中过去了 就有可能 是一个病毒或者木马.(截取到其他信息后然后i执行其他的任务)
     4.如果地址空间 读错了,或者 越界了 都会蓝屏,所以说为什么操作系统 要稳定,因此说 硬件之间 会有一个兼容性

     

///-----------截取 片刻 进程的状态
ps -aux | more 

kill 1777  如果 这个进程正在使用

kill -9  1777 强制 杀死进程 

-- top 动态截取 进程状态

top -d 10   ---->10s 就会更新一次
按u  输入用户 root ---> 只监控 root 用户
ctrl +c  退出


//-------------监控 网络状态信息 
netstat  --显示 系统的整个系统目前的网络情况;连接数,数据包传递,路由表

netstat -au  | more
netstat -aup  | more   + p显示 进程号 

可以使用 kill -9  pid


//-------------- 追踪路由 
显示 数据包历程的 命令   traceroute:  网管用的最多


//--------路由表 查看本机路由情况
route


//---------------安装 mysql
1.安装文件拷贝到 /home

2.tar -zxvf   文件名.tar.gz

3  
  groupadd mysql  创建mysel组
  useradd -g mysql mysql

  //进入到mysql压缩后的文件夹 就是有scripts文件加的目录
  scripts/mysql_install_db --user=mysql  (初始化数据库 添加 一个用户 mysql)  

  mv xxxx解压后的文件目录 为 mysql  --修改 文件目录名称 为mysql
  chown -R root .  改变当前目录和子文件目录的 拥有者为 root   (.当前目录 ..上级目录)
  chown -R root mysql data  (修改 data 文件夹的拥有者为 mysql )
  chgrp -R mysql .  改变当前目录和子文件目录的 所在组 为 mysql

安装mysql OK 

--后台启动  &
 mysql/bin/mysqld_safe --user=mysql &

--ctrl+c 退出  mysql 仍然在运行

netstat -anp | more 可以看到 3306的端口在运行


进入 mysql 界面 
  cd bin
  ./mysql - u root -p 输入密码 就可以进入了

退出 quit

配置环境变量
env 
.bash_profile 每个用户目录中都有的  保存的用户变量

cd /root/
vi .bash_profile
 --i  
 修改 添加 :/home/mysql/bin/  
 PATH=$PATH:$HOME/bin:/home/mysql/bin/  

要注销后重新登录
看 env 
mysql -u root -p
就可以了 

mysql数据库的使用 
1)进入mysql 
2)建立数据库 和表
   create database spdb1;
   show database
   use mysql   --使用mysql自带的数据库 mysql
   show tables
   select * form db;

3)建表
  use spdb1  --使用 数据库 希望在这个数据库中建立表
  create table users(userid varchar(8),userName varchar(8));
  show tables

4) 加入数据
  insert into users values('001','shunping');
  insert into users values('002','along');
  desc users; 查看表的详细
  
5) 编写 java 文件 连接数据库 

quit 退出开始写  java文件

vi ShowUsers.java

import java.sql.*
  public class  ShowUsers{
    //main function
  public static void main(String [] args){
    //connect  to mysql database
  try{
    	Class.forName("com.mysql.jdbc.driver");
    	Connection ct=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/spdb1?user=root&password=");
    	Statement sm=ct.createStatement();
    	ResultSet =rst=sm.executeQuery("select * from users"); 
    	while(rx.next()){
     		System.out.println("username="+rs.getString(2));   
  	} 
     }catch(Exception e){
 	e.printStackTrace();
     }
  }

}

:wq

   
javac ShowUsers.java
java ShowUers


mysql的 驱动 要放在JDK /jre/lib/ext/   cp  mysql-connector-XXX /jdk主目录/jre/lib/ext/

javac  ShowUers.java
java  ShowUser


mysql数据库的备份  
1. cd  /home/mysql/bin

备份spdb1 spdb2 数据库
./mysqldump -u root -p132 spdb1,spdb2 > /home/spdb1.bak  

//备份表
./mysqldump -u root -p132 spdb1.users > /home/spdb1.bak  


恢复 前先删除
drop table users;
drop database spdb1

quit  退出

mysql -u root -p  spdb1 < /home/spdbd1.bak

注意 < > 指向的问题

//-------------每天凌晨2点 执行 spdb1的备份
vi my2.sh
/home/mysql/bin/mysqldump -u root -p spdb1 > /home/spdb1
:wq

chmod 744 my2.sh

crontab -e
0 2 * * * /root/my2.sh


---设置临时ip
ifconfig eth0  192.168.65.129


-----系统环境变量 公用的环境变量
vi /etc/profile

----只给某个人 使用用户的环境变量
vi /smb1/.bash_profile

----开机启动 tomcat
vi /etc/bash

/home/tomcat/bin/startup.sh start  开机就运行 tomcat

注销才有效果

export PATH=$PATH;/root 在/home 路径中添加 root 目录的引用 临时生效

echo $PATH

echo $Shell


env | more



//-----------通配符 
* 多个
?  一个 
\ 转义

//----touch 建立空目录
touch /home/test2


//-----------alias  取别名
alias llh='ls -l /home | more'




//-------------------------linux 启动过程

power on

1)BIOS 自检  :检测 对硬件的基本检测 ,例如是从光驱启动还是软盘启动 还是U盘 或者说是 移动硬盘

2)然后开始启动一个 CRUB /LILO:引导界面

3)然后运行 linux 内核并检测一些硬件 ,比如  磁盘有没有坏道,有没有接入外设 比如 打印机 等 

4)运行系统的第一个进程 init 天字号第一进程

5)init 进程会去读取 /etc/inittab 中的文件 里面有设置运行等级  3  还是 5 

6) 然后去读初始化系统脚本文件/etc/rc.d/rc.sysinit   里面有 密码,网络,时间,读取的磁盘列表 等 配置 

7)根据运行等级X配置服务  /etc/rc.d/rcX.d/[KS]*
  终止以 "K" 开头的服务
  启动以 "S" 开头的服务

8)执行 /etc/rc.d/rc.local  执行本地服务等一些 特殊配置

9) 然后就是一些其他的特殊服务
相关标签: linux入门