zip파일을 다운로드 받아 압축해제하기가 권한에러가 나서 다운로드가 안됩니다.

김성은@Google의 이미지

안녕하세요.cent0S 5.5에서 jdk1.8 jboss 서버에서 특정 버튼 클릭시에 도면파일을 특정 윈도우서버로 전송시켜서 svg파일로 변환후 웹서버로 재전송하여 다운로드하는 프로세스중에 권한에러가 나면서 파일저장이 안되어 질문드립니다.

프로세스
1.cent0S 5.5에서 jdk1.8 jboss 서버에서 도면파일 선택
2.웹서버 페이지에서 httpconnection 프로토콜을 open
3.같은 네트웤망의 윈도우 서버의 톰캣9.0서버의 특정 페이지에서 도면변환 프로그램 호출
4.3에서 호출된 페이지에서 도면을 svg파일로 변환하는 프로그램 실행
5.4에서 변환된 파일을 열려져 있는 httpconnection의 response헤더에 담아 전송한다.
6.헤더의 파일명을 가지고 와서 파일변환시간을 파일명에 추가해서 파일명을 rename한다.
7.변경한 파일명으로 해당 도면변환 파일을 /data 폴더에 다운로드한다.
8.다운로드한 압축파일을 압축해제한다.
9.8의 파일을 뷰어로 보여준다.

이런 프로세스로 개발서버에서 정상적으로 테스트를 맞쳤습니다.
그런데 운영의 centos 5.0 서버에서 7번의 다운로드부터 권한 에러가 난다는데 확인은 못 해 봤지만 권한을 줬는데도 안된다고 합니다.

chmod 777의 권한을 줄 수 없다고 한다면 더 진행할 수 없는 걸까요?
권한을 주는 다른 방법이 있다면 어떤 방법이 있을까요..?
권한을 주면 된다는 검색은 많이 봤지만 그 방법은 안된다고 하면 혹시 웹프로그램상으로 해결 할 수 있는 방법이 있을까요?

너무 막연한 질문을 드립니다.
감사합니다.

김정균의 이미지

7.변경한 파일명으로 해당 도면변환 파일을 /data 폴더에 다운로드한다.

이 행동을 하는 proces 의 실행 account를 ps 등을 이용해서 확인 하세요.

chown ACCOUNT /data

이렇게 권한을 주면 될 겁니다. `ACCOUNT` 는 7번 행위를 하는 process의 실행 account 이름입니다.

김성은@Google의 이미지

감사합니다.
그런데 웹브라우저에서 호출하는 이벤트 중간에 연결된 헤더로 다운로드가 자동적으로 되는 건이라 별도로 어떻게 chown 과 같은 작업을 해야한다는 건지 잘 모르겠습니다...
어떻게 알아보면 될런지 제가 잘 이해하고 질문을 하는 건지도 잘 모르겠네요...
좀 더 상세한 답변을 부탁드려봅니다.

김정균의 이미지

그런데 웹브라우저에서 호출하는 이벤트 중간에 연결된 헤더로 다운로드가 자동적으로 되는 건이라 별도로 어떻게 chown 과 같은 작업을 해야한다는 건지 잘 모르겠습니다...

어찌 되었든.. 서버에 파일을 저장하는 주체는 웹서버 프로세스 입니다. (여기서는 tomcat 이 되겠죠.)
그러니, 서버에서 tomcat 을 구동하는 권한의 계정이 /data 에 쓰기 권한이 있으면 된다는 얘기가 됩니다.

예를 들면. tomcat 의 실행 권한은 ps 명령으로 확인이 가능 합니다.
tomact 을 구동하는 계정이 tomcat account 라면

[root@host ~]# chown tomcat /data

와 같이 서버에서 명령을 실행해 주라는 의미입니다.

다만, "chmod 777" 권한을 줄 수 없다는 의미는 무엇을 의미하는 건가요?
줄 수 있는 권한이 없다고 한다면 위의 action 역시 권한이 없을 것 같군요.

김성은@Google의 이미지

제가 서버 권한이 없고 보안상 쓰기 실행 권한을 폴더에 줄 수 없다는 의미로 chmod 777을 줄 수 없다는 말씀을 드린건데 애매하게 글을 썼네요.
서버 담당하시는 분께 chown tomcat /data를 요청드려 봐야겠네요.
빨리는 안되겠지만 피드백은 공유하겠습니다.
감사합니다.

박기영의 이미지

su - 하셨는지요?

김성은@Google의 이미지

su - 다른계정으로 전환한다는 의미 밖에 몰라서 질문드립니다.
문제는 접근 권한이 외주 개발자에겐 없고 유지보수 담당자가 작업 후 전달 받은 상황인지라 자세한 상황은 모르겠지만 그래도 운영을 하셨으니 계정 전환시엔 사용하셨을 거라 생각은 됩니다.
구체적으로 어떤 역할을 말씀하시는 걸까요?
담당자에게 어떤 걸 더 질문해야할지도 이제 잘 모르겠네요^^;;

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.