🔧 Lösung: Bereits alignierte modBAM-Dateien mit nf-core/methylong v2.0.0
📊 Analyse Ihrer BAM-Datei
✅ Gute Nachrichten: Ihre Datei An6_6mA_mapped.mod.bam ist:
- Bereits aligniert (@SQ Header mit Chromosomen/Positionen vorhanden)
- Enthält 6mA-Modifikationen (MM:Z:A+a… und ML:B:C Tags sichtbar)
- Von Dorado basecalled (PN:dorado VN:2.0.0+…)
❌ Problem: Die Pipeline versucht trotzdem, den Dorado-Aligner erneut auszuführen → Docker-Auth-Fehler.
🚨 Shell-Fehler beheben: Befehl korrekt eingeben
Die Fehler --ont_aligner: command not found entstehen, weil Multi-Line-Befehle mit \ nicht korrekt verarbeitet werden.
Option A: Als einzeiliger Befehl (empfohlen):
nextflow run nf-core/methylong -r 2.0.0 -profile docker --input samplesheet_6mA.csv --outdir methylome_out_6mA --ont_aligner minimap2 --m6a -resume -work-dir methylome_out_6mA/work
Option B: Multi-Line mit korrekter Syntax (kein Leerzeichen nach \!):
nextflow run nf-core/methylong \
-r 2.0.0 \
-profile docker \
--input samplesheet_6mA.csv \
--outdir methylome_out_6mA \
--ont_aligner minimap2 \
--m6a \
-resume \
-work-dir methylome_out_6mA/work
Option C: In ein Skript schreiben (run_methylong.sh):
#!/bin/bash
nextflow run nf-core/methylong \
-r 2.0.0 \
-profile docker \
--input samplesheet_6mA.csv \
--outdir methylome_out_6mA \
--ont_aligner minimap2 \
--m6a \
-resume \
-work-dir methylome_out_6mA/work
chmod +x run_methylong.sh && ./run_methylong.sh
⚙️ Samplesheet für bereits alignierte modBAM-Dateien
Da Ihre BAM-Datei bereits aligniert ist, gibt es zwei Ansätze:
🔹 Ansatz 1: --reset verwenden (Pipeline aligniert neu)
group,sample,path,ref,method
group1,An6,/mnt/md1/DATA/Data_Tam_DNAseq_2026_An6_BG5/An6_6mA_mapped.mod.bam,/mnt/md1/DATA/Data_Tam_DNAseq_2026_An6_BG5/bacass_out/Medaka/An6-unicycler-medaka_polished_genome.fa,ont
# Befehl mit --reset (entfernt alte Alignment-Info, aligniert mit minimap2 neu)
nextflow run nf-core/methylong -r 2.0.0 -profile docker --input samplesheet_6mA.csv --outdir methylome_out_6mA --ont_aligner minimap2 --reset --m6a -resume
🔹 Ansatz 2: Pipeline “austricksen” – unalignierte BAM simulieren
Wenn Sie das bestehende Alignment behalten möchten:
-
BAM ohne Alignment-Info exportieren (behält MM/ML-Tags):
samtools collate -Ou An6_6mA_mapped.mod.bam | \ samtools fastq -T MM,ML - > An6_6mA_with_mods.fastq -
Samplesheet mit FASTQ-Pfad (Pipeline basecallt nicht, da keine Pod5/FAST5):
group,sample,path,ref,method group1,An6,/pfad/zu/An6_6mA_with_mods.fastq,/pfad/zu/genome.fa,ont -
Pipeline mit
--skip_basecalling-Ersatz starten:⚠️ Da
--skip_basecallingnicht existiert: Die Pipeline erkennt FASTQ ohne Basecalling-Info und springt direkt zu Alignment. Kombinieren Sie mit--ont_aligner minimap2:nextflow run nf-core/methylong -r 2.0.0 -profile docker --input samplesheet_6mA.csv --outdir methylome_out_6mA --ont_aligner minimap2 --m6a -resume
🧪 Schnelltest: Läuft die Pipeline mit minimap2?
# 1. Work-Directory aufräumen (falls vorheriger Run fehlschlug)
rm -rf methylome_out_6mA/work/a1/
# 2. Minimaler Testlauf (nur bis Alignment)
nextflow run nf-core/methylong \
-r 2.0.0 \
-profile docker \
--input samplesheet_6mA.csv \
--outdir methylome_out_6mA_test \
--ont_aligner minimap2 \
--m6a \
-resume \
-work-dir methylome_out_6mA_test/work \
-entry align 2>&1 | tee test_align.log
💡 Der
-entry alignParameter startet die Pipeline nur bis zum Alignment-Schritt (falls in v2.0.0 verfügbar – sonst weglassen).
📋 Checkliste vor dem Start
| Prüfpunkt | Befehl/Ziel |
|---|---|
| ✅ Samplesheet-Spalten | group,sample,path,ref,method (exakt!) |
| ✅ Absolute Pfade | Keine relativen Pfade wie ./file.bam |
| ✅ BAM-Datei lesbar | samtools quickcheck An6_6mA_mapped.mod.bam && echo "OK" |
| ✅ MM/ML-Tags vorhanden | samtools view file.bam \| head -1 \| grep -q "MM:Z" && echo "Mods OK" |
| ✅ Docker läuft | docker run hello-world |
| ✅ Ausreichend RAM/CPU | Min. 16 GB RAM, 8 CPUs empfohlen |
🔄 Alternative: Manueller modkit-Pileup (ohne Nextflow)
Falls die Pipeline weiterhin Probleme macht, können Sie modkit direkt auf Ihrer BAM-Datei anwenden:
# 1. Referenz indexieren
samtools faidx /pfad/zu/genome.fa
# 2. modkit pileup für 6mA
modkit pileup sample \
An6_6mA_mapped.mod.bam \
methylome_out_6mA/An6_6mA.pileup.bed \
--ref /pfad/zu/genome.fa \
--modify-motif 6mA \
--cpg \
-t 8
# 3. Zu BigWig konvertieren (für IGV)
bedGraphToBigWig methylome_out_6mA/An6_6mA.pileup.bed genome.fa.sizes methylome_out_6mA/An6_6mA.bw
📦 modkit installieren:
pip install modkitoder via Docker:docker pull nanoporetech/modkit
🎯 Empfohlener nächster Schritt
# 1. Samplesheet prüfen
cat samplesheet_6mA.csv
# 2. Einzeiligen Nextflow-Befehl ausführen (mit minimap2):
nextflow run nf-core/methylong -r 2.0.0 -profile docker --input samplesheet_6mA.csv --outdir methylome_out_6mA --ont_aligner minimap2 --m6a -resume -work-dir methylome_out_6mA/work
Bei weiteren Fehlern: Bitte den Inhalt von .nextflow.log teilen – dann kann ich gezielt helfen! 🚀