FTP to Mainfrome system

Hi There,
I have request to FTP some files to main frame systems from a UNIX file system, i tried regular ftp 'snpsftp.py' which comes with ODI, did not help so i customized it to FTP to a main frame system.
But as you know in main frame systems the directory structure is different to UNIX file systems, the customised one id FTPing to root but to the exact directory path.
Any help would be appreciated .
eg: /abc/xyx/pqr/<filename>
abc.xyz.pqr.<filename>
Regards,
Naveen

Hi Samay,
You need to setup RFC Destination (SM59). If you don't have authorization, please ask BASIS to help you. Otherwise please follow this steps.
When you define an RFC server program (usually an executable on a server) as RFC destination, you choose either 'START' or 'Registration'. 'Start' means the SAP application sending anything to this destination will trigger this program, while registration means this program will already be running (like a service) and have already registered itself to SAP server.
Once you have defined your RFC destination as of type 'registration', you should execute this exe with the syntax
"pgmname.exe -a<ProgramID>
-g<Gateway Host>
-x<Gateway Service>
" where programID shall be the same as the RFC destination name (I think) and gateway host and service is from the app server where you are registering this destination,
to have it started as a service and registered as the destination to the SAP server (which you can afterwards see in SMGW txn).
If you want this program to be started when something is sent to this RFC destination from SAP, make it of type 'START'.
Hope this will help.
Regards,
Ferry Lianto
Please reward points if helpful.

Similar Messages

  • Should FTP on the system be ENABLED for SFTP Adapter to work from BPEL Code

    Hi,
    I am trying to SFTP files from server1 to server2. I am getting the below fault message,
    faultName: {{http://schemas.oracle.com/bpel/extension}bindingFault} messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage} parts: {{ summary=<summary>Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'Put' failed due to: Unable to read response. Unable to read response. Unable to read response from host: earth.as.local Please make sure that the ftp server settings are correct and that the ftp server is up. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution. </summary> ,detail=<detail>Read timed out</detail> ,code=<code>null</code>}
    I have configured FTP Adapter JNDI name and other details correctly,
    hostname, username, password, usesftp(true),port(22).
    On the server2, the FTP was disabled and was getting the aforesaid error.
    But when we enabled FTP on server2, the SFTP started working fine with the same configurations of JNDI.
    So, to conclude, Should FTP on the system be ENABLED for SFTP Adapter to work from SOA BPEL Code?
    Please give your valuable comments and suggestions.
    Thanks & Regards,
    Nagaraj Ganapa

    Yes, if you are trying to write a file using SFTP/FTP to any machine, a SFTP/FTP server should be running on that machine and there should be a process listening on the correct port(22/21). This is true for any other application as well and not just for Oracle BPEL. You can not send a file to a server using SFTP/FTP when the FTP/SFTP process is not running on that server.

  • How to do a FTP from one system to another

    Hi,
    I have a program which creates a file from the master data in one system (Logistics), and I have another program in   another system (HR) which writes the contents from this file to a custom table.
    I want to the avoid manual movement of the file among the systems. One option would be to create a common location on the file system which is accessible from both these systems.
    But, could someone help me on doing a FTP of this file to HR system.
    Appreciate your inputs.
    Thanks
    M

    Mark,
    Check if this can give you  any lead.
    data:host(64) TYPE c VALUE 'ip address here',
           dest LIKE rfcdes-rfcdest VALUE 'ZFTP',
    User and password can be harcoded in the program
    *CONNECT TO SERVER
      CALL FUNCTION 'FTP_CONNECT'
        EXPORTING
          user              = user
          password       = pwd
          host              = host
          rfc_destination = dest
        IMPORTING
          handle          = hdl
        EXCEPTIONS
          not_connected   = 1
          OTHERS          = 2.
    K.Kiran.

  • FTP to external system

    Hi,
    I am try to establish a connection to the external system. I am using the FM "FTP_CONNECT" for connection in my ABAP program. But somehow I am not able to connect.
    I am getting an error message saying "Attempting to connect to (HOSTname) fail".
    I have checked user authorization and it seems everything is fine.
    Do I need to pass gateway parameters in this FM as this is the external system (They are optional)? Currently I am not passing anything in all three gateway information.
    CALL FUNCTION 'FTP_CONNECT'
         EXPORTING USER = USER
                   PWD = PASSWORD
                   ACCT = ACCOUNT HOST = HOST
                   TRACE = FTP_TRACE
                   GUSER = ''
                   GPWD = ''
                   GHOST = ''
         IMPORTING HANDLE = HANDLE
                   ERROR = CERROR
         EXCEPTIONS SYSTEM_FAILURE = 1
                    COMMUNICATION_FAILURE = 2.
    Appreciate your early response.
    Thanks,
    Samay

    Hi Samay,
    You need to setup RFC Destination (SM59). If you don't have authorization, please ask BASIS to help you. Otherwise please follow this steps.
    When you define an RFC server program (usually an executable on a server) as RFC destination, you choose either 'START' or 'Registration'. 'Start' means the SAP application sending anything to this destination will trigger this program, while registration means this program will already be running (like a service) and have already registered itself to SAP server.
    Once you have defined your RFC destination as of type 'registration', you should execute this exe with the syntax
    "pgmname.exe -a<ProgramID>
    -g<Gateway Host>
    -x<Gateway Service>
    " where programID shall be the same as the RFC destination name (I think) and gateway host and service is from the app server where you are registering this destination,
    to have it started as a service and registered as the destination to the SAP server (which you can afterwards see in SMGW txn).
    If you want this program to be started when something is sent to this RFC destination from SAP, make it of type 'START'.
    Hope this will help.
    Regards,
    Ferry Lianto
    Please reward points if helpful.

  • Ftp permissions in system preferences vs of the directories it accesses

    I'm trying to setup a read only ftp account to access a directory on one of my external drives.
    The external drive doesn't have permissions enabled.
    So:
    - I create an account to login to
    - in its home directory, I create a link to the external drive (using the command line to create it as a soft link). Accidentally, I leave this as read-write by the owner, though read by others
    - in the ftp setup panel I enable ftp for this user - but set it to read only
    I then find that ftp allows this user to write to that directory.
    What I'm at a loss then is to understand what the point of the permissions setup in SystemsPreferences is. I'd expected ftp to use the most restrictive of either those settings and of the file/directory permissions involved (so that its easy to make an account read only for remote access without stopping it being used for read-write when used locally without involving ftp).
    How should this work? Any help gratefully received.

    Good day!
    As you claim it is Flash Player that is changing permissions on your computer the »Photoshop for Beginners« Forum may not be the ideal place to post regarding the issue. You could also try
    http://forums.adobe.com/community/flashplayer
    I find this offensive, intrusive and illegal.
    Offensivenss and intrusiveness notwitstanding are you sure there is nothing about this in the terms of use/license agreement/whatever you or your husband accepted both for this installation and the OS in general? (Please note that I am not an Adobe employee, but I suspect Adobe has sufficient legal counsel not to open themselves to claims of misconduct easily.)
    Regards,
    Pfaffenbichler

  • Download file from ftp server

    Can I download files from an ftp server by simply using the ip address or https:// url?    I've only gotten this to work by using the "ftp//:" address in previous projects and I'm not getting this to work in many different attempts. 
    Here is one...
     # FTP Config
    $FTPHost =
    "10.10.10.5"
    $Username =
    "admin"
    $Password =
    "12345678"
    $FTPFile =
    "test.log"
    # FTP Log File Url
    $FTPFileUrl =
    "ftp://" +
    $FTPHost +
    "/" +
    $FTPFile
    # Create FTP Connection
    $FTPRequest =
    [System.Net.FtpWebRequest]::Create("$FTPFileUrl")
    $FTPRequest.Credentials
    = New-Object System.Net.NetworkCredential($Username,
    $Password)
    $FTPRequest.Method =
    [System.Net.WebRequestMethods+Ftp]::DownloadFile
    $FTPRequest.UsePassive
    = $false
    $FTPRequest.UseBinary
    = $true
    $FTPRequest.KeepAlive
    = $false
    # Get FTP File
    $FTPResponse =
    $FTPRequest.GetResponse()
    $ResponseStream =
    $FTPResponse.GetResponseStream()
    $FTPReader =
    New-Object System.IO.Streamreader
    -ArgumentList $ResponseStream
    do
    Write-Host
    $FTPReader.ReadLine()
    while ($FTPReader.ReadLine()
    -ne $null)
    $FTPReader.Close()
    # Create FTP Connection
    $FTPRequest =
    [System.Net.FtpWebRequest]::Create("$FTPFileUrl")
    $FTPRequest.Credentials
    = New-Object System.Net.NetworkCredential($Username,
    $Password)
    $FTPRequest.Method =
    [System.Net.WebRequestMethods+Ftp]::DownloadFile
    $FTPRequest.UsePassive
    = $false
    $FTPRequest.UseBinary
    = $true
    $FTPRequest.KeepAlive
    = $false
    # Get FTP File
    $FTPResponse =
    $FTPRequest.GetResponse()
    $ResponseStream =
    $FTPResponse.GetResponseStream()
    $FTPReader =
    New-Object System.IO.Streamreader
    -ArgumentList $ResponseStream
    do
    Write-Host
    $FTPReader.ReadLine()
    while ($FTPReader.ReadLine()
    -ne $null)
    $FTPReader.Close()

    Hi!
    You don't need to specifically use an IP address. E.g can use
    $FTPHost = "myrandomserver.mycompany.com"
    $Username = "admin"
    $Password = "12345678"
    $FTPFile = "test.log"
    # FTP Log File Url
    $FTPFileUrl = "ftp://" + $FTPHost + "/" + $FTPFile

  • PI 7.30: OS command on AIX to archive files on FTP does not work

    Dear experts,
    Our PI system runs on an AIX server.
    I have a scenario PI --> FTP. I also need to archive files in a seperate folder on the FTP.
    I have been following thread:
    Read or Write File On FTP server based on another file existence.
    After file processing in the Audit Log in RWB I among others I get the information:
    Execute OS command "sh /usr/sap/SYS/flex/batches/archive.sh file.zip /ftpfolder/file.zip"
    It seems it is working properly.
    The file itself gets processed to the "ftpfolder". But in the archive folder I do not get a copy of that file.
    My script looks like this:
    #!/bin/ksh
    ftp -n -v <<%%EOF%%
    open ftpserver
    user myuser mypassword
    prompt
    asci
    cd archivefolder
    mput $2
    bye
    %%EOF%%
    In the file receiver I have "Run OS command after message processing":
    "sh /usr/sap/SYS/flex/batches/archive.sh %f %F"
    %F stands for the complete path, right? So if I say "mput $2" in my script it should use %F.
    Could you please help me out here. I really don't know what the problem could be.
    Thank you and best regards,
    Peter

    hi Peter,
    >>>I have a scenario PI --> FTP
    but FTP does not support OS command as far as I remember
    correction:
    "Note that for the File Adapter transport protocol "FTP", the operating system command is NOT executed on the FTP server, but on the server hosting the Adapter Engine."
    please check for details:
    Note 841704 - XI File & JDBC Adapter: Operating system command
    Regards,
    Michal Krawczyk
    Edited by: Michal_Krawczyk_PIXI on Feb 3, 2012 3:38 PM

  • OS commands in FTP adapter

    Hi Experts,
    we are trying to use the OS command in the sender FTP adapter to compress the huge text files(approx 2 GB) before we pick the file to avoid the server issues.
    for which we are using the OS command,
    ssh -n -l user targetserver "cd /tagetdirectory; compress ExportFile.xml;mv ExportFile.xml.Z ExportFile.xml"
    The above is a single command supplied by the Basis team.
    the above command makes the connection to the target server with  the user ( password not required)and then compresses the file.
    I used the command in the sender FTP adapter as is.
    But the message processing made the XI server unavailable  and the process got failed due to HTTP_TRANSMISSION_ERROR
    Please suggest on the OS command, Is it a right command ? or do I need to add anything to it, to make it work.
    Please note that for the File Adapter transport protocol "FTP", the operating system command is NOT
    executed on the FTP server, but on the server hosting the Adapter Engine ( please refer to
    SAP note: 841704).
    Thanks,
    MK

    Thanks Michal,
    For "FTP" the command will be executed on the but on the server hosting the Adapter Engine, right?
    ssh -n -l user targetserver "cd /targetdirectory; compress ExportFile.xml;mv ExportFile.xml.Z ExportFile.xml"
    the command above is opening a secure channel from the XI host to the FTP host. We have a trusted relationship set up between the xiadm and ftpadm users which will allow this to occur without a password. and then it compress the file.
    Please suggest further to resolve the issue.
    I really appreciate you help.
    Thanks,
    MK

  • Sending multiple IDocs (all in single file) to FTP via XI

    Hi All,
    We have a requirement as below where we are looking for various feasible solutions.
    The requirement is to collect multiple IDocs in ERP (2000-5000 in number) per day (either Flat File or XML) and needs to be sent as a single File (which has all these IDocs) to FTP Server via XI.
    BPM is not allowed to use and we are working on PI 7.0, so IDoc packaging is also not applicable. There is no mapping required, we need to just route them to FTP from ERP System.
    Looking forward for various solutions.
    Regards,
    N. Jayanth Kumar.

    Hi,
         Using the XML file port at R/3 to collect the Idocs would be a feasible solution. Also, as Sunil as already pointed out, you can configure this as a pass through interface, which will improve your overall processing time.
    Another solution can be to pass the Idocs to PI and then use the append mode in the receiver file adapter to collect the days idoc into a single file.
    To append only idocs for a particular day, try using dynamic filename, where file would have the date in it. This way, only Idocs for a particular day would be appended.
    Regards

  • OS Command feature in FTP receiver

    HI Experts,
    This is regarding the Command line feature available in FTP channels.
    Scenario : File to File
    1. Is it possible to create a copy of the output file onto another directory in the target FTP server using this feature? Or is this not possible as the SAP note 841704 mentions "for the File Adapter transport protocol "FTP", the operating system command is NOT executed on the FTP server, but on the server hosting the Adapter Engine." If i want a copy onto another directory in the remote server, what are the steps to be followed?
    ( have gone through Michals blog /people/michal.krawczyk2/blog/2007/02/08/xipi-command-line-sample-functions but was not able to try it as i dont have permisstion to tcode SXDA_TOOLS - i believe the batch file should be uploaded to al11 using this - correct me if i am wrong here!)
    2.  Can we give command directly onto the command line text box (without mentioning batch file path) ? I tried using the Transport protocol as NFS and routed the file to a local directory /usr/sap/tmp with the command line having a simple command as mv %f filechange.txt. This is shown as executed successfully in CC monitoring but result is not seen.
    Would like to know the possibilities of this feature- thanks in advance!

    Hi Diya,
    also in text box use uppercase F  like: %F
    Please use $1 instead of %1
    cp $1 /usr/sap/tmp/newfile.txt
    cp file1 file2  copy file1 to a file called file2
    cp file1 /tmp  copy file1 to the /tmp directory
    cp file1 ~smith  copy file1 to the home directory of "smith"
    cp * /tmp  copy everything in the directory to the /tmp directory
    refer this
    http://help.sap.com/saphelp_nw04/helpdata/en/e3/94007075cae04f930cc4c034e411e1/content.htm
    When the operating system command is called, the file name currently being processed can be specified with the following placeholders:
    u25CF        %f (file name)
    u25CF        %F(absolute file name including path)

  • Sender FTP error

    hi,
    I use SAP PI 7.0 SP18
    i have configured a senderFile Adapter with FTP.  when i run the scenario i get the below error:
    An error occurred while connecting to the FTP server 'xx.x.xx.xxx:990'. The FTP server returned the following error message: 'com.sap.aii.adapter.file.ftp.FTPEx: The control connection to the FTP server xx.x.xx.xxx timed out while reading the server reply.'. For details, contact your FTP server vendor.
    i can ping the FTP server from PI server, the port is also open. FTP server is  running.
    further when i searched on SDN i found the below link:
    FTP - file content conversion error
    i have also referred SAP help for FILE/FTP adapter (sender) configuration.
    futhermore i have maintained the following parameters as given below::
    connection security - 'None'
    transfer mode - 'Text'
    any other pointers to solve my issue? please do suggest if i am missing something.
    regards
    ridhima

    With your Basis Team, check if you can connect in FTP from your system to FTP Server destination.
    FTP <desthostname>
    However, port 990 seem an FTPS port, You connection need to be an FTPS connection? If yes, this could be a Certificate issue.

  • Mainframe Integration using File Adapter (FTP Mode):: ftp commands

    Hi,
    We are trying to integrate with Mainframe system using File Adapter. (FTP mode). We are able to write the file to Mainframe system but not able to format it properly. We had to provide FTP parameter,  <b>ftp.quote site recfm=fb lrecl=150</b>
    As per SAP Note 801926 :: XI 3.0 File Adapter: Additional Parameters, the only parameter that can be used is <b>ftp.timeout</b>. Has anyone tried out using other FTP parameters? (like ftp.quote)
    Any help is grealy appreciated.
    Regards,
    Siva Maranani

    I am looking at running some OS commands especially the QUOTE SITE FILENAME, and found this OSS note:
    https://service.sap.com/sap/support/notes/841704
    In this note it says...
    "Note that for the File Adapter transport protocol "FTP", the operating system command is NOT executed on the FTP server, but on the server hosting the Adapter Engine."

  • File to File-CC 'error com.sap.aii.adapter.file.ftp.FTPEx: 550 Access deni'

    Hi friend,
    I am doing file to file scenario in which i wan to move one file from input folder to output folder.
    I had created as FTP on one system that i am able to access and have full authorization to read and write.
    and created that two input and output folder in it,n kept an xml file in input folder.
    When i see sender communication channel in RWB it is showing error, "com.sap.aii.adapter.file.ftp.FTPEx: 550 Access denied'
    I checked password,it correct also I tried to test it using Anonymous Login, but the same things.
    SO i am not sure where i had done mistake.
    Plz give ur suggestions.
    Thanks

    Hi,
    Please Check below few steps:
    Check if the username and the Password is created to write the file in the desired directory.
    Check the username is provided the authorization to write the file in the desired directory. ... IS Guys will help you..
    Confirm if the directory created have all the authorization to write the file.
    ls - lrt
    chmod 777 Directory Name
    all the authorization will then be provided
    Confirm if the directory is created with the root id then it there might be some problem with the user name u r trying to create..
    Hope this will help.
    Assign points for helpful answer..
    Thanks
    JAY.

  • Pdf file transfer using ftp in java

    Hi,
    I am tried to get a pdf file from ftp. I am using the following code. This code works fine with .txt files but not with .pdf files. The pdf file generated is empty.
    import java.awt.Desktop;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import org.apache.commons.net.ftp.FTPClient;
    public class FTPConn {
           public static void main(String[] args) throws FileNotFoundException {
            FTPClient f = new FTPClient();
            try {
                f.connect(ip);
                f.login("username", "password");
                File dir = new File("dir");
                dir.mkdir();
                File myFile = new File(dir, "myfile19.pdf");
                myFile.createNewFile();
                FileOutputStream fout = new FileOutputStream(myFile);
                String content= fout.toString();
                boolean success = f.retrieveFile("/location on ftp/ftp.pdf", fout);
                System.out.println("Content :"+content);
                if (success) {
                    fout.flush();
                    fout.close();
                } else {
                    System.out.println("Reterive failure");
                Desktop d = Desktop.getDesktop();
                d.open(myFile);
            }catch(Exception e){
                e.printStackTrace();

    Hi,
    I am tried to get a pdf file from ftp. I am using the following code. This code works fine with .txt files but not with .pdf files. The pdf file generated is empty.
    import java.awt.Desktop;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import org.apache.commons.net.ftp.FTPClient;
    public class FTPConn {
           public static void main(String[] args) throws FileNotFoundException {
            FTPClient f = new FTPClient();
            try {
                f.connect(ip);
                f.login("username", "password");
                File dir = new File("dir");
                dir.mkdir();
                File myFile = new File(dir, "myfile19.pdf");
                myFile.createNewFile();
                FileOutputStream fout = new FileOutputStream(myFile);
                String content= fout.toString();
                boolean success = f.retrieveFile("/location on ftp/ftp.pdf", fout);
                System.out.println("Content :"+content);
                if (success) {
                    fout.flush();
                    fout.close();
                } else {
                    System.out.println("Reterive failure");
                Desktop d = Desktop.getDesktop();
                d.open(myFile);
            }catch(Exception e){
                e.printStackTrace();

  • How to know the size in byte of a file before importing it with ftp

    hello
    i have a file in witch there is the pathe of many file
    i reade these path and i use ftp to get these file
    my problem is that i want to display a progress bar during the getting of file
    so dont no how i can know the size of these file to put a maximum to the progress bar

    package cni;
    import javax.swing.*;
    import sun.net.ftp.*;
    import sun.net.ftp.FtpClient.*;
    import java.io.*;
    import java.lang.*;
    import sun.net.TelnetInputStream;
    import java.util.*;
    import java.lang.String;
    public class FTPclients
    //Variables
    private static String server = "faycal";
    private static int port = 21;
    private static String user = "anonymous";
    private static String passwd = "[email protected]";
    public String toString(JTextField tx)
    String txt;
    txt= new String(tx.getText());
    return txt;
    public static void main(String args[])
    ConnFile cf = new ConnFile("d:\\cni\\adresse.txt");
    FTPclients fc = new FTPclients();
    ConnFile cfbis = new ConnFile("d:\\cni\\chemin.txt");
    try
    //String s=cf.lectureid();
    String s;
    while((s=cf.br.readLine())!=null)
    String s1=s.substring(0,s.lastIndexOf("\\"));
    String s2=s.substring(s.lastIndexOf("\\")+1);
    System.out.println(s1);
    System.out.println(s2);
    //ajout du double anti slash a la chaine s1
    String name =s1;
    StringBuffer sb = new StringBuffer(s1.length()+10);
    for(int index=0; index<s1.length();index++)
    char c = s1.charAt(index);
    sb.append(c);
    if(c=='\\')
    sb.append('\\');
    System.out.println(s1);
    s1= sb.toString();
    System.out.println(s1);
    //creation d un client ftp
    FtpClient client = new FtpClient();
    System.out.println("gggggggggggggalut");
    client.openServer(server,port);
    System.out.println("xxxxxxxxxxxxalut");
    client.login(user, passwd);
    client.binary();
    client.cd(s1);
    System.out.println("la taille de "+s1+" est "+taille+" octets");
    System.out.println("ssssssssssssalut");
    System.out.println(client.welcomeMsg);
    System.out.println("buhhhhhhhhhhhhh");
    //copie du chemin saisi par l utilisateur
    String chemre;
    cfbis = new ConnFile("d:\\cni\\chemin.txt");
    String chemvir = cfbis.lectureid();
    System.out.println(chemvir);
    if (chemvir==null)
    chemre="d:\\";
    System.out.println(chemre);
    else
    chemre=chemvir;
    System.out.println(chemre);
    String chem=chemre+"\\"+s2;
    System.out.println(chem);
    //pour creer le nouveau fichier
    TelnetInputStream fich = client.get(s2);
    FileOutputStream out = new FileOutputStream(chem);
    //pour ecrire dans le nouveau fichier
    int i;
    while(true)
    i = fich.read();
    if(i == -1)
    { break; }
    out.write((byte)i);
    System.out.println("bahhhhhhhhhhhh");
    //fermeture du serveur ftp
    client.closeServer();
    System.out.println("ok");
    }//fin while
    String chemvir = cfbis.lectureid();
    }//fin du try
    catch(IOException e)
    System.out.println(e);
    }//fin du main
    }// fin de la classe
    do you know how

Maybe you are looking for

  • Schedule line in delivery

    Hi friends, I have  a scenario where the client has created the sale order say on 22.2.2008 ,but did not get the confirmed quantities on that day.Now assume the quantity receieved is on 22.3.2008 during availibilty check. Now the client wants to do a

  • Oracle 10g BLOB data into Postgresql 8.2

    Any Docs on Oracle 10g BLOB importing into Postgresql 8.2. Thanks in Advance. Harish Kumar R

  • NativeDragManager

    Hello, I just wondered if there is a way using AIR to get the target's path on the native filesystem from a drag & drop operation (Like if you move a file out of your app right on the desktop using d&d). As far as I can see, the NativeDragManager doe

  • Backup disk not available - Time Machine

    I have an external disk attached to my Airport Extreme through a usb hub and also my printer. Since the upgrade to Yosemite I get constant warnings from TimeMachine "Backup Disk Not Available". In order to make backups I use to

  • Feet falling of MacBook Pro

    where do you buy diy feet kit for macbookpro