linux常见操作整理

服务容器,Linux

2017-04-05

169

0

目录


Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。本文记录了Linux常用的一些命令,并不断完善中,以备查阅。

 

一、基本操作

 

1、删除文件命令:
rm -rf目录循环删除目录
2、打开/关闭fpt命令:
service sftpd stop/start
3、ftp开启命令:

 

   /etc/rc.d/init.d/xinetd stop
/etc/rc.d/init.d/vsftpd start
/etc/rc.d/init.d/xinetd start

 

4、svn开启命令:
svnserve -d -r /usr/local/svn/
5、jetty启动:

 

root@ubuntu-server1:/usr/local/jetty-mvn/jetty9/bin# ./jetty.sh start
Starting Jetty: . . . OK Tue Sep 10 12:30:45 CST 2013

 

6、解压文件到指定目录:
tar xxx.gz -C /usr/local/
7、查看权限命令
查看目录的相关权限可以采用命令ls -lD,或者直接用ls -la如:
ls -l www.jb51.net //这里表示查看www.jb51.net目录
8、查看linux机器是32位还是64位的方法:
file /sbin/init 或者 file /bin/ls
9、找不到网卡解决:
vi /etc/udev/rules.d/70-persistent-net.rules
将最新的eth2网卡改为eth0,并拷贝其ATTR(即最新的mac地址)值,然后编辑eth0的配置文件,将HWADDR改为该值,重启网络服务,问题解决。

 

10、查看磁盘空间:
df -hl

 

11、查看系统用户和组:

 

groups查看当前登录用户的组内成员
groups gliethttp查看gliethttp用户所在的组,以及组内成员
whoami查看当前登录用户名
/etc/group文件包含所有组
/etc/shadow和/etc/passwd系统存在的所有用户名

 

12、设置环境变量:
vi /etc/profile
最后添加
export PATH=/usr/loca/mysql/bin:$PATH

 

保存退出执行:
source /etc/profile
然后查看:
echo $PATH

 

13、防火墙:
(1)、关闭/开启:
service iptables stop/start
(2)、添加端口过滤:
vi /etc/sysconfig/iptables

 

二、修改权限命令

 

chmod 777 文件名
1.chmod 577 /home/stuser -R
2.umask -p 0200
3.chown XXXX YYYY (XXXX 为用户名 YYYY为文件名)

 

权限列表

 

-rw-------   (600) 只有所有者才有读和写的权限
-rw-r--r-- (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限
-rwx------ (700) 只有所有者才有读,写,执行的权限
-rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限
-rwx--x--x (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限
-rw-rw-rw- (666) 每个人都有读写的权限
-rwxrwxrwx (777) 每个人都有读写和执行的权限

 

三、查看系统信息命令

 

# uname -a # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量资源
# free -m # 查看内存使用量和交换区使用量
# df -h # 查看各分区使用情况
# du -sh <目录名> # 查看指定目录的大小
# grep MemTotal /proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime # 查看系统运行时间、用户数、负载
# cat /proc/loadavg # 查看系统负载磁盘和分区
# mount | column -t # 查看挂接的分区状态
# fdisk -l # 查看所有分区
# swapon -s # 查看所有交换分区
# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE # 查看启动时IDE设备检测状况网络
# ifconfig # 查看所有网络接口的属性
# iptables -L # 查看防火墙设置
# route -n # 查看路由表
# netstat -lntp # 查看所有监听端口
# netstat -antp # 查看所有已经建立的连接
# netstat -s # 查看网络统计信息进程
# ps -ef # 查看所有进程
# top # 实时显示进程状态用户
# w # 查看活动用户
# id <用户名> # 查看指定用户信息
# last # 查看用户登录日志
# cut -d: -f1 /etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l # 查看当前用户的计划任务服务
# chkconfig –list # 列出所有系统服务
# chkconfig –list | grep on # 列出所有启动的系统服务程序
# rpm -qa # 查看所有安装的软件包

 

四、svn创建版本库配置

 

cd /home/svn  
mkdir ityizhan
svnadmin create ityizhan
cd ityizhan/conf
vi passwd

[users]
ituser = itpassword
vi svnserve.conf
password-db = passwd
authz-db = authz
vi authz

[groups]
ityizhan = ituser
[ityizhan:/]
* =
@ityizhan = rw

 

五、perl安装

 

1、在官方网站下载新版本的源码包:
http://www.perl.org/get.html,版本自己选择,我下载的是perl-5.12.2.tar.gz

 

2、解压/usr/local/src下的perl-5.12.2.tar.gz
# tar zxvf perl-5.12.2.tar.gz

 

3、建立文件目录,以供安装时使用

 

  # mkdir /usr/local/perl

 

4、设置源码
进入perl-5.12.2.tar.gz的解压目录,执行:

 

  # ./Configure --help

 

提示如下: 查看过后,使用这个指令来设置源码:

 

 # ./Configure -des -Dprefix=/usr/local/perl -Dusethreads -Uversiononly

 

5、编译

 

 # make  //这个过程会比较久,因为源码文件有那么大,我的这个有14M。
# make install

 

等待这个命令完成后,基本安装就完成了。

 

6、替换掉旧的perl命令

 

 # cd /usr/bin
# mv perl perl.old //把原来的perl更名为perl.old,弃用。
# ln ls /usr/local/perl/bin/perl /usr/bin/perl //做一个软链接,使用新的perl

 

7、完成
# perl -version使用这个命令查看perl的版本,可以看到,已经更新到5.12.2版本了.

 

六、glibc的安装

 

有些软件可能要求系统的Glibc高于某个版本才可以正常运行,如果您的Glibc低于要求的版本,为了运行这些软件,您就不得不升级您的Glibc了。比如:

 

qq: error while loading shared libraries: requires glibc 2.5 or later dynamic linker

 

您可以寻找已经编译好的rpm包或者使用源代码的方式升级Glibc。

 

RPM包方式安装glibc

 

RPM虽然比较容易安装,但就是依赖问题不好解决。给出一个下载地址:
http://mirrors.jtlnet.com/centos/5.5/os/i386/CentOS/

 

$ rpm –ivh glibc-2.5-49.i386.rpm

 

不过我用的是CentOS 4.8,貌似不能兼容:

 

error: Failed dependencies:
glibc-common = 2.5-49 is needed by glibc-2.5-49.i386
glibc > 2.3.4 conflicts with glibc-common-2.3.4-2.43.el4_8.3.i386

 

安装完成后,可以查看是否已升级:

 

$ ls -l /lib/libc.so.6
lrwxrwxrwx 1 root root 11 10-08 22:08 /lib/libc.so.6 -> libc-2.5.so

 

编译安装glibc

 

下载glibc

 

[root@localhost test]# pwd
/test
[root@localhost test]# wget http://ftp.gnu.org/gnu/glibc/glibc-2.9.tar.bz2

 

下载glibc-linuxthreads

 

[root@localhost test]# wget http://ftp.gnu.org/gnu/glibc/glibc-linuxthreads-2.5.tar.bz2

 

解压

 

[root@localhost test]# tar -jvxf glibc-2.9.tar.bz2
[root@localhost test]# cd glibc-2.9
[root@localhost glibc-2.9]# tar -jvxf ../glibc-linuxthreads-2.5.tar.bz2

 

配置

 

[root@localhost glibc-2.9]# cd ..
[root@localhost test]# export CFLAGS="-g -O2 -march=i486"
[root@localhost test]# mkdir glibc-build
[root@localhost test]# cd glibc-build
[root@localhost glibc-build]# ../glibc-2.9/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin

 

安装

 

[root@localhost glibc-build]# make
[root@localhost glibc-build]# make install

 

安装编译过程中需要注意三点:
1、要将glibc-linuxthreads解压到glibc目录下。
2、不能在glibc当前目录下运行configure。
3、否则如果出现错误:error "glibc cannot be compiled without optimization",需要加上优化开关:

 

[root@localhost test]# export CFLAGS="-g -O2 -march=i486"

 

七、CentOS修改DNS

 

1、CentOS修改DNS

 

修改对应网卡的DNS的配置文件

 

# vi /etc/resolv.conf

 

修改以下内容

 

nameserver 8.8.8.8 #google域名服务器
nameserver 8.8.4.4 #google域名服务器

 

2、CentOS修改网关

 

修改对应网卡的网关的配置文件

 

[root@centos]# vi /etc/sysconfig/network

 

修改以下内容

 

NETWORKING=yes(表示系统是否使用网络,一般设置为yes。如果设为no,则不能使用网络,而且很多系统服务程序将无法启动)
HOSTNAME=centos(设置本机的主机名,这里设置的主机名要和/etc/hosts中设置的主机名对应)
GATEWAY=192.168.1.1(设置本机连接的网关的IP地址。例如,网关为10.0.0.2)

 

3、CentOS修改IP地址

 

修改对应网卡的IP地址的配置文件

 

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

 

修改以下内容

 

DEVICE=eth0 #描述网卡对应的设备别名,例如ifcfg-eth0的文件中它为eth0
BOOTPROTO=static #设置网卡获得ip地址的方式,可能的选项为static,dhcp或bootp,分别对应静态指定的 ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址
BROADCAST=192.168.0.255 #对应的子网广播地址
HWADDR=00:07:E9:05:E8:B4 #对应的网卡物理地址
IPADDR=12.168.1.2 #如果设置网卡获得 ip地址的方式为静态指定,此字段就指定了网卡对应的ip地址
IPV6INIT=no
IPV6_AUTOCONF=no
NETMASK=255.255.255.0 #网卡对应的网络掩码
NETWORK=192.168.1.0 #网卡对应的网络地址
ONBOOT=yes #系统启动时是否设置此网络接口,设置为yes时,系统启动时激活此设备

 

4、重新启动网络配置

 

# service network restart

# /etc/init.d/network restart

 

修改 IP 地址,即时生效:

 

# ifconfig eth0 192.168.0.2 netmask 255.255.255.0

 

启动生效,修改:

 

/etc/sysconfig/network-scripts/ifcfg-eth0

 

修改网关Default Gateway,即时生效:

 

# route add default gw 192.168.0.1 dev eth0

 

启动生效,修改:

 

/etc/sysconfig/network

 

修改DNS,修改

 

/etc/resolv.conf

 

修改后可即时生效,启动同样有效。

 

修改host name,即时生效:

 

# hostname centos1

 

启动生效,修改:

 

/etc/sysconfig/network

 

手动更改centos为静态IP

 

1,先搜索了一下,得到以下解释:

 

IP IP地址
Netmark 子网掩码
Gateway 默认网关
HostName 主机名称
DomainName 域名
DNS DNS的IP

 

2,需要修改的文件常有

 

/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/resolv.conf
/etc/hosts

 

出现’connect:Network is unreachable error’问题,VirtualBox采用的是Bridged Adapter的方式连接。

 

通过修改

 

/etc/sysconfig/network-scripts/ifcfg-eth0

 

修改虚拟机的IP地址、network和netmask。
发现能ping同network和netmask,于是断定应该是虚拟机操作系统的路由配置问题,尝试直接修改系统文件:

 

/etc/sysconfig /network-scripts/route-eth0

 

添加
’defult via 192.168.0.1′(192.168.0.1是我的路由器的IP地址,可以根据自身情况修改)

到/etc/sysconfig/network-scripts/目录下发现压根儿没有route-eth0这个文件,于是自己创建了一个,将defult via 192.168.0.1添加到文件中。 运行/etc/init.d/network restart

重启network,一切ok!


前一篇:高性能Javascript--脚本的无阻塞加载策略
后一篇:iPhone手机上使用jQuery的die、live和on注册click事件无法点击

belonk

轻轻地我走了,正如我轻轻地来,我挥一挥衣袖,不带走一片云彩