루트 액세스 없이 Midnight Commander 설치

루트 액세스 없이 Midnight Commander 설치

루트나 Sudo가 아닌 계정을 사용하여 RedHat 시스템에 액세스했습니다. Midnight Commander(mc)를 설치하고 싶은데 yum에는 루트 권한이 필요합니다. RPM 파일만 사용하여 재구축하지 않고 로컬 홈에 mc를 어떻게 설치할 수 있습니까?

답변1

이를 수행하고 루트 액세스 없이 완벽하게 작동하는 Midnight Commander를 얻는 것이 가능합니다. 다음 단계로 구성됩니다.

  1. 필요한 버전의 RPM 파일을 가져옵니다.
  2. RPM 파일의 압축을 푼다. RPM은 단지 gzip 아카이브일 뿐이며, 여기에는 또 다른 아카이브인 CPIO 파일이 포함되어 있다는 점을 인식하십시오. 이를 수행하는 방법에 대한 많은 참고 자료를 온라인에서 찾을 수 있습니다. "rpm2cpio" 명령을 찾으세요. "RPM 패키지의 cpio 아카이브에서 파일 추출"을 검색하십시오. 따라서 mc-*.rpm의 압축을 풀고 "etc"와 "usr"이라는 2개의 디렉터리를 얻을 수 있다고 가정합니다. 홈 디렉토리 아래의 디렉토리에 "mc"라고 말하면 "~/mc/etc" 및 "~/mc/usr"이 표시됩니다.
  3. 설정되지 않은 경우 ~/mc/usr/bin에 있는 파일에 대한 실행 권한을 설정합니다. ("chmod" 사용)
  4. 지금 ~/mc/usr/bin/mc를 실행하면 작동하지만(적어도 내 RHEL 7.4에서는 작동함) 파일을 찾을 수 없다는 경고 메시지가 표시되고 기능이 제한됩니다. 그러나 그럼에도 불구하고 한 번 실행하면 로컬 디렉터리를 생성할 수 있습니다.
  5. 환경변수 MC_DATADIR을 설정하려면 "export MC_DATADIR=~/mc/usr/share/mc"를 사용하세요. 이를 .bashrc 파일에도 추가해야 합니다. (예: "echo text_to_add >> ~/.bashrc").
  6. .bashrc 파일에 별칭 "alias mc=/home/vladimir.shutow/mc/usr/bin/mc"를 추가합니다. 변경 사항을 적용하려면 "source ~/.bashrc"를 사용해야 할 수도 있습니다.
  7. 이제 복사본을 만들어 보겠습니다. ~/mc/etc/mc의 내용을 ~/mc/usr/share/mc에 복사합니다.
  8. ~/mc/usr/libexec/mc의 내용을 ~/.local/share/mc에 복사합니다.
  9. ~/mc/usr/share/mc/syntax/Syntax 파일을 ~/.config/mc/mcedit 디렉터리에 복사합니다.
  10. 뷰어 확장이 제대로 작동하도록 하려면 ~/mc/usr/libexec/mc/ext.d 디렉터리의 모든 *.sh 파일에 대한 실행 권한을 설정하고 ~/mc/usr/share/mc/mc 모든 줄을 편집하세요. /usr/libexec/mc/ext.d/*.sh 파일을 참조하는 .ext 파일 중 ~/mc/usr/libexec/mc/ext.d/*.sh를 가리킵니다.

이제 "mc"를 실행하면 Midnight Commander가 나타납니다.

관련 정보