2018-08-28 12:33:55 sexyluna 阅读数 6842

在Linux下命令ls和dir都有打印目录内容的功能
名词解释

  • ls - list directy contents 是linux下的显示目录内容的命令.
  • DIR,是directory的缩写,是目录的意思.也是打开Linux目录内容的命令。

区别:
* ls 是Linux的原装命令,dir是原来dos的命令,Linux选择兼容了此个dos命令,所以dir和ls在功能上是一样的!只是由来有所区别!

演示

[ds@iz1zdpxadujj9vz text]$ dir
a.out  hellon  hellon.c
[ds@iz1zdpxadujj9vz text]$ ls
a.out  hellon  hellon.c
[ds@iz1zdpxadujj9vz text]$ ^C
[ds@iz1zdpxadujj9vz text]$ 

结论:
在Linux中,dir和ls有着相同的作用!

2018-02-03 22:14:22 satomic 阅读数 517

基础信息

  • windows远程共享目录为//101.100.129.159/public
  • windows用户名密码分别为adminpwd
  • 待挂载的文件夹已经创建,为/remote_dir

linux

直接使用的基础命令,先创建/remote_dir文件夹,然后使用cifs的格式挂载远程磁盘

mount -t cifs -o username=admin,password="pwd" //101.100.129.159/public /remote_dir

docker container

docker image本身是“死”的文件而已,其本身并不能挂载,Dockerfile中执行上面命令会报permission denied的错误。磁盘挂载只有在image被启动为container时候方可。且启动需要以–privileged方式启动,典型如下

docker run -d -p 5502:5002 \
--privileged \
kafkamonitor

启动后进入container执行上面的挂载命令即可。这个挂载操作是持久化,伴随container生命周期的。

注:docker、pod中挂载,远程共享路径似乎必须用ip地址,存在用域名挂载不了,而用ip挂载成功的案例。

k8s-pod

kubernetes部署pod后,再逐个手动挂载是不现实的,所以需要脚本自动执行。另外,pod中的container启动方式也要以privileged方式启动。与docker直接启动有细微区别,deployment脚本如下:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: kafkamonitor
spec:
  replicas: 1
  template:
    metadata:
      labels:
        k8s-app: kafkamonitor
    spec:
      containers:
      - name: kafkamonitor
        image: my-registry:5000/kafkamonitor
        securityContext:
          privileged: true
        command:
        - /bin/bash
        - start-service.sh

        ports:
        - containerPort: 5002

其中privileged: true为以privileged方式启动container。另外,启动后的需要做的操总统统汇总在start-service.sh脚本里。包含磁盘挂载与启动服务,如下:

mount -t cifs -o username=admin,password="pwd" //101.100.129.159/public /remote_dir  
python ./app/service.py  

至此。linux/container中如何挂载windows远程磁盘,讲解结束。

2007-09-21 17:43:00 AD_LI 阅读数 978

示例在linux如何获取文件信息.

#include <unistd.h>
#include 
<stdio.h>
#include 
<stdlib.h>
#include 
<string.h>
#include 
<errno.h>
#include 
<sys/types.h>
#include 
<sys/stat.h>
#include 
<dirent.h>
#include 
<time.h>

static int get_file_size_time(const char *file_path,const char *filename) {
    
struct stat statbuf;
    
if(stat(file_path,&statbuf) == -1{
        printf(
"Get stat on %s Error:%sn",
            filename,strerror(errno));
        
return -1;
    }

    
//获得目录
    if(S_ISDIR(statbuf.st_mode)) {
        printf(
"[%s]n",filename);
        
return 1;
    }

    
//获得文件
    if(S_ISREG(statbuf.st_mode)) {
        printf(
"%stsize:%ld bytestmodified at %s",
            filename,statbuf.st_size,
            ctime(
&statbuf.st_mtime));
    }

    
return 0;
}


int main(int argc,char **argv) {
    DIR 
*dirp;
    
struct dirent *direntp;
    
int stats;

    
if(argc != 2{
        printf(
"Usage:%s filnamena",argv[0]);
        exit(
1);
    }

    
    
//获得文件或错误
    if((stats = get_file_size_time(argv[1],argv[1]) == 0
        
|| (stats == -1)) exit(1);
    
//获得目录
    if((dirp = opendir(argv[1])) == NULL) {
        printf(
"Open Directory %s Error:%sn",argv[1],
            strerror(errno));
        exit(
1);
    }

    printf(
"Open Dir %s success.n",argv[1]);
    
while((direntp = readdir(dirp)) != NULL) {
        
int path_length = strlen(argv[1])
            
+ strlen(direntp->d_name) + 2;
        
char *file_path = (char*)malloc(path_length * sizeof(char));
        
if(file_path == NULL) {
            fprintf(stderr,
"Not enough memory.");
            exit(
1);
        }

        strcpy(file_path,argv[
1]);
        
if(file_path[strlen(file_path) - 1!= '/')
            strcat(file_path,
"/");
        strcat(file_path,direntp
->d_name);
        
if(get_file_size_time(file_path,direntp->d_name) == -1{
            free(file_path);
            
break;
        }

        free(file_path);
    }

    closedir(dirp);
    
    
return 0;
}

 

2016-09-28 16:20:55 mvpboss1004 阅读数 1789

假如在10.1.18.43:8088上搭建pypi-server

1.后台启动pypi-server

Windows:start /b pypi-server -p 8088 packages_dir
Linux:nohup pypi-server -p 8088 packages_dir &

2.客户端如果使用easy_install:
easy_install -i http://10.1.18.43:8088/simple/ PACKAGE

3.客户端使用pip

vim ~/.pip/pip.conf,添加
[global]
extra-index-url = http://10.1.18.43:8080/simple/
trusted-host = 10.1.18.43

4.下载python包(包括依赖包):
pip download PACKAGE --no-binary :all:
需要搭建pypi-server的原因多是因为设备在内网,无法使用pip直接从公网安装,因此可以使用此命令从办公电脑上下载完整的pyhton包再上传到内网pypi-server。


Linux下struct dirent,DIR,struct stat使用例子

博文 来自: xinxing__8185
没有更多推荐了,返回首页