###权限相关
修改文件权限chmod 755 logs
###磁盘空间相关
df、du 我们平时可能会查看linux的某个磁盘分区已经使用了多少空间,使用率是多少,我们可以使用df命令查看。有时我们需要知道某个目录多大,可以使用du命令查看。
使用“df -k”命令,以KB为单位显示磁盘使用量和占用率。 使用“df -m”命令,以M为单位显示磁盘使用量和占用率。 使用“df --help”命令,查看更多df命令的使用方法。 使用“du -k /home”命令,列出home目录下所有文件或目录占用的大小,以KB作为计量单位。 使用“du -ck /home”命令,列出home目录下所有文件或目录占用的大小,以KB作为计量单位。以及统计出当前home目录占用的总大小。 使用“du --help”命令,查看du命令的详细使用方法。
du -sh
du -h ftp
查看指定文件大小
du -h ./package/compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
查看指定文件夹大小
du -hs ftp
df -h
df -hl
(3)删除日志文件 今天一看,公司的linux 服务器没放什么东西,但是已经使用了50%了,一查看原来是日志文件太大了,于是就手动删除了, 这个比较快
sudo /dev/null > /var/log/**.log
下面这个可以推荐使用
sudo find /var/log/ -type f -mtime +30 -exec rm -f {} \;
删除30天之前的旧文件
###重启
shutdown -r now
reboot
###nginx相关
nginx
nginx -s stop
ngixn -s reload
###apache相关
如果apache安装成为linux的服务的话,可以用以下命令操作:
service httpd start 启动
service httpd restart 重新启动
service httpd stop 停止服务
找到安装目录
httpd -k stop
###搜索文件
搜索文件的命令为”find“;”locate“;”whereis“;”which“;”type“
find / -name 'interfaces'
locate interfaces
whereis grep
which grep
###ssh相关
ssh root@192.168.0.1
###scp相关
scp /home/mjm/hello.text root@192.168.0.1:
scp -r /home/mjm root@192.168.0.1:temp
###nohup(no hang up) nohup实现不挂断地运行命令 比如:
nohup python logdataCollection.py >>/logs/log_cronjob.txt 2>&1 &
该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( no hang up)。
查看Linux机器是32位还是64位的方法:
file /sbin/init 或者 file /bin/ls
uname -a
x86_64表示64位机器
i686表示32位机器
getconf LONG_BIT 64 32
####文件,文件夹相关(ls)
1,按照时间升序
命令:ls -lrt 详细解释:
-l use a long listing format 以长列表方式显示(详细信息方式) -t sort by modification time 按修改时间排序(最新的在最前面) -r reverse order while sorting (反序) 2,按照时间降序(最新修改的排在前面)
命令:ls -lt 详细解释:
-l use a long listing format 以长列表方式显示(详细信息方式) -t sort by modification time 按修改时间排序(最新的在最前面)
linux 如何计算显示出的条目数、
wc -l
ls -l | wc -l
Linux下统计当前文件夹下的文件个数、目录个数
- 统计当前文件夹下文件的个数
ls -l |grep "^-"|wc -l
- 统计当前文件夹下目录的个数
ls -l |grep "^d"|wc -l
统计当前文件夹下文件的个数,包括子文件夹里的
ls -lR|grep "^-"|wc -l
- 统计文件夹下目录的个数,包括子文件夹里的
ls -lR|grep "^d"|wc -l
说明: 复制代码 代码如下:
ls -l
长列表输出当前文件夹下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)
复制代码 代码如下:
grep "^-"
这里将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d 复制代码 代码如下:
wc -l
统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于一行信息对应一个文件,所以也就是文件的个数。
####新增用户
adduser apple 这个有的文章说创建用户的时候是有提醒的,但是在centos6.7中并没有。 useradd
(1)只删除用户: userdel apple 这个并不会删除/home/apple文件夹 (2)连同用户主目录一块删除: userdel -r apple 把新增用户并加入root权限组 adduser centos -g root
将 newuser2 添加到组root中 # usermod -G root newuser2 修改 newuser 的用户名为 newuser1 # usermod -l newuser1 newuser 锁定账号 newuser1 # usermod -L newuser1 解除对 newuser1 的锁定 # usermod -U newuser1
usermod -g 123 root 此命令将用户123的用户组改为root, usermod 选项 用户名常用的选项包括-c,-d,-m,-g,-G,-s,-u,-o等,这些选项的意义与useradd命令中的一样,可以为用户指定新的资源值。另外,有些系统可以使用如下选项:代码: -l 新用户名这个选项指定一个新的账号,即将原来的用户名改为新的用户名。更多详细文档你去os.51CTO.com/linux/找啦! 很全面的!!
修改密码 passwd apple
添加管理员权限
方法一:修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉
Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
然后修改用户,使其属于root组(wheel),命令如下:
#usermod -g root apple
方法二:修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:
Allow root to run any commands anywhere
root ALL=(ALL) ALL tommy ALL=(ALL) ALL
方法三:修改 /etc/passwd 文件,找到如下行,把用户ID修改为 0 ,如下所示: tommy:x:0:33:tommy:/data/webroot:/bin/bash
这篇文章比较全 linux下添加用户并赋予root权限
####生成ssh key ssh-keygen -t rsa -C "your_email@example.com"
cat test.put >> ~/.ssh/authorized_keys
cat sshkeys/miaojiangmin >> .ssh/authorized_keys
然后输入 生成的文件名和密码
####初始化EHcache CacheManager时报java.net.UnknownHostException 今天在linux,版本为centos 6.7的版本,启动tomcat报错了。 java.net.UnknownHostException:
查看linux的
hostname
hostname -i
vi /etc/hosts
把用hostname位写入到hosts中
####unsupported major.minor version 52.0
这个报错是因为jdk的版本问题。在linux上,是默认装openJdk1.7的。而我本地编译的代码是jdk8的。 这次我想装openJdk8的版本。 于是我就去百度了一下。
CentOS 6.X 和 7.X 自带有OpenJDK runtime environment (openjdk)。它是一个在Linux上实现开源的Java 平台。
但是因为要部署tomcat,所以需要jdk环境。
su -c "yum install java-1.7.0-openjdk java-1.7.0-openjdk-devel" 这个是我在网上找到的, su -c "yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel"
然后配置环境变量
vi /etc/profile 将下面的三行粘贴到 /etc/profile 中: export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.51.x86_64 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin
在输入以下命令,来确认这三个变量是否设成了我们想要的:
echo $JAVA_HOME
echo $CLASSPATH
echo $PATH
也可以用这种方式 echo "export JAVA_HOME=/usr/lib/jvm/java" >> /etc/profile
这样我们就设置好了JDK,在输入source /etc/profile 就可以生效了.
在ubuntu环境中 $sudo apt-get install openjdk-7-jdk
####防火墙
service iptables off chkconfig iptables off
端口占用
错误提示: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use) 有人说是端口占用,
fuser -n tcp 80结果为空。 ps aux |grep nginx也为空
netstat -ltunp
####DNS 如果ping域名的时候出现ping:unknown host xxx.xxx 但是ping IP地址的时候可以通的话 可知是dns服务器没有配置好,
查看一下配置文件/etc/resolv.conf,里面是否有nameserver xxx.xxx.xxx.xxx,比如使用dns服务器 nameserver 8.8.8.8,如果有,修改一个可用的dns服务器,如8.8.8.8或者4.4.4.4,保存退出即可!
linux下出现ping:unknown host www.baidu.com问题时的解决办法——ubuntu下局域网络的配置
如何在Linux中查看占用空间大文件和大文件夹
经常我们需要查看以下Linux系统中占用空间较大的文件和文件夹,将一些不再使用的大文件和大文件夹删除,以免造成空间的浪费,下面我们展示如何如何查找大文件和大文件夹。
1.如何查找大文件
通过下面的命令我们可以查看当前目录下那些文件超过我们设定的阀值。
find -type f -size +100M -print0 | xargs -0 du -h,其中100M就是我们设定的阀值,我们可以根据我们的需求来调整这个阀值。
如果我们想对结果做一个排序输出,我们可以运行下面的命令:find -type f -size +100M
-print0 | xargs -0 du -h | sort -nr
2.如何查找大文件夹
通过下面的命令,我们可以查看当前目录下文件夹的大小
du -h --max-depth=1,其中--max-depth是指文件夹的层级,例如1就是指当前目录下的文件夹,如果我们想对输出结果排序,可以使用下面的命令:du -h --max-depth=1 | sort -nr,如果我们想对上面的结果只输出前n个结果,可以使用下面的命令:du -h --max-depth=1 | sort -nr | head -n ```