Linux基本命令

==============================================================================
注:查看操作系统信息
# uname -a             #查看内核/操作系统/CPU信息
# cat /proc/version    #查看内核
# cat /etc/issue       #查看操作系统版本
# cat /proc/cpuinfo    #查看CPU信息
# hostname             #查看计算机名: 重新设置机器名 hostname newhostname
# lsmod                #列出加载 内核模块
# env                  #查看环境变量资源
# free -m              #查看内存使用量和交换区使用量
# df -h                #查看各分区使用情况
# df -k /dev/shm       #查看共享内存数量
# df -k /tmp           #查看硬盘tmp目录大小
# shutdown -h now      #关闭服务器
# reboot               #重启服务器

su切换用户,用户名称无法识别问题
cd /bin
chmod 4755 su

ln -sf /mnt/fileserver /home/test/ftpserver
==============================================

--查看磁盘空间:
>df -h
>du --max-depth=1 -h 
>du -sh
>du -sh /opt/oracle 

--这是按兆(M)来排序
du -sh /usr/* | sort -rn

--查看linux系统的shell:
cat /etc/shells

--查看CPU的使用率:
>top
>mpstat
>sar
>ps
>gnome-system-monitor

--查看内存使用:
free -m

--查看内存条个数:
dmidecode |grep -A16 "Memory Device$"

--清理缓存
sync
echo "3">/proc/sys/vm/drop_caches
 
--修改shell:
chsh -s /bin/bash 

--启动telnet服务
chkconfig telnet on

--修改端口映射:80端口映射到8080端口
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

curl -X POST
--修改时间
date -s 2014/07/24
date -s 14:08:00

--查看所有端口占用清单
netstat –apn 

--查看端口是否被占用
>netstat -anp | grep portno
例:netstat -anp | grep 8080

--查看端口被哪个进程占用:
lsof -i :8080
lsof -i :21

--查看当前运行进程
>ps -aux | grep java,
或者直接:ps -aux | grep pid 查看
>kill -s 9 xxx  
>kill -9 $(ps -ef | grep dataUpload.sh)

--查看网卡信息
ifconfig

modprobe bonding
service network restart

--查看网卡是否支持千兆
ethtool eth0
ethtool eth1

--查找包含/home内容的所有xml文件:
find -name "*.xml"|xargs grep -i '/home'

--关闭交换分区
fdisk -l
swapoff /dev/sda2
free -m
--恢复初始状态
swapon -a
free -m

--查看目录下文件个数:
ls -l |grep "^-"|wc -l

--查看目录下面的目录个数:
ls -l |grep "^d"|wc -l


================================== 标题:linux mount (挂载命令)详解 ================================
命令格式:mount [-t vfstype] [-o options] device dir  
1.如果用的是samba做共享服务器的话可以使用
   mount -o username=用户名 //共享ip/共享路径 挂载点
   e.g: mount -o username=rbt1 //10.176.33.37/rbt_lihuan/FileServers /mnt/FileServer
2.如果是nfs:
   mount -o nolock ip:路径 挂载点
   e.g: mount -o nolock 192.168.1.1:/music /mnt

3.解除挂载:
umount /mnt

4.cifs挂载法:
username/password为远程连接登录账号和密码,gid/uid为本地账号的组ID/用户ID, //IP/xxxxx为远程服务器的共享访问目录, /mnt/FileServers为本地挂载目录
mount -t cifs -o username=wx_portal,password=csp,gid=1002,uid=1003 //10.176.33.37/FileServers /mnt/FileServers

=======================================================================================================

5.配置开机自动挂载
因为mount挂载在重启服务器后会失效,所以需要将分区信息写到/etc/fstab文件中让它永久挂载:
vi /etc/fstab

--解压命令
tar -zxvf 压缩文件名.tar.gz
--解压到指定目录下
tar -zxvf 压缩文件名.tar.gz -C /home/xxx

tar –xvf file.tar //解压 tar包

gzip -dv CDNPRDE04014A*.051.gz //解压*.gz包

unzip -o -d /home/oracle/oracleClient linux_11gR2_client.zip 

unrar x **.rar //解压 rar包

--打包命令(不压缩)
tar -cvf /tmp/etc.tar /etc

--压缩打包命令
tar -zcf csp111.tar.gz csp

--gzip / bzip2 压缩命令:
gzip -9 -r dirname
gzip对文本文件压缩效果较明显,二进制文件或大文件推荐使用bzip2压缩

1.-t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有: 
光盘或光盘镜像:iso9660 
DOS fat16文件系统:msdos 
Windows 9x fat32文件系统:vfat 
Windows NT ntfs文件系统:ntfs 
Mount Windows文件网络共享:smbfs 
UNIX(LINUX) 文件网络共享:nfs 

2.-o options 主要用来描述设备或档案的挂接方式。常用的参数有: 
loop:用来把一个文件当成硬盘分区挂接上系统 
ro:采用只读方式挂接设备 
rw:采用读写方式挂接设备 
iocharset:指定访问文件系统所用字符集 

3.device 要挂接(mount)的设备。 


4.dir设备在系统上的挂接点(mount point)。 

挂接光盘镜像文件 

1、从光盘制作光盘镜像文件。将光盘放入光驱,执行下面的命令。 
#cp /dev/cdrom /home/sunky/mydisk.iso 或 
#dd if=/dev/cdrom of=/home/sunky/mydisk.iso 
注:执行上面的任何一条命令都可将当前光驱里的光盘制作成光盘镜像文件/home/sunky/mydisk.iso 

2、将文件和目录制作成光盘镜像文件,执行下面的命令。 
#mkisofs -r -J -V mydisk -o /home/sunky/mydisk.iso /home/sunky/ mydir 
注:这条命令将/home/sunky/mydir目录下所有的目录和文件制作成光盘镜像文件/home/sunky/mydisk.iso,光盘卷标为:mydisk 

3、光盘镜像文件的挂接(mount) 
#mkdir /mnt/vcdrom 
注:建立一个目录用来作挂接点(mount point) 
#mount -o loop -t iso9660 /home/sunky/mydisk.iso /mnt/vcdrom 
注:使用/mnt/vcdrom就可以访问盘镜像文件mydisk.iso里的所有文件了。 

挂接移动硬盘 
对linux系统而言,USB接口的移动硬盘是当作SCSI设备对待的。插入移动硬盘之前,应先用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。 
[root at pldyrouter /]# fdisk -l 

接好移动硬盘后,再用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况.应该可以发现多了一个SCSI硬盘/dev/sdc和它的两个磁盘分区/dev /sdc1?、/dev/sdc2,其中/dev/sdc5是/dev/sdc2分区的逻辑分区。我们可以使用下面的命令挂接/dev/sdc1和 /dev/sdc5。 
#mkdir -p /mnt/usbhd1 
#mkdir -p /mnt/usbhd2 
注:建立目录用来作挂接点(mount point) 
#mount -t ntfs /dev/sdc1 /mnt/usbhd1 
#mount -t vfat /dev/sdc5 /mnt/usbhd2 
注:对ntfs格式的磁盘分区应使用-t ntfs 参数,对fat32格式的磁盘分区应使用-t vfat参数。若汉字文件名显示为乱码或不显示,可以使用下面的命令格式。 
#mount -t ntfs -o iocharset=cp936 /dev/sdc1 /mnt/usbhd1 
#mount -t vfat -o iocharset=cp936 /dev/sdc5 /mnt/usbhd2 

linux系统下使用fdisk分区命令和mkfs文件系统创建命令可以将移动硬盘的分区制作成linux系统所特有的ext2、ext3格式。这样,在linux下使用就更方便了。使用下面的命令直接挂接即可。 
#mount /dev/sdc1 /mnt/usbhd1 

挂接U盘 
和USB接口的移动硬盘一样对linux系统而言U盘也是当作SCSI设备对待的。使用方法和移动硬盘完全一样。插入U盘之前,应先用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。 
[root at pldyrouter root]# fdisk -l 
插入U盘后,再用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。 
[root at pldyrouter root]# fdisk -l 
系统多了一个SCSI硬盘/dev/sdd和一个磁盘分区/dev/sdd1,/dev/sdd1就是我们要挂接的U盘。 
#mkdir -p /mnt/usb 
注:建立一个目录用来作挂接点(mount point) 
#mount -t vfat /dev/sdd1 /mnt/usb 
注:现在可以通过/mnt/usb来访问U盘了, 若汉字文件名显示为乱码或不显示,可以使用下面的命令。 
#mount -t vfat -o iocharset=cp936 /dev/sdd1 /mnt/usb 

挂接Windows文件共享 
Windows网络共享的核心是SMB/CIFS,在linux下要挂接(mount)windows的磁盘共享,就必须安装和使用samba 软件包。现在流行的linux发行版绝大多数已经包含了samba软件包,如果安装linux系统时未安装samba请首先安装samba。当然也可以到 www.samba.org网站下载......新的版本是3.0.10版。 
当windows系统共享设置好以后,就可以在linux客户端挂接(mount)了,具体操作如下: 
# mkdir –p /mnt/samba 
注:建立一个目录用来作挂接点(mount point) 
# mount -t smbfs -o username=administrator,password=pldy123 //10.140.133.23/c$ /mnt/samba 
注:administrator 和 pldy123 是ip地址为10.140.133.23 windows计算机的一个用户名和密码,c$是这台计算机的一个磁盘共享 
如此就可以在linux系统上通过/mnt/samba来访问windows系统磁盘上的文件了。以上操作在redhat as server 3、redflag server 4.1、suse server 9以及windows NT 4.0、windows 2000、windows xp、windows 2003环境下测试通过。 

挂接UNIX系统NFS文件共享 
类似于windows的网络共享,UNIX(Linux)系统也有自己的网络共享,那就是NFS(网络文件系统),下面我们就以SUN Solaris2.8和REDHAT as server 3 为例简单介绍一下在linux下如何mount nfs网络共享。 
在linux客户端挂接(mount)NFS磁盘共享之前,必须先配置好NFS服务端。 

1、Solaris系统NFS服务端配置方法如下: 
(1)修改 /etc/dfs/dfstab, 增加共享目录 
   share -F nfs -o rw /export/home/sunky 
(2)启动nfs服务 
   # /etc/init.d/nfs.server start 
(3)NFS服务启动以后,也可以使用下面的命令增加新的共享 
   # share /export/home/sunky1 
   # share /export/home/sunky2 
注:/export/home/sunky和/export/home/sunky1是准备共享的目录 

2、linux系统NFS服务端配置方法如下: 
(1)修改 /etc/exports,增加共享目录 
/export/home/sunky 10.140.133.23(rw) 
/export/home/sunky1 *(rw) 
/export/home/sunky2 linux-client(rw) 
注:/export/home/目录下的sunky、sunky1、sunky2是准备共享的目录,10.140.133.23、*、 linux-client是被允许挂接此共享linux客户机的IP地址或主机名。如果要使用主机名linux-client必须在服务端主机 /etc/hosts文件里增加linux-client主机ip定义。格式如下: 
10.140.133.23 linux-client 

(2)启动与停止NFS服务 
/etc/rc.d/init.d/portmap start (在REDHAT中PORTMAP是默认启动的) 
/etc/rc.d/init.d/nfs start 启动NFS服务 
/etc/rc.d/init.d/nfs stop 停止NFS服务 
注:若修改/etc/export文件增加新的共享,应先停止NFS服务,再启动NFS服务方能使新增加的共享起作用。使用命令exportfs -rv也可以达到同样的效果。 

3、linux客户端挂接(mount)其他linux系统或UNIX系统的NFS共享 
# mkdir –p /mnt/nfs 
注:建立一个目录用来作挂接点(mount point) 
#mount -t nfs -o rw 10.140.133.9:/export/home/sunky /mnt/nfs 
注:这里我们假设10.140.133.9是NFS服务端的主机IP地址,当然这里也可以使用主机名,但必须在本机/etc/hosts文件里增加服务端ip定义。/export/home/sunky为服务端共享的目录。 

如此就可以在linux客户端通过/mnt/nfs来访问其它linux系统或UNIX系统以NFS方式共享出来的文件了。以上操作在 redhat as server 3、redflag server4.1、suse server 9以及Solaris 7、Solaris 8、Solaris 9 for x86&sparc环境下测试通过

补充:

linux加载光驱

(1)使用光驱前,要先mount一下:#mount /dev/cdrom /mnt/cdrom,然后您就可以进入/mnt/cdrom目录下读取光盘内容了;
(2)当您想退出光盘时,须使用umout命令,否则光驱就会一直处于死锁状态:#umount /mnt/cdrom。

4.操作远程服务器:
ssh ip
ftp ip
mput
mget

#用rpm命令安装vsftpd服务:-----------------------------------

--查询安装包
rpm -qa | grep vsftpd

--卸载ftp服务命令
rpm -e vsftpd-2.0.7-4.17.1

--安装ftp服务命令
rpm -ivh vsftpd*.rpm 

/etc/vsftpd.conf

--make命令使用不了
sudo apt-get install g++
sudo apt-get install pentium-builder

service vsftpd restart
/etc/init.d/vsftpd restart
/etc/init.d/xinetd restart

netstat -tnulp | grep vsftpd

--禁用root用户有使用ftp服务权限:
cd /etc/ftpuser

---------------------------------
5.访问数据库,切换到数据库用户:
su - oracle -c "lsnrctl set log_status off"
$su - oracle
$sqlplus / nolog

sql>conn / as sysdba
sql>startup
sql>shutdown 其参数有四个(normal,immediate,transactional,abort)
sql>quit

$lsnrctl start(启动监听器)
$lsnrctl stop(关闭监听器)

sql>conn usrname/password
sql>conn sys@orcl249 as sysdba

sql>show parameter processes

/home/oracle/base/product/11.2.0/db_1/dbs/initoradb11.ora
/home/oracle/base/product/11.2.0/db_1/dbs/initstbydb.ora
/home/oracle/base/product/11.2.0/db_1/dbs/spfilestbydb.ora

startup pfile='/u01/app/oracle/pp.ora';
create pfile from spfile;
create spfile='/oracle/ora11g/app/oracle/product/11.1.0/db_1/dbs/spfiledbcsp16.ora' from pfile='/oracle/ora11g/app/oracle/product/11.1.0/db_1/dbs/initdbcsp16.ora'
orapwd file=$ORACLE_HOME/dbs/orapwd$ORACLE_SID password=oracle entries=5 force=y
alter database mount standby database 

1.创建用户:useradd 
2、格式
 useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name
3、主要参数
  -c:加上备注文字,备注文字保存在passwd的备注栏中。

  -d:指定用户登入时的启始目录。

  -D:变更预设值。

  -e:指定账号的有效期限,缺省表示永久有效。

  -f:指定在密码过期后多少天即关闭该账号。

  -g:指定用户所属的群组。

  -G:指定用户所属的附加群组。

  -m:自动建立用户的登入目录。

  -M:不要自动建立用户的登入目录。

  -n:取消建立以用户名称为名的群组。

  -r:建立系统账号。

  -s:指定用户登入后所使用的shell。

  -u:指定用户ID号。

--修改当前用户的shell方式:
chsh -s /bin/zsh 
chsh -s /usr/bin/csh

chsh -s /bin/csh 

4.修改用户密码:passwd username

--创建用户:csp_hbltc04/csp
useradd -d /home/transfertool -m -s /usr/bin/csh -p `openssl passwd -1 transfertool` transfertool

eg: useradd -d /home/zhoumei -m -s /usr/bin/csh zhoumei

useradd -d /home/csp1 -m -s /usr/bin/csh csp

useradd -d /home/icdcomm -g csp -m -s /usr/bin/csh icdcomm
useradd -d /home/ftp_shlt  -m  -p `openssl passwd -1 ftp` ftp_shlt
useradd -d /home/icdcomm -g csp -m -s /usr/bin/csh -p `openssl passwd -1 icdcomm` icdcomm
usermod -d /home/csp csp
useradd -d /home/datastation -m -s /usr/bin/csh -p `openssl passwd -1 dst` datastation

5.1创建组
groupadd -g gid 组名

5.2修改用户组名:
usermod  -g  组名  用户名 
usermod  -G  组名1,组名2  用户名

usermod  -G  组名1,组名2  用户名
usermod -s /usr/bin/csh sdlt_c10

/u01/app/oracle/admin/cspdb37/pfile/init.ora.1114201314522
create spfile from pfile='/u01/app/oracle/admin/cspdb37/pfile/init.ora.1114201314522';   
/u01/app/oracle/product/11.2.0/db_1/dbs/spfilecspdb37.ora

create spfile='/home/oracle/base/product/11.2/dbhome_1/dbs/spfilestbydb.ora' from pfile='/home/oracle/base/product/11.2/dbhome_1/dbs/initstbydb.ora'
create spfile='/u01/app/oracle/product/11.2.0/db_1/dbs/spfileringdb38.ora' from pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/initringdb38.ora'

f_query_mould_tone

6.将某文件目录的权限赋给stuser用户
chown stuser file1 
/home/oracle/base/product/11.2/dbhome_1/dbs/spfilestbydb.ora

---------------------------------------------------------
1.删除监听日志的方法如下:
切换到oracle用户
su - oracle
cd /oracle/ora11g/app/oracle/diag/tnslsnr/WUH1000047863/listener/trace
$lsnrctl set log_status off
$rm listener.log
$lsnrctl set log_status on
监听日志启动后就会自动创建一个全新的listener.log文件,备份好的文件可以删除。
如果不执行上述的命令直接删除listener.log,系统是不会创建的。

-----------------------------------------------

2.警告日志可以用以下命令移动或者删除
find . -mtime +10 -exec mv {} /backup/alert_log/ \;

3.查询30天前的跟踪日志,然后删除
find trace -ctime +30|more
find trace -ctime +30 |xargs rm -f
find . -name "test*" | xargs rm -rf "test*"
find trace -ctime +30|more
find . -name "*ftp*" |more

#批量删除文件
find . -name "gbkdb27_ora*.*"  -exec rm -r {} \;
find . -name "log_*.*"   -exec rm -r {} \;
find . -name "ora11g_ora*.*"  -exec rm -r {} \;

find . -name "dst_*"  -ctime +0| xargs rm -rf {} \;

find /u01/app/oracle/diag/rdbms/gbkdb27/gbkdb27/trace/ -name "gbkdb27_ora*.*" -ctime +4| more
crontab

dataguard: http://database.51cto.com/art/200907/133644.htm

linux下如何启动停止oracle :http://hi.baidu.com/ojnukmcmbobfntr/item/a2ccd2ca6a25745bbcef6909

Linux 启动停止oracle实例+如何启动多个实例:http://zhidao.baidu.com/link?url=zcG9W6l4F7p8wt91LEHitnICP6FCW9G_bzp6NM5HZsKXCveTGMXzcYCaTcWZKKmui2rNEiB9-kGMEkXAWYz_jq

--中文乱码问题---
查看当前的字符集设置:locale

--所有的字符集都放在
/usr/share/i18n/charmaps

vi /etc/sysconfig/i18n
将内容改为
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"

保存修改后执行命令:source /etc/sysconfig/i18n
这样中文在SSH,telnet终端就可以正常显示了
http://hi.baidu.com/z57354658/item/61c35b899fc2975f850fabdb

--scp命令:http://www.2cto.com/database/201210/162244.html
scp -r root@10.187.23.22:/home/jdk1.5.0_16/* .


--启动非归档模式
alter database noarchivelog;
list archive log;

ALTER DATABASE no force logging;
orapwd file='/u01/app/oracle/product/11.2.0/db_1/dbs/orapwprimdb' password=oracle

alter database create standby controlfile as '/u01/app/oracle/oradata/primdb/stbydb01.ctl';

ORACLE_BASE=/u01/app/oracle/
/u01/app/oracle
alter database create standby controlfile as '$ORACLE_BASE/oradata/primdb/stbydb01.ctl';

alter database create standby controlfile as '/u01/app/oracle/oradata/primdb/stbydb02.ctl';
scp stbydb01.ctl oracle@10.176.33.37:/u01/app/oracle/oradata/stbydb/
scp stbydb02.ctl oracle@10.176.33.37:/u01/app/oracle/oradata/stbydb/
scp stbydb03.ctl oracle@10.176.33.37:/u01/app/oracle/oradata/stbydb/
orapwd file='/u01/app/oracle/product/11.2.0/db_1/dbs/orapwstbydb' password=oracle
create pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/initstbydb.ora' from spfile;


create spfile='/u01/app/oracle/product/11.2.0/db_1/dbs/spfileprimdb.ora' from pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/initprimdb.ora';

create spfile from pfile;

-----修改processes和sessions值------------
SQL>alter system set processes=300 scope=spfile;
SQL>alter system set sessions=335 scope=spfile;
SQL>shutdown immediate
SQL>startup;

----------------卸载安装包的指令----------|
| A:RPM包                                        |
| 查找RPM包软件:rpm -qa ×××*             |
|    rpm -qa firefox*                        |
| rpm -e firefox-1.0.1-1.3.2                     |
|                                                |
| B:tar.gz                                       |
| make install                                   |
------------------------------------------|

=================================Windows版本命令===========================
1.查看所有的端口占用情况
C:\>netstat -ano

2.查看指定端口的占用情况
C:\>netstat -aon|findstr "443"
  协议    本地地址        外部地址       状态       PID
  -------------------------------------------------------
  TCP    127.0.0.1:443   0.0.0.0:0     LISTENING   2016

3.查看PID对应的进程
C:\>tasklist | findstr "2016"
-------------------------------------------------
XXXX.exe      2016 Console      0     16,064 K 

4.结束该进程(非httpd.exe)
C:\>taskkill /f /t /im XXXX.exe


gcc test.c -o test.cgi

--将文件内容中的子串替换为指定的子串命令:sed
sed -i '$/abc/ccc/g' test.txt
sed -e 's/\x01/#/g' 1.051
--转换当前文件格式:
iconv -f UTF-8 -t GBK CDNPRDE04014A1612231001001.051 -o abc.051

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值